For me, the most annoying part of building a bunch of sensors, was what an ugly mess of wires they turned into. And compounding the problem was the Nordic radio modules. They all come in a very inconvenient 2x4 or 2x5 PTH module. I initially wanted to make my own board with a nrf24 chip and the passives required, but you can buy the module online for much cheaper. The nrf24 also wanted a really clean 3.3v power supply which isn't all that easy to come by so I solved both of those issues with a very simple board.
I'll be the first to tell you that this isn't a marvel of EE design that uses innovative ideas etc, but for me, it solves a very annoying problem in a simple and easy to implement way. Why didn't I use the onboard 3.3v regulator? Because it didn't seem to be working all that well for me so I did my own thing. My guess is the nrf24 modules are very picky about their power supply or the cheap pro minis just weren't cutting it. Additionally, I have found that you can power the 5v versions of the promini without any fuss at 3.3v. And the power supply is going to be part of another board, this has shown me that it works well.
As for the software that runs the whole thing, the RF24 library is well established and used here. The modules already provide layer 1 and 2. My layer 3 protocol is very simple and works like this:
- a node sends a message
- every other node that heard it retransmits it until it reaches the base station
- it's slightly more complicated, but not by much
- the base does the processing/saving/whatever with the data. (beyond the scope of this project, btw)
This approach works well, but assumes that some sensors will always be on (which is the case for my setup). Battery powered nodes will be sleeping and not relaying messages.
The next step for me will be to make some boards that work with my PA-LNA nrf24 modules. I am using these as my base and for relays. They can talk from one end of my neighborhood to the other. I also plan on making a coin cell board as well.