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

creating a network for more than 8 nodes with exchangable clients

20160316_113235.jpgHi guys,

i have 20 nodes and a central in my network, that are very close to each other except central device ( All of nodes are in a approximately 20cmx40cm area). Any device of these 20 nodes should collect up some datas of nodes and send to the single client. So the network can include 1 Client and 20 Nodes, in which one of these nodes acts as central (client) to send out all of sensor datas in a table. This network must meet following conditions:

  • The central device should communicate to only one device (Client device in 20 devices). Central device will always listen to network whether any device is available.

  • All of 20 devices can be exist in network or none of them can be there. If there is only one device, then this device should inform the central.

  • It should be fastly clarified whether there is any device in network and should be send out only a few bytes of data to the central.

I don't know whether it could be developed an algorithm, that helps to find out the client device in 20 nodes. Because this network includes more than 8 nodes and all of them should act as either client or slave. Has anybody an idea to solve this problem?

I think, that i can let the device to act as client, that is first supplied. But i am not sure.

I would be very appreciate, if anybody tells me, which solution will be better.

Note: I want to use nrf51 DK to realize this.

Thanks a lot,

aziz

  • Hi. It was not easy to fully understand your needs. It was not clear what the client/central was, and if they were the same device or not. The drawing was helpful, but not all nodes were named. For example, it is not clear what the nodes colored red are. It is also not clear what the right part of the system is.

    • Are all nodes in the system based on the nRF51?
    • Does all the 20 sensor nodes only send data, or must they receive data as well?

    If the 20 sensor nodes only send data, they can broadcast the data using BLE advertisements. These advertisements can be scanned with a BLE central/observer.

    You can also use a proprietary protocol like ESB, and make all the sensor nodes primary transmitters (PTX). The client will be a primary receiver (PTX). There is 8 pipes, but you can have all 20 devices use the same pipe.

    If all sensors are this close, can you not simply wire them together?

    Update 31 March, 2016, after some more information:

    Using BLE is possible. You can create a scheme where the 20 sensor cards advertise their status and sensor reading. The central will scan for these advertisements, and use the data received. If the central wants to write some data to a sensor, it can connect to it, write, and then disconnect.

    By using BLE, you get encrypted data data transmissions while you are connected.

    As mentioned above, ESB is also a fitting protocol for your case. You can have the sensor cards send a transmission where it expects an acknowledgement. The central will send an acknowledgement when it receives the status update, and can also send data back. As mentioned above, you must use the same pipe (radio address) for all 20 sensor cards, but you can implement your own adressing scheme in the application.

    ESB does not implement encryption by default.

    -Anders

  • Hi Anders,

    thank you for your answer. You're right, i couldn't explain well my project. I think i should explain more to understand my need. There are 20 mechanical interfaces and 20 mechanical connectors. On each of connectors there is a sensor, that measures a analog input. Because of the harsh environments it is not possible to wire them. We need something wireless (RFID or Bluetooth) to identify them whether they are connected. If connected, we need also know which sensor is in which interface connected. RFID would be better but it is more expensive and hard to implement of the RFID Reader in each interfaces. So we have decided to use Bluetooth LE and nRF51 DK to realize the sensors. Central device is also a nRF51 DK and all of these (20 sensors and central device) include n51422 chip. I am not sure about which protocoll (BLE 4.2 or ANT or gazell any other) i should use. I have not any experience on the Bluetooth network. It is also important that each time only one sensor should talk to central device. Because the central device has already more tasks to done. At least we would like make it so. And each time one or more sensors may be connected with any interface. It should be identified in which interface they are connected and the value of this analog data to readjust mechanical parameters. So i can not define any sensor as client which would send all of states of sensors inclusive its own state and analog data. Other important point: All of these sensors would be supplied over inductive power, which means all of mechanical interfaces include a coil to power transfer. So the sensors would be supplied only when they are connected to these interfaces.

    To answer your other question: •Does all the 20 sensor nodes only send data, or must they receive data as well?

    We could also need a LED on the sensors to display something. So we could also send something (only a few bytes) to the sensors over the central device.

    Thanks a lot aziz

  • Thanks for the info, i updated my answer. If you need some info on BLE, you can check out our Youtube channel and tutorial section.

Related