STM32WB55 Issues with Advertising BLE Name Length Longer Than 9 Characters
We have encountered issue with WB55 BLE firmware where it doesn't accept AD_TYPE_COMPLETE_LOCAL_NAME longer than 9 characters
We have reproduced that issue on p2pServer example where we've modified local_name to be "123456789" all is OK.
static const char local_name[] = { AD_TYPE_COMPLETE_LOCAL_NAME , '1', '2', '3', '4', '5', '6', '7', '8' , '9' };If we add one character so local name is now "1234567890"
static const char local_name[] = { AD_TYPE_COMPLETE_LOCAL_NAME , '1', '2', '3', '4', '5', '6', '7', '8' , '9' , '0'};Following happens in file app_ble.c
ret = aci_gap_set_discoverable(
ADV_IND,
Min_Inter,
Max_Inter,
PUBLIC_ADDR,
NO_WHITE_LIST_USE, /* use white list */
sizeof(local_name),
(uint8_t*) &local_name,
BleApplicationContext.BleApplicationContext_legacy.advtServUUIDlen,
BleApplicationContext.BleApplicationContext_legacy.advtServUUID,
0,
0);
/* Update Advertising data */
ret = aci_gap_update_adv_data(sizeof(manuf_data), (uint8_t*) manuf_data);
// If local_name string is longer than 9 characters the above will fail with
// returned value being 0x41 indicating BLE_STATUS_FAILED.
// Document UM1865 does not explain why that would be the case for aci_gap_update_adv_data call.
if (ret == BLE_STATUS_SUCCESS)
{
if (New_Status == APP_BLE_FAST_ADV)Basically returned value is 0x41 (BLE_STATUS_FAILED).
Can someone from STM check BLE firmware full sources and perhaps clarify why that is the case ?
I did not find any specification limiting BLE name to be 9 characters or less.
