We would like configure our device with a public addr instead of the random as is default for NCS/Zephyr. We are currently on Zephyr v3.1.99 and NCS 2.1. I have tracked down the function that should set our device to a public addr but I'm getting an error that says public isn't supported. IAfter some research I've found a couple of places in the forum, github, and documentation that mentions public may not be supported yet. Right now our mobile apps and other factory equipment are expecting our device to advertise as a public addr. So we really need to figure out if this is even possible and if not, when will it be.
Here is the code that I'm using to try and setup the addr:
bt_addr_le_t ble_gap_addr;
ble_gap_addr.type = BT_ADDR_LE_PUBLIC;
memcpy(&ble_gap_addr.a.val, "\x62\x52\x42\x09\xe7\x34", sizeof(ble_gap_addr.a.val));
ble_gap_addr.type = BT_ADDR_LE_PUBLIC;
BT_ADDR_SET_STATIC(&ble_gap_addr.a);
bt_id_create(&ble_gap_addr, NULL);
I'm seeing an error in my debug log when this code is getting run:
Image Confirmed Successfully!
[00:00:09.546,569] <err> bt_id: Only static random identity address supported
BLE advertisement state change: 0
BLE advertisement state change: 1