Hi all,
Now, I have a troube. In Mesh 3.0, I want to advertising data. This is my function :
#define ADVERTISER_BUFFER_SIZE (128)
void adv_start(uint8_t *data, uint32_t length)
{
if(length > 31){
__RESPONSE_UART("LENGTH ADV TOO LONG\n",20);
}
else{
advertiser_enable(&m_advertiser);
/* Allocate packet */
adv_packet_t * p_packet = advertiser_packet_alloc(&m_advertiser, length);
if (p_packet)
{
/* Construct packet contents */
memcpy(p_packet->packet.payload, data, length);
/* Repeat forever */
p_packet->config.repeats = ADVERTISER_REPEAT_INFINITE;
advertiser_packet_send(&m_advertiser, p_packet);
}
}
}
And whenever the data changes, I call adv_start function for advertising it. But I only do this 4 times, and from the 5th, data advertising not change. p_packet alway = NULL .Why?
How to resolve it ? Thank very much.

