I was unaware that the 'manufacturer data' in the advertising packets is limited to less than a full payload. However, whenever I set it to >6 the program "crashes".
#define MANUFACTURER_DATA_LEN 7
...
ble_advdata_manuf_data_t adv_manuf_data;
uint8_array_t adv_manuf_data_array;
uint8_t adv_manuf_data_data[MANUFACTURER_DATA_LEN];
adv_manuf_data_data = [ assign actual data ];
adv_manuf_data_array.p_data = adv_manuf_data_data;
adv_manuf_data_array.size = MANUFACTURER_DATA_LEN;
adv_manuf_data.company_identifier = COMPANY_IDENTIFIER;
adv_manuf_data.data = adv_manuf_data_array;
advdata.p_manuf_specific_data = &adv_manuf_data;
Again, any value of 6 or smaller works, above six doesn't. What limit am I hitting? Could this be a bug?
Thanks!