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

point to multipoint with UART (multilink on the S120)

I'm interested in using BT LE to collect data from a number of serial based devices -- a point-to-multipoint configuration. I'm familiar with the UART examples and have seen the multilink example.

The "devices" would be connected to a BT "remote" via the UART (+ level shifter etc), any serial traffic needs to be sent over the BT LE link to a single master BT device connected to a PC which can read the data (probably via the UART again).

However, I'm not 100% sure of the model, maybe it's just the terminology. In the multipoint example, there is a central (Softdevice 120) and peripheral (Softdevice 110). The central connects to the peripheral(s) to collect data, which is the opposite to how I need it to work (or is this just convention and can either end initiate the xfer?).

Finally, what are the limitations, I think the multipoint allows up to 8 simultaneous connections, can I have more "parked" connections? i.e. how many device+BTLE "remotes" combinations can I associate with a single BT LE master? (even if only 8 can communicate concurrently).

Thanks!

Parents
  • So let me restate my original question using the proper terminology:

    • I have a number (>8) of "remotes", that is a nRF51822 (BLE) module talking to a "device" (e.g. a data logger) using the UART.
    • I have an "uplink" which consists of another nRF51822 (BLE) module talking to a PC via a UART

    I need to be able to:

    a) Have the "remotes" discover the "uplink" and associate (whatever that means) b) Whenever a remote receives a data packet to log via it's UART, it wakes up on the interrupt and sends the packet to the "uplink" which then logs it into it's db and provides a short ack packet that must be routed back through the "remote" to the device c) Have the "uplink" occasionally ping the "remotes" to make sure they're still alive

    Now for the remaining questions:

    1. For (a), do I make the uplink actually be a peripheral advertising an "uplink-service" and have the "remotes" do the scanning and discovery?
    2. It seems that for (b), the "remote" is the master as it's initiating a connection (although I could do this with a notification)
    3. Can the master-client roles be reversed depending on the needs? (I need to read more deeply into nAN-36 I think)
    4. How many "remotes" can a single "uplink" serve?
      • I don't think I need to whitelist anything (I know the NRF_RADIO peripheral only has 8 address slots)
      • The packets are small (20-80 bytes), any thoughts on overall performance if I had say 20 remotes?
    5. Seems like the softdevices might be too limited
      • Do I have to do direct NRF_RADIO access?
      • Can I mix and match, e.g. use the softdevice to do advertisement/discovery, but use NRF_RADIO for the actual comms
Reply
  • So let me restate my original question using the proper terminology:

    • I have a number (>8) of "remotes", that is a nRF51822 (BLE) module talking to a "device" (e.g. a data logger) using the UART.
    • I have an "uplink" which consists of another nRF51822 (BLE) module talking to a PC via a UART

    I need to be able to:

    a) Have the "remotes" discover the "uplink" and associate (whatever that means) b) Whenever a remote receives a data packet to log via it's UART, it wakes up on the interrupt and sends the packet to the "uplink" which then logs it into it's db and provides a short ack packet that must be routed back through the "remote" to the device c) Have the "uplink" occasionally ping the "remotes" to make sure they're still alive

    Now for the remaining questions:

    1. For (a), do I make the uplink actually be a peripheral advertising an "uplink-service" and have the "remotes" do the scanning and discovery?
    2. It seems that for (b), the "remote" is the master as it's initiating a connection (although I could do this with a notification)
    3. Can the master-client roles be reversed depending on the needs? (I need to read more deeply into nAN-36 I think)
    4. How many "remotes" can a single "uplink" serve?
      • I don't think I need to whitelist anything (I know the NRF_RADIO peripheral only has 8 address slots)
      • The packets are small (20-80 bytes), any thoughts on overall performance if I had say 20 remotes?
    5. Seems like the softdevices might be too limited
      • Do I have to do direct NRF_RADIO access?
      • Can I mix and match, e.g. use the softdevice to do advertisement/discovery, but use NRF_RADIO for the actual comms
Children
No Data
Related