Skip to main content

Bluetooth low energy

SmartBond™: power, size and system cost without compromise

Bluetooth® low energy is the de facto low power standard for connecting devices to each other and to the cloud. Highly integrated, the SmartBond™ SoC family features the smallest, most power efficient Bluetooth low energy solutions available and enables the lowest system costs. An extensive suite of support tooling ensures ease of use and a fast route to market.

Latest News Success Stories

Bluetooth Low Energy
SmartBond™ Product Portfolio Download PDF
Part Number DA14699/7/5/1 DA14683 DA14682 DA14586 DA14585 DA14531/0 DA14531MOD
  Product Description The world’s most advanced wireless microcontroller product family Single-chip high-security Bluetooth 5 solution with expandable memory Small size, low power and most integrated Bluetooth 5 SoC The world’s smallest and lowest power Bluetooth 5.1 System-on-Chip which enables the next 1billion IoT devices The DA14531 SmartBond TINY™ Module, based on the world’s smallest and lowest power Bluetooth 5.1 system-on-Chip
TYPE
SoC      
SiP          
Module            
TECHNOLOGY
Bluetooth® LE 5.2 5.0 5.0 5.0 5.0 5.1 5.1
2.4 GHz proprietary            
CORE SYSTEM
CPU 96MHz Arm
Cortex-M33
Floating Point DSP Extension
96MHz Arm
Cortex-M0
96MHz Arm
Cortex-M0
16MHz Arm
Cortex-M0
16MHz Arm
Cortex-M0
16MHz Arm
Cortex-M0+
16MHz Arm
Cortex-M0+
RAM 512kB
384kB (691)
128kB 128kB 96kB 96kB 48kB 48kB
ROM
OTP
128kB
4kB
128kB
64kB
128kB
64kB
128kB
64kB
128kB
64kB
144kB
32kB
144kB
32kB
Flash QSPI Flash QSPI Flash 1024kB 256kB SPI Flash SPI Flash 128kB
Crystals 32MHz+32kHz 32/16MHz+32kHz 32/16MHz+32kHz 16MHz+32kHz 16MHz+32kHz 32MHz 32MHz
POWER
Internal DCDC Buck Buck Buck Buck&Boost Buck&Boost Buck&Boost Buck
External System Power Rails 2x1.8V, 1x3.3V 2x1.8V, 1x3.3V 2x1.8V, 1x3.3V        
Charger ● ● ● ○        
SECURITY
AES/SHA 256/512 256/512 256/512 128 128 128 128
ECC/TRNG ● ● ● ● ● ●     ○ ● ○ ●
Secure Key Handling        
RADIO
Frequency 2.4GHz 2.4GHz 2.4GHz 2.4GHz 2.4GHz 2.4GHz 2.4GHz
Tx Power 6dBm 0dBm 0dBm 0dBm 0dBm 2.5dBm 2.2dBm
Rx Sensitivity -97dBm -94dBm -94dBm -93dBm -93dBm -94dBm -94dBm
PERIPHERALS
UART/SPI/I2C 3/2/2 2/2/2 2/2/2 2/1/1 2/1/1 2/1/1 2/1/1
QSPI XiP
On-the-fly decryption
2/2/2/1
1
1
       
USB FS/HS 1 1 1        
Timers/PWM/RTC 4/4/1 3/3 3/3 4/2 4/2 3/2/1 3/2/1
I2S,PCM/PDM 8CH/2CH 8CH/2CH 8CH/2CH 8CH/2CH 8CH/2CH    
LCD ● ● ● ○            
Keyboard/QDEC/IR   ● ● ● ● ● ● ● ● ○ ● ● ○ ● ● ○ ● ● ○
ADC 8CH 10b
8CH 14b
8CH 10b 8CH 10b 4CH 10b 4CH 10b 4CH 10b 4CH 10b
LED driver 2 2 ○ ○ 3 3        
Temperature sensor    
Other Haptics / Motor Controller            
APPLICATIONS
Appliances
Asset Tracking    
Beacons      
Consumer Electronics
Direction finding            
Gaming and AR/VR        
Industrial Automation      
Medical and Healthcare
MESH networks        
PC Peripherals
Smart Home and Building
Wearables  
Wireless Ranging (WiRa)            
Smart door-locks        
IoT sensors
PACKAGES
Type#Pins (#GPIO)
Dimensions
VFBGA100 (55)
5x5 mm
(699/697)
WLCSP53 (21)
3.41x3.01 mm

