Electronic – arduino – 1 master, multiple slaves RF communication

arduinoRF

I want to communicate with multiple Arduinos over RF. Price is important, and so is power use.

So I've ordered a couple of nRF24L01 modules which seemed up to the task. One thing I like is that they allow setting a channel (0-127). They also cost very little and use little current.

However as I will communicate with one master device (PC endpoint), I need to use a single channel for all those slaves (think in the dozens), which would mean I'd have to share bandwidth, which I'd rather not do.

My last resort is having a master transceiver for each individual slave.

Is there a better solution than that?

Update

Required bandwidths, single connection:

Client -> Master: 80kbit (single packet: 360 bytes)(could be without CRC and ACK)

Master -> Client: 5kbit~, very little (single packet: 20 bytes)(needs CRC and ACK)

There is no communication needed among clients.

I would like to stay off Wifi/Bluetooth, as they consume more current, are pricier and the range is shorter.

But I would like to keep master-client ratio as high as possible (1:5 at least). A Pi is a possible alternative if throughput is an issue only for master.

Best Answer

Well, no, if you have a fixed RF channel width (which is the case here), than if you share that bandwidth, you share the bandwidth. So, no way around that.

Since the IC can't send on multiple channels simultaneously, you'd need to increase the number of ICs to send on multiple channels.

Anyway, your consideration is off-point. You're controlling the nRF24 with an Arduino. You simply won't be able to do offer more than the 2Mb/s that the nRF24 can deal with! Let alone process received data, unless you're really doing impressive things with your Arduino – like throwing out everything that makes Arduino, and low-level DMA'ing data at high rates to the SPI peripheral.

Update: You changed the master node to a PC. Well, it doesn't change the fact that per channel, you only get one channel worth of bandwidth. So if you don't want to share bandwidth, see my first two paragraphs, and by more transceivers to attach to your PC. Or, of course, buy something that was meant to do high-rate networking, like WiFi.