BLE Mesh on the FRDM-KW41Z does not always deliver packets

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

BLE Mesh on the FRDM-KW41Z does not always deliver packets

1,450 Views
pbartlett
Contributor II

I am using the FRDM-KW41Z kit to set up a simple BLE Mesh using the examples that came with the kit. I am using the IAR IDE and have set up one module as the commissioner/configuration client and the other as a temperature server. I created a new shell command on the configuration client that calls MeshTemperatureClient_GetTemperature(destination) with destination set to the address of the temperature server device. Below is an example of the terraterm activity when I type my new command:

BLE MESH >>> temp get 1
< Temp Get command sent to 1 >
BLE MESH >>>
-> Received Temperature measurement from ID 1: 27 degrees Celsius.

So far so good but it only works about 50% of the time. When it fails I see the following:

BLE MESH >>> temp get 1
< Temp Get command sent to 1 >

Which indicates to me that the call to MeshTemperatureClient_GetTemperature(destination) was successful.

Using IAR on the temperature server end I can see that the  MeshTemperatureServerCallback() is not being called when a failure occurs. How can I find out where the command is getting lost?

Philip

4 Replies

938 Views
antonioconcio
NXP Employee
NXP Employee

Hi Phil,

It is possible that some packets are not received due to the environment of the BLE advertising channels where the mesh nodes are operating, but in case of a mesh nwk when you have several nodes (compared to your test with only 2 nodes) it can happen that a node may miss a packet from a relay and still gets the same packet from another relay.

In actual implementation there isn't any acknowledge algorithm/protocol to confirm a reception of a packet and send it again if it is lost, but this could be implemented at application level (combination of ack and retries mechanism similar to 802.15.4 one). 

Please note the BT Mesh specification that is under development introduces the concept of reliable and unreliable messages and therefore we are going to have it in Q1'17.

My best wishes for a Happy 2017,

Antonio

938 Views
evgenyerlihman
Contributor IV

Hi Antonio,

I have the same issue, the KW41Z eval boards are sitting on my desk with 10cm distance between them, and i still get lower than expected percentage of successful messages between them. I think the "environment" in the office should give me 100% providing no physical obstacles between the nodes....

Thanks,

Evgeny

0 Kudos

938 Views
antonioconcio
NXP Employee
NXP Employee

Hi Evgeny,

2.4GHz is quite a crowded band, almost impossible to get 100% without any acknowledgment mechanism, that anyway can easily implemented leveraging the callback event and a timer.

I was referring to Mesh specification from Bluetooth SIG, that is supposed to be ratified in Q3.

Cheers,
Antonio

938 Views
evgenyerlihman
Contributor IV

Hi Antonio,

What BT Mesh specification were you referring to that introduces the reliable and unreliable messages?

Thanks,

Evgeny

0 Kudos