⚠️
Hi there.. thanks for coming to the forums. Exciting news! we’re now in the process of moving to our new forum platform that will offer better functionality and is contained within the main Dialog website. All posts and accounts have been migrated. We’re now accepting traffic on the new forum only - please POST any new threads at https://www.dialog-semiconductor.com/support . We’ll be fixing bugs / optimising the searching and tagging over the coming days.
9 posts / 0 new
Last post
emreerisgen
Offline
Last seen: 10 months 1 week ago
Joined: 2019-07-03 11:50
DA14580 bonding lost on restart

Hi, we are using DA14580 with CodeLess DA14580 v_5.380.5.4.0. If we restart the module bonding got lost so user needs to rebond to the BLE module on each restart. What can we do to store the bonding information so it wont be got lost on each restart?

Device: 
PM_Dialog
Offline
Last seen: 1 week 5 days ago
Staff
Joined: 2018-02-08 11:03
Hi emreerisgen,

Hi emreerisgen,

You could store the bonding information in the SPI Flash. Is there any specific reason why you are using the DA14580?

if you are starting a new design, we would strongly recommend moving into DA14531 or DA14585/586 products and SDK6.0.14, as it is much more improved. We have a lot of code examples and improved documentation, and there is also software roadmap support. There is not any software roadmap support for DA14580 product family and SDK5.

https://www.dialog-semiconductor.com/products/connectivity/bluetooth-low-energy/products/da14531

Moreover the DA14531 SmartBond TINY™ Module is now released! Follow the link below to find datasheet, documentation and HW collaterals for the module:

We also have a DA14531 module, namely DA14531 SmartBond TINY™ Module! It has very small dimensions and is very low power. Follow the link below to find datasheet, documentation and HW collaterals for the module:

https://www.dialog-semiconductor.com/products/bluetooth-module-da14531-smartbond-tiny

The latest CodeLess release ( version 6.380.12.6 ) is much more improved and support many AT commands.

https://www.dialog-semiconductor.com/products/smartbond-codeless-commands

Thanks, PM_Dialog

ilhan
Offline
Last seen: 10 months 3 days ago
Joined: 2020-06-19 14:42
Thank you PM_Dialog and my

Thank you PM_Dialog and my teammate emreerisgen,

I am sorry to say that we fixed our hardware design with da14580. Can you explain that how we can store this pair information for the long term? Thereby do we need to switch to CodeLess version 6.380.12.6?

 

Sincerely.

PM_Dialog
Offline
Last seen: 1 week 5 days ago
Staff
Joined: 2018-02-08 11:03
Hi ilhan,

Hi ilhan,

The latest CodeLess version 6.380.12.6 is available only for DA14531 and DA14585/6, so you cannot use it for DA14580, as is based on top of SDK6!

Didi you enable to security in the CodeLess that you are using? Probably you can try to define the USER_CFG_APP_BOND_DB_USE_SPI_FLASH and test it.

You can also check the ble_app_security example of the SDK that is using the SPI flash to store the bonding data,

Thanks, PM_Dialog

ilhan
Offline
Last seen: 10 months 3 days ago
Joined: 2020-06-19 14:42
Thanks PM_dialog,

Thanks PM_dialog,

I tried your suggestion. I defined that macro then tracked the functions which use that parameter. I reached to void bond_db_store(struct bond_db_data *data) method. But there is no call for this function in SDK. What do you prefer? In which step i should store the bonding information by this function?

 

Sincereley.

ilhan
Offline
Last seen: 10 months 3 days ago
Joined: 2020-06-19 14:42
Also in training_05_ble

Also in training_05_ble_securtiy_example_v1.1, it refers that there is no option to get static bond information because it changing every time.

Information on bonding storage feature:

  • The DA14580 does not store any bonding info after power cycling the device. Even if the PIN code is not changed, the LTK is changed every time.
  • It is recommended to remove the bonding info in the Smartphone/Tablet.
  • It is normal because when you reset the DA14580, the keys do not match anymore.
  • There is a random part in the key so the bonding information is not stored in the memory of DA14580.

It seems there is no option but you said that it is possible. Can you share details about the solution?

PM_Dialog
Offline
Last seen: 1 week 5 days ago
Staff
Joined: 2018-02-08 11:03
Hi ilhan,

Hi ilhan,

Can you please indicate which project you are using and which type of security? Please follow the USER_CFG_APP_BOND_DB_USE_SPI_FLASH macro in ble_app_security SDK example.

Following this macro you will find that the bond_db_store_flash() is executed in order to store the bonding information in the SPI flash.

Thanks, PM_Dialog

ilhan
Offline
Last seen: 10 months 3 days ago
Joined: 2020-06-19 14:42
Thanks, PM_Dialog,

Thanks, PM_Dialog,

After the trial of the ble_app_security application, I noticed that there is no external flash embedded. Application is going to timeout on getting jedec_id. Your embedded external flash support is starting by DA14583, am I right? 

To overcome this problem I think bonding data should pass over UART to our MCU. Then it will be retrieved by da14580 on every restart. Can I take your suggestion?

Sincerely.

PM_Dialog
Offline
Last seen: 1 week 5 days ago
Staff
Joined: 2018-02-08 11:03
Hi ilhan,

Hi ilhan,

Can you please check if the ble_app_security is built for DA14531 configuration?

The generated hex file should be ble_app_security_583.hex.

Thanks, PM_Dialog