AQFN60 (37)
AQFN60 (31)
6x6 mm
QFN40 (24)
5x5 mm
WLCSP34 (14)
2.40x2.66 mm

QFN40 (25)
WLCSP17 (6)
1.7x2.05 mm
(531 only)
MOD16 (9)
12.5x14.5 mm
Operating Temperature -40 to 85°C -40 to 85°C -40 to 85°C -40 to 85°C -40 to 85/105°C -40 to 85°C -40 to 85°C
Supply Voltage Range 2.4 to 4.75V 1.7 to 4.75V 1.7 to 4.75V 0.9 to 3.3V 0.9 to 3.3V 1.1 to 3.3V 1.8 to 3.3V
DEVELOPMENT KITS DA14695 PRO
DA14695 USB
DA14683 PRO
DA14683 USB
DA14683 PRO
DA14683 USB
DA14585 PRO
DA14585 BASIC
DA14585 PRO
DA14585 BASIC
DA14531/0 PRO DA14531 USB DA14531MOD PRO
Partner Modules
Read more
Product Security Vulnerabilities
Read more
Legacy Products
DA14680/1 Not Recommended for New Designs; For Improved Performance – See DA14682/3
DA14580/1/2/3 Not Recommended for New Designs; For Improved Performance – See DA14585/6 and DA14530/1

 

bleuio dongle

A faster way to new Bluetooth® applications

Swedish IoT company Smart Sensor Devices AB believes developing new Bluetooth applications should be as easy as using them. That’s why they created the BleuIO Bluetooth Low Energy USB dongle using Dialog’s Bluetooth SoCs– a smart, highly integrated device that lets developers create new Bluetooth LE 5.0 applications with minimal effort.

web_bluetooth_blog

Motion Aware Thin Bluetooth® Low Energy Beacon Solution for Smart Labels

A beacon is a tiny Bluetooth radio battery-powered transmitter. Beacons provide an inexpensive broadcasting solution capable of autonomous operation over very long periods of time. In this paper, we will show how beacons can support extended functionality by employing a range of peripherals to allow them to process and display data while maintaining autonomous operation.

Success Stories banner

Smart devices that don’t need charging?

Smartcube Co. produces modular chips that convert everyday objects like sport shoes and ID badges into smart, connected IoT devices. Remarkably, they aim to produce chips that are so energy-efficient, the resulting devices never need charging! Dialog’s SmartBond Bluetooth low energy range is helping them achieve their power consumption goals at low cost while delivering excellent reliability.

Every quarter, we bundle up the best technical info on our products, software development topics, trainings, events and deliver it to your inbox.

Sign me up
Check out previous editions

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters
Product ID Application Standard Memory size FLASH (Mb) Memory size ROM (kB) Memory size OTP (kB) Memory size RAM (kB) GPIOs (max) Power supply min (V) Power supply max (V) Tx current (mA) Rx current (mA) Output power (dBm) Sensitivity (dBm) Microcontroller Recommended for new Designs Package Max system clock (MHz) Flexible system clock Execute from FLASH HW crypto engine QSPI SPI UART I2C USB PDM Documents
                                                       
