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

Connecting 50 BLE slaves to an RPi

The system requirements: 50 identical nRF53-based devices (each with a sensor and an actuator), positioned within a 3x3 meter square should be connected to a single computer (most probably an RPi 4) with BLE.

Latency up to 1 sec is tolerable. 

Afaik, in-built BLE in RPi 4 won't handle it, but I can connect a BLE dongle with a SoftDevice on it, right?

So the questions are:

  1. Can SoftDevice handle communication with 50 slaves, each sending at least 1 message per minute?
  2. Do you maybe know an RPi alternative with a proper inbuilt BLE module?
  3. Will BLE mesh make sense in this case? I only actually need one-to-many communication.
Parents
  • Hello,

    I don't think you will be able to connect 50 BLE devices to any single BLE chip. I don't think it is possible with the RPi (but not 100% sure), but it is not possible with the nRF52NNN because of a limit of 20 connected devices in the softdevice.

    You can of course use 3 devices to achieve 50 (60) connections, but it may not be the way to go.

    Mesh is a possible solution, but it heavily depends on what your application is going to do. You say that you are OK with 1s latency. What are you doing every 1s? Do you intend to send a lot of data? Or will you only send data every 1s if some conditions are fulfilled?

    Depending on this, there are some different approaches that you can try out, but I believe that the easiest right now is that you describe your planned application first, then we can look into details.

    Best regards,

    Edvin

  • Thanks for the answer!

    Each module has a sensor (proximity sensor) and an actuator (LED). When a sensor is triggered on one module, it should provoke a reaction on another module and notify the central "server" (e.g. RPi4). This time between the sensor triggered and the LED turned on on another module should be around a second, definitely not more than 2.

    All the modules should be able to send a "sensor-triggered" event to the server immediately after it was triggered. Each module should also periodically (once in several minutes) send a sort of keepalive message with their battery and signal strength status. 

    All the modules are fully battery operated, the server has a normal AC/DC conenction.

Reply
  • Thanks for the answer!

    Each module has a sensor (proximity sensor) and an actuator (LED). When a sensor is triggered on one module, it should provoke a reaction on another module and notify the central "server" (e.g. RPi4). This time between the sensor triggered and the LED turned on on another module should be around a second, definitely not more than 2.

    All the modules should be able to send a "sensor-triggered" event to the server immediately after it was triggered. Each module should also periodically (once in several minutes) send a sort of keepalive message with their battery and signal strength status. 

    All the modules are fully battery operated, the server has a normal AC/DC conenction.

Children
No Data
Related