Sync multiple devices on a BLE network

Hello.
I would like to know how you can connect (synchronize) devices to one network. We have more than two devices based on the NRF52 chip, they control LED strips. And I would like to run these devices in the following modes.
Fisrt mode. We manage these devices using the application and they are fully synchronized, that is, the same feed settings (states, brightness and color) on all devices.
Second mode. When one device finished the animation, it started on the second device, and so on until the animation starts again on the first device.

Parents
  • Hello,

    I am not entirely sure we have anything ready made here, but if you can specify a bit what protocol you are working with and what requirements you have to the synchronization I might be able to speculate a bit on how it can be done.

    Kenneth

  • I'm thinking of using BLE mash for synchronization. Let's say we have three lamps connected via BLE to the phone. We would like to control them separately (change their states) and together (so that a button driving would turn on all three lamps). This is the first case.
    The second case is the ws2812 tape, which is controlled by the NRF52 and is also connected via BLE to telephone, and let’s say one tape finished the animation and transmitted the command to start the animation to another tape, also with the NRF52 controller. And I would like to know if the ble mesh stack is suitable for this task.

  • Hello,

    There is no direct syncronization in ble mesh. Typically latency is a few tens of milliseconds per hop. When controlling the on and off states of many lights in a larger space, a common approach is typically a combination of two things: 1) Using a transition, meaning the lights fade in or out, so it's less noticeable that they aren't 100% synchronous. 2) To avoid " popcorn effect", it's common to send two to three messages in succession, each with a different time delay for when the transition should occur. For example, sending three messages with 100 ms intervals where the first one starts after 200 ms, the second starts after 100 ms, and the third one immediately. In this way, it's enough for the light node to receive at least one of the three messages, and it still appears (relatively) synchronized.

    I would think something similiar could work in this case.

    Kenneth

Reply Children
No Data
Related