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
Part Number DA14531 BDE-BLEM301 DA14531 Hongjia
HJ-531IMF
DA14531 Honjia
HJ-131IMH
DA14585 / AzureWave AW-CU362 DA14585 / Inventek
ISM14585-L35
DA14585 / Panasonic / PAN1740A
Product Description BDE-BLEM301 is a highly integrated Bluetooth® 5.1 Low Energy Module based on Dialog ultra-low power DA14531 SoC Ultra-small, ultra-low power Bluetooth 5.1 SIP module with the SmartBond DA14531 TINY. 5 x 4.75 x 1.3mm in a LGA25 package Ultra-small, ultra-low power Bluetooth 5.1 SIP module with the SmartBond DA14531 TINY. 4 x 4 x 1.3mm in a LGA17 package DA14585 BLE5.0 SoC, 1Mbit SPI Flash, embedded antenna DA14585 BLE5.0 SoC, up to 8Mbit SPI Flash on board, optional SkyWorks PA on board for increased TX power 9.0 x 9.5 x 1.8mm, integrated antenna and Pre-Certified, ARM® Cortex®-M0, 96kB SRAM, 64kB OTP
Applications Beacons | Remote Controls | Proximity tags | Low Power Sensors | Commissioning/Provisioning | Toys | Serial port transmission | Smart home | Smart meters | Smart medical devices Tiny medical applications | Beacons | Smart toys | Smart locks | Remote Controls | Industrial smart devices Tiny medical applications | Beacons | Smart toys | Smart locks | Remote Controls | Industrial smart devices IoT Applications | Connected Sensors | Connected Medical | Environmental Monitoring | Beacons | Home Automation | Industrial Connectivity over BLE | Point of Sale Applications | Building Infrastructure | Temperature & Environmental Monitoring | Connected Toys IoT Applications | Voice-controlled remote controls | Keyboard & Mouse | Connected Sensors | Beacons and Tags | Home Automation | Connected Toys | Consumer Appliances Industrial IoT | Connected Sensors | Human Interface Devices | Smart Home/Building | Smart Lighting Systems | Metering | Smart Home Nodes | Beacons | Proximity Tags | Tracker | Remote Controls
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

 

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.

IoT Podcast Blog

IoT Podcast, Connected Health and Wearables

We plunge into this universe to examine the technology and applications sculpting the Medical and Healthcare industries!

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

DA1468x

2 months ago

Example wanted for private/random resolvable addresses

Posted by andrewhh 85 points 15 replies
0 upvotes

Hello, 

I am using a DA14683 and the PRO dev kit with

SDK 1.0.14.1081

SmartSnippits Studio v1.6.3.918 

Using toolchain that came bundled with SmartSnippits Studio

 

May I have an example of using private resolvable addresses with the DA14683? I have attached my attempt at using private resolvable addresses in the zip file below. For my "Central" device, I am testing with an nRF Dongle with nRF Connect for macOS.
 

On the unmodified "bms" (bond management service) example, nRF Connect and the nRF Dongle will successfully pair AND bond with the DA14683 and I will be able to see the Bond Management Service's characteristics. But the MAC address will be public static. 

After my code modification, the DA14683 MAC address will be "RandomPrivateResolvable", but the bonding no longer functions and nRF Connect no longer shows the "bond management service". I think I have modified the code incorrectly. Is there an example showing the correct way to implement random resolvable addresses?My goal is to prevent passive tracking of my device. 

A side note: I am not sure how to use the second parameter in ble_gap_address_set. What is the acceptable value? The comment says "Random address renew duration in steps of 10ms - minimum is 150s by stack". Does that mean the minimum is "15" or "150"? I arbitrarily chose 150. 

Attachment Size
screenshot of changes and modified code 123.42 KB
nRF Connect 1005.04 KB

2 months ago

PM_Dialog

Hi andrewhh,

