Are you using the Creator for your development? Could you check the following KBA to see if there is something wrong with your configuration?
If it still doesn't work, could you share your project for us?
Sorry this took so long. I have been sidelined off this project for a bit.
I am attaching a project zip file that is a very stripped down version of what I am trying to do.
The KBA was using a PSOC 4 which is a different interface but should have been similar.
There are some initial data in the sflash BD Address aera. You can use the API Cy_BLE_GAP_SetBdAddress to set the BD_ADDR.
I can change the address with the API call but who does PSoC Creator have a field for setting the address but doesn't do anything with it.
1 of 1 people found this helpful
I checked the code and it may not be the problem I mentioned before. It seems the problem only happens when you choose broadcaster only. I am checking this problem with our FW team and need some time for the answer.
I also isolated the following the problem.
I Generate a Random address using This code in the stack handler.
cy_stc_ble_stack_random_num_param_t seed; // whatever is in the stack is good enough for me.
apiResult = Cy_BLE_GenerateRandomNumber(&seed);
AddrInfo.addrType = CY_BLE_GAP_RANDOM_STATIC_ADDR;
memcpy(Address.bdAddr, AddrInfo.gapBdAddr.bdAddr, 6);
Address.type = 0;
If I set Address.type to 1 nothing gets set and I see the default address being broadcast,
If I set Address.type to 0 I get my generated address labeled as public.
1 is for public address and 0 is for random address.
For your original question, we will update our FW and correct it in the next update.