It's my first post here so let introduce myself : I'm a 25 y.o. French electronics engineer and hobbyist. I also like skating (inline skates and ice skates) mainly slalom, jumps, speed run, street ride... And I have any hobby projects related to this sport I want to give life!
I'm here because I want to upgrade one of my actual project with Bluetooth Low Energy. I have 20 little slalom cones with RGB LEDs, power management unit and battery, sensor... And now the game is to build 20 new units with Bluetooth.
First I wanted to add only Bluetooth to control each device individually from an Android smartphone. So nRF8001 was my first choice.
Then I thought to add a feature : configure a mesh network to give each device the ability to share small amount of data with each others. But I read somewhere that nRF8001 can't act as a master, so the devices can't be used without a BLE master (smartphone).
My question is this one :
Now I hesitate between nRF51422 and nRF51822. The good point is that they're pin-to-pin compatible. If I'm right nRF51422 is able to communicate like an nRF24L01 + Bluetooth.
I never used 24L01 so I don't know which protocol is better/easier to implement for a small mesh network (up to 20 or 30 devices)? What are the limitations in term of device number and application?
Furthermore, there was a microcontroller on the previous project (PIC24F) with USB bootloader, 3 PWM, 1 ADC, 2 SPI, and 5 inputs with interrupt (push buttons and charger present detection). Actually I don't know if it's better to implement a serial communication between nRF and microcontroller, or if I go only with nRF and do a new code.
If you really need communication between each node, and speed/throughput is not so important I would go to BLE-based Open Mesh implementation. nRF51822 is enough - nRF51422 additionally has ANT+ support which is not useful in Your project.
No speed is not very important. All cones have the same software, with multiple user programs that can be selected from push buttons or smartphone (to change color, game mode...).
Communication between each device can be used, for example, to select a user program, or reset all cones, from only one cone (with push button). Or in a game, all cones are blue, if we touch one, it sends data to all other to make them blink red, etc.
In fact it's not really needed, cause the one I actually have are fun, but with this new feature there are so much possibilities!
I've just seen that there is a quite cheap development kit for nRF51 on Mouser, I think I'll let it a try!
It seems all nodes could be listening all the time, and the one pushed is transmitting only. So, there may be no need for mesh protocol. It can be done by scanning (all devices) and advertising (pushed device) the transmitted data. That could simplify it a lot. It also depends what are your power requirements.
Oh yes it seems a good idea, mesh networking was something that seems natural to me, but it's right that devices can be waiting for an event, I think they have nothing to return to the advertising device.
I would have considered the newer and better nrf52832. The 52-DK is just as cheap as the 51.