Thanks for your question and apologies for the delay. Let me check this and I’ll get back to you shortly.

Thanks, PM_Dialog

2 months ago

PM_Dialog

Hi andrewhh,

Sorry for my late response. I ran some tests with the ble_adv and BMS example of the SDK and it seems that the BD address is private resolvable and is changing every renew_dur. Please see my feedback below and some minor changes:

1.       Set the dg_configBLE_PRIVACY_1_2 in custom_config_qspi.h :

#define dg_configBLE_PRIVACY_1_2                (1)

2.       Make the own_address1 as global :

/* Set BLE address to be "private resolvable" using LE Privacy v1.2 */

own_address_t own_address1 = {

        .addr_type = PRIVATE_CNTL,

        .addr = {0}

};

3.       In the bms_task :

void bms_task(void *params)

{

….

 print_bonded_devices();



        ble_error_t status;

         status = ble_gap_address_set(&own_address1 , 0x00FF);

         if (status != BLE_STATUS_OK) {

                 printf("%s: failed. Status=%d\r\n", __func__, status);

         }



        /* Set advertising data and start advertising */

        ble_gap_adv_data_set(sizeof(adv_data), adv_data, 0, NULL);

        ble_gap_adv_start(GAP_CONN_MODE_UNDIRECTED);

….

}

NOTE : With regards to ble_gap_address_set() and renew_dur argument, the minimum renew duration is 150 seconds and the value is in steps of 10ms.

So, the minimum value will be : 150 * 1000 / 10 = 15000 (= 0x3A98 in hex)

Values lower than 15000 will be ignored and the renewal duration will be 150sec (minimum renew duration). So if you set 0x00FF as a renewed value, the BD address will be updated every 150 seconds.

With the BMS example and the above code snippets I got the following results :

Initial BD Address : 44 : aa : 4d : b0 : c1 : ef

Renewed BD address after 150sec : 40 : 07 : 6a : d7 : 08 : 2b

As you can see the BD address is private resolvable. From the attached images (initial post), it seems that the BD is private resolvable too. Please check that the BD is getting renewed after 150 sec since you are using a renew value that is lower than the minimum.

Thanks, PM_Dialog

2 months ago

andrewhh 85 points

I implemented your code changes and they did not fix my issue. I see the same behavior I describe in my first post. The Bond Management Service (BMS) is nowhere to be found. Bonding seems to succeed when I initiate bonding from my nRF Dongle "Central" device, but the DA14683 MAC address does not stop changing, implying no identity resolving key (IRK) was transferred. And the DA14683 continues to produce pairing requests when my nRF Dongle "Central" device connects to it, implying bonding did not actually succeed. Could you attach the bms_task.c and main.c files that you used to make the demo work? I attached mine. 

 

Attachment Size
bms_task-and-main-c.zip 7.88 KB

2 months ago

andrewhh 85 points

I have created a video showing the bug in question  https://youtu.be/bhIUNgt19uo

2 months ago

PM_Dialog

Hi andrewhh,

Thanks for the video - it was very helpful to understand better this issue. Finally, I am able to replicate this. The BMS is gone when using a PRA which is very weird.

I will check this internally and get back to you.

Thanks, PM_Dialog

2 months ago

andrewhh 85 points

Hi PM_Dialog, 

Has any progress been made on this issue? 

2 months ago

PM_Dialog

Hi andrewhh,

Sorry for the delay but we have already escalated this ticket to our Team internally to check it out. Work is in progress and trying to investigate the root cause. 

We'll get back to you once there is further feedback on this. 

Thanks, PM_Dialog

accepted answer!

1 month ago

PM_Dialog

Hi andrewhh,

We have an update on this issue... We tried to investigate this and could not really indicate a root cause of the issue but there is a work-around:

If the address set function - ble_gap_address_set() - is called before the BLE application is registered - ble_registerapp() - then the BMS service is still exposed.

