2 Replies Latest reply on Apr 20, 2016 4:34 AM by katagiri

    how to set random static address


      I am using SDK 2.2.2 ,and BCM20737S-TAG.

      So I want to use "random  static address", I tried to use the function "blecm_startAdv()".

      parameters are below:



      0x07,(all channels)


      0, (filter disable)

      0, (not direct_adv)

      NULL(not direct adv)


      After that , Tx_Addr has successfully changed "0" to "1" in Adv PDU header ,

      but  AdvA has changed "00:00:00:00:00:00".


      If I change the parameter  HCIULP_PUBLIC_ADDRESS,

      AdvA is same as specified BD_ADDR in Makefile.


      In Core Spec 4.2 , 7.8.4 LE Set Random Address Command

      is exist , but I can't find this HCI function in blecm.h .


      How can I set random static address to blecm?

        • 1. Re: how to set random static address

          How about calling blecm_set_static_random_bd_addr() in create function?

          • 2. Re: how to set random static address

            Thank you dmiya


            I added blecm_set_static_random_bd_addr() to my function.

            ( APP_PATCHES_AND_LIBS += bd_addr_control.a)


            And I did Make Target with parameter "BT_DEVICE_ADDRESS=FFFFFFFFFFFF" and

            build and chipload hex , because  blecm_set_static_random_bd_addr() is only valid when

            NVRAM bd_addr equal to FF:FF:FF:FF:FF:FF.


            At first power on, random static address has generated and  set

            (ex. DE:DD:E2:BF:DC:DD) and perhaps stored in NVRAM(EEPROM).

            And advertised with  AdvA and TxAdd=1.

            Success !!....


            But unfortunately , after second power on  AdvA has changed to "00:00:00:00:00:00" again.

            Dumped emConInfo_devInfo.addr[] is keeping DE:DD:E2:BF:DC:DD.


            Maybe I have to add some function call , but I can't find API.

            1 of 2 people found this helpful