DA14580-01UNA Beacon & Proximity Health & Fitness Human Interface Devices Smart Home BLE 4.2 Core specification 0 84 32 50 14 0.9 3.6 4.8 5.1 0 -93 M0 No WL-CSP34,2.5*2.5*0.5mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14580-01AT2 Beacon & Proximity Health & Fitness Human Interface Devices Smart Home BLE 4.2 Core specification 0 84 32 50 24 0.9 3.6 4.8 5.1 0 -93 M0 No QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14580-01A32 Beacon & Proximity Health & Fitness Human Interface Devices Smart Home BLE 4.2 Core specification 0 84 32 50 32 0.9 3.6 4.8 5.1 0 -93 M0 No QFN48,6*6*0.9mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14581-00UNA Wireless Charging Host Controller Interface BLE 4.2 Core specification 0 84 32 50 14 0.9 3.6 4.8 5.1 0 -93 M0 No WL-CSP34,2.5*2.5*0.5mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14581-00000VRA Wireless Charging Host Controller Interface BLE 4.2 Core specification 0 84 32 50 14 0.9 3.6 4.8 5.1 0 -93 M0 No WL-CSP34,2.5*2.5*0.3mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14581-00AT2 Wireless Charging Host Controller Interface BLE 4.2 Core specification 0 84 32 50 24 0.9 3.6 4.8 5.1 0 -93 M0 No QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14583-01F01AT2 Beacon & Proximity Health & Fitness Human Interface Devices Smart Home BLE 4.2 Core specification 1 84 32 50 24 2.35 3.6 4.8 5.1 0 -93 M0 No QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14585-00000VV2* Beacon & Proximity Health & Fitness Human Interface Devices Smart Home Remote Controls with voice commands over BLE BLE 5.0 Core specification + supplemental features 0 128 64 96 14 0.9 3.6 4.8 5.1 0 -93 M0 Yes WL-CSP34,2.4*2.66*0.5mm 16 No No Yes 0 1 2 1 0 1 Documentation
DA14585-00000AT2* Beacon & Proximity Health & Fitness Human Interface Devices Smart Home Remote Controls with voice commands over BLE BLE 5.0 Core specification + supplemental features 0 128 64 96 25 0.9 3.6 4.9 5.3 0 -93 M0 Yes QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 1 Documentation
DA14586-00F02AT2* Beacon & Proximity Health & Fitness Human Interface Devices Smart Home Remote Controls with voice commands over BLE BLE 5.0 Core specification + supplemental features 2 128 64 96 24 1.8 3.6 4.9 5.3 0 -93 M0 Yes QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 1 Documentation
DA14680-01F08A92 Wearables Smart Home Apple HomeKit Human Interface Devices Other rechargeable device BLE 4.2 Core specification + optional features 8 128 64 128 31 1.7 4.75 5.2 6 0 -94 M0 No AQFN60,6*6*0.8mm 96 Yes Yes Yes 0 2 2 2 1 1 Documentation
DA14681-01000U2 Wearables Smart Home Apple HomeKit Human Interface Devices Other rechargeable device BLE 4.2 Core specification + optional features 0 128 64 128 21 1.7 4.75 5.2 6 0 -94 M0 No WL-CSP53,3.4*3.0*0.5mm 96 Yes Yes Yes 1 2 2 2 1 1 Documentation
DA14681-01000A92 Wearables Smart Home Apple HomeKit Human Interface Devices Other rechargeable device BLE 4.2 Core specification + optional features 0 128 64 128 37 1.7 4.75 5.2 6 0 -94 M0 No AQFN60,6*6*0.8mm 96 Yes Yes Yes 1 2 2 2 1 1 Documentation
DA14682* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5 8 128 64 128 31 1.7 4.75 5.2 6 0 -94 M0 Yes AQFN60,6*6*0.8mm 96 Yes Yes Yes 0 2 2 2 1 1 Documentation
DA14683* Industrial Human Interface Devices Virtual reality remotes Banking BLE 5 0 128 64 128 37 1.7 4.75 5.2 6 0 -94 M0 Yes AQFN60,6*6*0.8mm 96 Yes Yes Yes 1 2 2 2 1 1 Documentation
DA14691-00000HQ2* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5.0 Core specification + optional features Optional external 128 4 384 44 2.4 4.75 3.5 2.2 6 -97 M33 Yes VFBGA86, 6 x 6 x 0.55 mm 96 Yes Yes Yes 1 2 3 2 1 1 Documentation
DA14695-00000HQ2* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5.0 Core specification + optional features Optional external 128 4 512 44 2.4 4.75 3.5 2.2 6 -97 M33 Yes VFBGA86, 6 x 6 x 0.55 mm 96 Yes Yes Yes 1 2 3 2 1 1 Documentation
DA14697-00000HR2* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5.0 Core specification + optional features Optional external 128 4 512 55 2.4 4.75 3.5 2.2 6 -97 M33 Yes VFBGA100, 5 x 5 x 0.475 mm 96 Yes Yes Yes 2 2 3 2 1 1 Documentation
DA14699-00000HR2* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5.0 Core specification + optional features Optional external 128 4 512 55 2.4 4.75 3.5 2.2 6 -97 M33 Yes VFBGA100, 5 x 5 x 0.475 mm 96 Yes Yes Yes 2 2 3 2 1 1 Documentation
DA14531 Disposables Beacons Asset tracking Connected health RCU BLE 5.1 Core specification + supplemental features 0 144 32 48 12 0.9 3.6 3.5 2.2 0 -94 M0 + Yes QFN24*2.2*3.04mm 16 Yes Yes Yes 0 1 2 1 0 0 Documentation

*Recommended for new designs

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters

Wearables