ble_peripheral_start();
/* Set BLE address to be "private resolvable" using LE Privacy v1.2 */
        own_address_t own_address1 = {
                .addr_type = PRIVATE_CNTL,
                .addr = {0}
        };
        ble_error_t status;
        status = ble_gap_address_set(&own_address1 , 150);
        if (status != BLE_STATUS_OK) {
                printf("%s: failed. Status=%d\r\n", __func__, status);
        }
/* Register task to BLE framework to receive BLE event notifications */
ble_register_app();

While bonded it looks like the BD address is not changing in the mobile app, but if you look at the advertising with another phone you can see that the BD address is changing at the pre-defined interval and the 'bonded' phone can still connect without re-bonding.

Please test the work-around and let us know.

Thanks, PM_Dialog

1 month ago

andrewhh 85 points

I have tested the Bond Management Service demo again on desktop, iOS and Android.

  • iPhone XS, iOS 14.4.2 nRF Connect : iOS remains bonded
  • macOS nRF Connect v3.6.1: can bond, but does not remain bonded.
  • Galaxy S5 Android 6.0.1 nRF Connect 4.22.3: Android remains bonded, same MAC address while bonded

I consider this a success. I will now try to add bonding to my device firmware. I am going to try to remove the bond management service and the button because I have a custom service that I can use to delete the bonding information already. 

1 month ago

PM_Dialog

Hi andrewhh,

Thanks for your reply. Can you kindly let us know if you need further support on this forum ticket? 

Thanks, PM_Dialog

1 month ago

andrewhh 85 points

Yes I need further support. The BLE MAC address of my device changes every 15-30 seconds. But this is what the function says: 

 

 * \param [in] address    Pointer to the address to be set
 * \param [in] renew_dur  Random address renew duration in steps of 10ms - minimum is 150s by stack
 *
 * \return result code
 */
ble_error_t ble_gap_address_set(const own_address_t *address, uint16_t renew_dur);

 

I tried setting "renew_dur" = 150. That makes my address change once every 15-30s

"renew_dur" = 15000 produces the same result

I thought the minimum is 150s, not 15-30s. 

I wanted the address to change every 15 minutes. I calculate that 15 minutes = (10ms) * 90000. But the value of 90000 does not fit in an unsigned 16 bit integer. 

It looks like both a documentation error AND a code error. Is this correct? How can I have the address change every 15m? With an address change every 15 seconds, scanning and connecting to the DA14683 is failure prone because by the time I see the DA14683, I only have a few seconds to click the "connect" button before it changes address. 

1 month ago

PM_Dialog

Hi andrewhh,

Thanks for your follow up question. Let me check this internally and I'll get back to you. 

Regards, PM_Dialog

1 month ago

PM_Dialog

Hi andrewhh,

I used the following code snippet both in ble_adv and BMS examples of the SDK.

status = ble_gap_address_set(&own_address1 , 15000); // 150sec * 1000  / 10 = 15000

However, I am not able to replicate this behavior : the BD address is changing every 150 seconds - 150sec * 1000  / 10 = 15000.

Can you please test this again? The bd address is not changing every 15sec when "renew_dur" = 15000

With regards to the renew_dur, the max value that should be passed as an input is 0xFFFF (65.535 in dec), and so the max renew duration would be around 10 minutes. So, it’s not possible to change the BD address every 15mins.

Thanks, PM_Dialog

1 month ago

andrewhh 85 points

I tested this again on the eval board and you are correct. The BLE address changes every 150 seconds. 

In my own app, the address changes more frequently because I believe I start and stop advertising more frequently than 150s. 

1 month ago

PM_Dialog

Hi andrewhh,

Thanks for testing this. If the advertising is not stopped / started very frequently, the BD Address should be changed every 150 seconds with this configuration :

status = ble_gap_address_set(&own_address1 , 15000);

Can you kindly let us know if you need further support on this ticket?

Thanks, PM_Dialog