This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Synchronization of actions between different nodes in a mesh?

Hi, when reading BLE Mesh specs, this paragraph caught my attention:

Messages may support a delay parameter that indicates a delay between receiving a message and starting the state transition. This helps when synchronizing actions of multiple receivers (such as lights) when senders retransmit messages multiple times. Each retransmitted message may indicate a different delay, compensating for the time elapsed since transmitting the first message.

My project could totally use this feature, I'm wondering how this can be done precisely (<=20 ms if possible), that is, let's say I need 6 motors to start rotating at the same time, or else major mechanical mishaps take place, how do I do that, by embedding a hop count of some sort in the message sent over the mesh? Or is there any other way which I am not aware of?

And above everything, how reliable is this? Since if one node fails to receive the message THE FIRST TIME, the outcome could be very, very undesirable?

Parents
  • You want a message with ack if you want reliability, you also want to ensure that all motors have got the message before starting up. You may also want a fallback to cancel and restart if one of the nodes did not ack within your timeout. The mesh already has a hop count that can be used for re-transmits.

    You can use the mesh for this but since the node count is low (only 6 nodes), it is also possible use a simple scanner/advertiser to achieve this level of synchronization.

    All motors can be started within 20ms of each other with sync either on the 16MHz or 32KHz clocks

  • Hi

    I don't know what you put into the Shockburst term, if you find it misleading?

    Shockburst is getting pretty old by now, and was introduced before BLE was even specified. I think the "burst" part of the name points to the fact that the radio would send short bursts (packets), rather than the older radios where you sent/received a continuous stream and had to assemble/de-assemble the packet manually.

    BLE happens to look a lot like ShockBurst (partly because Nordic was heavily involved in the spec process), and as mentioned except for a minor change in modulation characteristics and a slightly different packet structure, the physical layer is very similar.

    11-12m outdoor range is pretty poor. Assuming you have Nordic devices in both ends you should be able to go further than that, especially if you increase the output power beyond 0dBm.

    If you use a phone to receive the advertisement packet then the receiver sensitivity of the phone makes a difference, and this is outside our control (obviously).

    Best regards

Reply
  • Hi

    I don't know what you put into the Shockburst term, if you find it misleading?

    Shockburst is getting pretty old by now, and was introduced before BLE was even specified. I think the "burst" part of the name points to the fact that the radio would send short bursts (packets), rather than the older radios where you sent/received a continuous stream and had to assemble/de-assemble the packet manually.

    BLE happens to look a lot like ShockBurst (partly because Nordic was heavily involved in the spec process), and as mentioned except for a minor change in modulation characteristics and a slightly different packet structure, the physical layer is very similar.

    11-12m outdoor range is pretty poor. Assuming you have Nordic devices in both ends you should be able to go further than that, especially if you increase the output power beyond 0dBm.

    If you use a phone to receive the advertisement packet then the receiver sensitivity of the phone makes a difference, and this is outside our control (obviously).

    Best regards

Children
No Data
Related