Wearable electronics is entering every facet of our daily life, giving us new ways to improve our lives: from productivity to health and lifestyle. Revealing previously unattainable information about ourselves and our surroundings, they help advise us.

SmartBond Solutions: DA14682/3, DA14585/6, DA1469x

Proximity & Asset Tracking

Proximity applications are based on knowing and alerting you of the distance between two devices, such as keys or wallets, if the label goes out of range. Proximity information can also be used in asset tagging for inventory and automated access control or monitoring in cold chain tracking.

SmartBond Solutions: DA1469x, DA14531

Connected Medical

Connected medical offers solutions in allowing patients to take care of their own health condition in monitoring, sending alerts and making drug delivery easy. Bluetooth low energy is the technology to connect health products to the cloud. Examples of connected medical products are blood pressure meters, heart rate monitors, glucose meters and patches, body temperature meters, virus testers and drug delivery with injectables or via patches through the skin.

SmartBond Solutions: DA14531, DA1469x

Smart Home & Buildings

Long dreamt of, the Smart Home is now becoming a reality. We can monitor and control our home security, lighting, appliances and heating, ventilation and air-conditioning (HVAC) from our smartphones and tablets – even remotely via the cloud.

SmartBond Solutions: DA14682/3, DA14585/6, DA14531

Computing & Gaming

Bluetooth has played a key role in connecting computing and gaming peripherals since its introduction. It provides a simple and proven connectivity option for a host of new and emerging peripherals, while securing access to the most personal data.

As electronic equipment becomes smarter and more mobile, the way we interact with it is changing. We want more control, more convenience and less clutter, which is driving huge growth in the wireless HID market. Bluetooth low energy is per default supported in recent versions of windows, which truly enables the wireless desktop.

SmartBond Solutions: DA14585/6, DA1469x

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters
SmartBond™ SDK Overview Product Supported
SDK6 DA14585/6 + DA14531/0
SDK10 DA1469x
SDK1 DA14682/3

Also available for DA14680/1 but not recommended for new designs

SDK5 DA14580/1/3

Not recommended for new designs

 

SmartBond™ Development tools overview Product Supported
Dialog Smartbond Flash Programmer DA14531/0, DA1458x and DA1469x
SmartSnippets Toolbox All
SmartSnippets Studio All
Production Line Tool  

 

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters

Social distancing

Embedded Software Applications for Social Distancing Applications

Read More

Bluetooth Low Energy Range Extender

The SmartBond™ BLE Range Extender reference design enables you to take full advantage of the output power of the Bluetooth low energy standard to extend the range of your applications.

Read more

Smart USB Dongle

The Smart USB Dongle device is a fully integrated USB to Bluetooth® LE solution, based on SmartBond™ DA14683 high-security Bluetooth LE SoC.

Read more

emWin

The emWin embedded graphics library developed by SEGGER Microcontroller is now offered by Dialog Semiconductor in library form for free commercial use with the SmartBond® DA1469x wireless microcontrollers.

Read more

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters

Our SmartBond products are supported by development kits and a profiling to help you create applications that exploit the unique benefits of the SmartBond family to the fullest. These tools help you minimize your time to market.

Hardware Development Kits

DA14531 DA14531 - USB, DA14531 - Pro
DA14585 DA14585 - BasicDA14585 - Pro
DA14683 DA14683 - USBDA14683 - Pro
DA14695 DA14695 – USB, DA14695- Pro
All Bluetooth LE Products Production Line Tool

 

Application Focused Development Kits

 

Discontinued Kits

DA14583 DA14583 IoT Sensor Development Kit
The DA14585 IoT is an upgraded sensor development kit with more supported sensors and cloud connectivity
DA14681 DA14681 HomeKit Development Kit
DA14681 DA14681 Wearable Development Kit

 

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters

Japan-based company mainly engaged in the manufacture and sale of electronic components and audio equipment. 

See More

Bithium - your partner in the design of innovative wireless embedded systems (firmware, hardware, software). Bithium keeps a clear focus on achieving project targets and customer satisfaction. 

See More

Cambridge Consultants is a premium multidisciplinary supplier of innovative product development engineering and technology consulting. We help clients deliver groundbreaking products to market fast, with cutting-edge technology that often results in new IP generation for our clients. 

See More

