DA14531 Codeless with security


I have two 14531 Development-kits, one set as Central and the other as Peripheral.

When I use the AT+SEC=0 and AT+PIN commands for the peripheral, there is no pairing message when the Central and peripheral connect.

I also didn't get any pairing message when using AT+BINREQ. However, when I connect to the peripheral using the SmartConsole App,

a pairing message requiring a PIN CODE appears.

Can you tell me what actions I need to take for the DA14531 Central codeless to prompt for pairing?

  • Hi Adams,

    Thank you for posting your question online.
    In order to activate the Security features for your Central you will have to define the CFG_BOND_CMD_SUPPORTED. In case you are not able to compile the project due to size issues please exclude the SUOTA feature so you can have more space.
    Then try the following for your Peripheral:
    The following for your Central:


    AT+GAPCONNECT=result from AT+BDADDR of peripheral

    The devices will pair and connect. You can try to give a wrong PIN on your Central and you can see that it will not connect. 

    On the left side is the Central and on the right side the peripheral.
    As you can see on the Peripheral Side the Bonding Failed the first time because I had given a wrong PIN on the Central Side.
    When I gave the same PIN on both Central and Peripheral I was able to pair them.

    Kind Regards,

  • HI,

    I found CFG_BOND_CMD_SUPPORTED in the da1458x_config_advanced.h file, but it is always off in Keil C and I cannot turn it on.

    I have selected the correct model, is there anything else I need to set? 

    Am I only turn off SOUTA in the user_modules_config.h?"

  • Hi Adams,

    Are you working with the latest CodeLess SDK v6.380.16.55? 
    Which ARM Compiler are you using for debugging?
    Also, there are two macros related to DA14531 on the da1458x_advanced_config.h file.
    One on line 480 and one on line 519. You should define both of them and build your project. 
    If you face any memory issues, you should exclude SUOTA as you did on user_modules_config.h. If you need more space, you can undefine any AT commands you are not going to use from user_at_commands.h file.

    Kind Regards,

  • Hi,

    Yes, I am using CodeLess SDK v6.380.16.55.

    About the ARM compiler do you mean this?

  • Hi Adams,

    Please refer to Options for Target to see which are ARM Compiler you are using:

    Please check below I have defined the CFG_BOND_CMD_SUPPORTED on the three Codeless Sets available for DA14531. So you can test the pairing procedure from your side.

    Kind Regards,

  • Thank you for your assistance,

    I enabled the definition of CFG_BOND_CMD_SUPPORTED on lines 480 and 519,

    currently the test can proceed with bonding connection.

     Most features are disable in user_at_commands.h .

    But, there are still many warnings generated about memory size.

  • Hi Adams,

    Glad you were able to make it work.
    The warnings are in case your project exceeds the 32Kb size. You code size is 29880 so there is not a problem.
    Regarding the Keil showing your code grayed off, could you please share from Options for Target which ARM Compiler are you using? And which Keil edition are you working with?
    If you found any answers helpful, you could verify them so you could help others in the community as well.

    Kind Regards,

  • HI, 
    The following is the version information I am using.

    Another issue:

    I first paired DA14531 Central with 14531 peripheral, and then both my phone and computer paired with the peripheral.

    When I tried to connect the DA14531 Central with the peripheral again, both failed to connect. I need to run AT+CLRBNDE before the DA14531 Central can be paired with the peripheral again.

    How many devices can DA14531 be paired with at most?

    Can Codeless only limit one device to pair, or do I need to modify the source code by myself?

  • Hi Adams,

    Regarding the Grayed out code:

    Could you try to download the latest μVision V5.37 as well as ARM Compiler V6.18?
    I believe this should fix your grayed out code problem.
    Regarding the other issue:

    I am a bit confused on what you did. You said:

    I first paired DA14531 Central with 14531 peripheral, and then both my phone and computer paired with the peripheral.

    How did you connect two central devices (DA14531 Central and Smartphone Central) to your DA14531 peripheral? Peripheral devices can connect only to 1 Central. Only the central devices can connect to more than 1 peripherals.
    I connected two DA14531 with AT+SEC=0, AT+PIN=123456.
    Then I disconnected them, and I connected to the DA14531 peripheral via the SmartConsole App. I gave the correct PIN and connection was successful.
    Then I tried to connect from my DA14531 Central again and I was able to connect to the DA14531 peripheral.

    Kind Regards,

  • HI, 

    I'm sorry for not explaining very clearly.
    I not mean two centrals connected to one peripheral at the same time.

    step1 : DA14531 Central connect DA14531 peripheral with security .Then disconnect.

    step2 : mobile phone Connect to DA14531 peripheral and give correct PIN. Then disconnect.
    step3 :Laptop  Connect to DA14531 peripheral and give correct PIN . Then disconnect.

    Finally go back to DA14531 Central connect DA14531 peripheral. --> Unable to connect successfully.