Cloud2GND is a global engineering services firm specializing in standards-based wireless connectivity solutions. Our clients range from innovative start-ups to large semiconductor companies and standards organizations. We offer deep domain knowledge in embedded systems, especially around Bluetooth technology, where we provide consulting, design, development, test, deployment and maintenance services for our clients and their customers. Our engineering services division offers a flexible engagement model acting as a specialized team of standards experts or a complete engineering team able to manage your project needs to completion.

See more

Lauterbach is the leading manufacturer of complete, modular and upgradeable microprocessor development tools worldwide with experience in the field of embedded designs since 1979. The engineering team develops and produces highly proficient and specialized Development Tools, which are utilized all over the world under the brand TRACE32®.

LitePoint is the leading provider of test solutions for the world's leading manufacturers of wireless

See more

Murata is a global leader in the design, manufacture and supply of advanced electronic materials, leading edge electronic components, and multi-functional, high-density modules.

See more

Panasonic Industrial Devices Sales Company of America. Many products sold by Fortune 500 companies are in fact Powered by Panasonic technology, and we are proud to provide manufacturers with the performance, quality, and reliability that are synonymous with the Panasonic brand. The Power of Panasonic Industrial Devices brings strategic innovations to our customers’ product development process.

See more

TDK is one of the largest electronic components manufacturers in the world.

See more

Tieto is the leading product development services company enabling semiconductor, connected device and communication infrastructure manufacturers, build next generation connected devices & things, cars and networks.

See more

Wireless technology experts. Xtel's core competency is technology development, which makes up a substantial part of its business. It utilizes state-of-the-art technologies to create the next product or technical platform for its partners. Among its clients, it counts some of the world’s leading tech innovators. It is typically tasked with the development of wireless technology, protocols, and ultralow power designs and products. Xtel has in-depth knowledge of the product development and maturation of wireless technologies. It typically uses proven and tested standard components or platforms, helping its partners to reduce time to market. Where a technology boost is needed, it develops complete products or assist a development team in the company. Its technological solutions and innovative skills are recognized by its partners.

See more

Quuppa is a leading technology provider for real-time locating systems (RTLS) and indoor positioning systems (IPS). The company was established in 2012 by a team of experienced engineers and scientists as a spin-off from Nokia Research Center and has since successfully commercialised its offering, creating a complete product platform: the Quuppa Intelligent Locating System™, a one-size-fits-all technology platform for location-based services and applications. Our platform offers companies a complete software suite of tools for planning, simulating and commissioning projects, that can be used as a solid and scalable foundation for building various location-based solutions. The open API makes it fast and easy to take the platform into use. To date, the Quuppa Ecosystem has more than 200 partners around the world who use Quuppa’s open, versatile and reliable positioning platform to deliver accurate, real-time and cost-effective location solutions to companies in a range of industries, including manufacturing and logistics, retail, healthcare, sports, law enforcement and security, government, asset tracking.

See more

 

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters
Back to results

DA14530 and DA14531

5 days ago

ADC and timing info

Posted by lchianura 40 points 2 replies
0 upvotes

Hi,

we are trying to read samples from the ADC as fast as possible and send them to a client (typically a smartphone) via BLE notifications.

Because our ADC reading interval target ranges from 1 to 10 ms, we are using timer0 instead of the OS timer.

Supposing a standard MTU==23 and a 20-bytes payload available in each packet, we proceed in the following way:

  1. timer0 configured and started
  2. upon interrupt, call callback to retrieve data from ADC
  3. in the callback, read and store ADC sample then:
  • if the number of samples collected so far is < 10 (being 10 the max number of uint16 samples storable in a 20-bytes payload), increment a sample counter and return. Flow-wise we'll go back to point 2.
  • if number of samples collected is == 10:
    • stop and disable timer0
    • create and send notification (its payload will be the ADC samples collected so far)
    • reset the sample counter and go back to point 1.

This above logic is started/stopped as clients subscribe/unsubscribe to/from notifications on a specific characteristic.

We have the following questions:
1 - relationship between timer0 and kernel tasks. 
     At the moment and as explained below, our chain of events is:
    
 (start timer0) -> (collect samples) -> (stop timer0) -> (send samples) -> (start timer0) -> (collect samples) -> (stop timer0) -> (send samples) -> ...
 
    what would happen if we were to leave timer0 running instead of stopping it before creating and sending BLE notifications?
    would the next timer interrupt (therefore, the next callback to read ADC values) be processed soon after ke_msg_send()?

    Our goal here is to accurately measure how many ADC samples we lose while creating and sending the BLE notification.

2 - from the SDK and some of your online tutorials, we know that the ADC can be configured to work in continuous mode.
    We couldn't find any example of how and when continuous mode should be used, however we did notice the adc_register_interrupt API in adc.h and the 
    .interval_mult field in the adc_config_t structure, however we are not sure about how to interpret how continuous mode works.
    Could you provide more details about this?

3 - (slightly unrelated but still on topic) we did notice that in older/different versions of the SDK there was an adc_channel_enable API which is missing the in 6.0.14.
Is it correct that we can't configure and use multiple ADC channels at the same time? If the answer is yes, would it be possible to re-configure the ADC with a different channel at runtime?

Regards,
Lorenzo

5 days ago

PM_Dialog

Hi lchianura,

Thanks for your post online. Please find below feedback on your questions.

1/  This is very application-specific and I think the best approach would be to test it on your side and with your FW. If the timer is never stopped, I assume it will generate interrupts continuously and so, the callback for sending BLE notifications will be triggered more often.

So, you need to measure how many timer0 interrupts are lost from the time when creating the message for BLE notification until the next time the device is able to send data over notifications?

2/ According to DA14531 datasheet and the description of ADC block :

“Setting GP_ADC_CTRL_REG[GP_ADC_CONT] to 1 enables the continuous mode, which automatically starts a new AD conversion when the current conversion has been completed.”

See also this tutorial : http://lpccs-docs.dialog-semiconductor.com/da145xx_tutorial_sdk6_peripherals/da14531_adc.html

Perhaps, you have already checked this, but if you modify the .continuous item in adc_config_t structure to TRUE, this will configure the ADC in continues mode.  Here is the SDK API as well in adc_531.h : adc_continuous_enable()

3/ In which SDK did you find the adc_channel_enable ?

The input source can be selected from the .input item in adc_config_t structure. There are 8 possible input source configurations as described in adc_input_se_t structure.

The input channel is selected by the GP_ADC_SEL_P register according to the datasheet.  Please check adc_get_se_input() API.

Yes, you can re-configure the ADC to a different Channel but you should re-initiate the ADC block.

PS : The latest version for DA14531 is SDK6.0.16 and it is available on the DA14531 product page. This is the recommended SDK version.

Thanks, PM_Dialog

1 day ago

lchianura 40 points

Hi,

Thank you for your reply.

Please find below my replies to your points.

1 - We did some tests on our side, using lld_evt_time_get() while making sure the sleep mode was off so that the BLE core was always on.
     What we have found however is that it takes less than 625us - the maximum resolution available when using lld_evt_time_get() - to stop timer0, send a BLE notification and re-start timer0.
     Considering it takes longer than that to send a 23 bytes (op_code + attribute_handler + data) packet, we can conclude that right now we are measuring how long does it take to create a kernel task, which is not related to the time actually spent sending out the packet.

     For instance, trying to send a BLE notification every 10ms will cause the FW to crash after few seconds if the central is a Google Pixel 3 phone, while it works fine if the central is an iPhone 12: different connection intervals and different number of packets per connection event mean that the in the former case we are creating more BLE notifications than the central can receive in the same amount of time.
     
     So, to answer my original question "would the next timer interrupt (therefore, the next callback to read ADC values) be processed soon after ke_msg_send()?": yes.
     If all the above is correct, as long as we choose an reading interval value that doesn't cause the BLE notifications to be enqueued in output until there is no more memory available, the amount of ADC sample lost is neglegible.
 
     Please let us know whether the above conclusions are correct or not.
      

2 - Yes, we did follow that tutorial and yes we know that setting .continuous mode to true in the adc_config_t structure will configure the ADC in continuous mode.
     What we were hoping to understand is how and when continuous mode should be used.
     In our current setup - which follows your tutorial - the ADC has .continuous mode set to FALSE and we read ADC samples manually using adc_get_sample().
     
If we set continuous mode to TRUE, adc_get_sample() will hang for ~2 sec and finally we get an NMI seemingly caused by a watchdog timeout.
     Our debugger stops on __BKPT(0); on line 75 in nmi_handler.c. See code snippet below for reference.

if ((GetWord16(SYS_STAT_REG) & DBG_IS_UP) == DBG_IS_UP)
     __BKPT(0);
else

     So, how continuous mode should be used once enabled? Should we still use adc_get_sample() to read data?

3 - Thanks for confirming that we would need to re-initialize the ADC in order to switch channels. We are assuming that doing so at runtime is not an issue, please advise if this is wrong.