Since half a year i have laying around some arduino mini pros and some rfm23bp radio modules and this week I have the opportunity to do some hacking and i decided to see if I could come up with some mesh network nodes build from these components. A picture of that rfm23bp module:
Today I started checking if the hardware actually works and set everything up – which to my surprise took way less time than anticipated. So here is the first breadboard setup:
In the middle you can see the Arduino Pro Mini running with 3,3V / 8Mhz, the big thing on the right is the power supply and the rf module is connected on the left. On top of the whole setup you can see the serial/usb adaptor to program the controller from a laptop.
After connecting everything i tried running a sample program for the RadioHead library I’m going to use. After programming and monitoring the serial output of the setup I was able to see the debug messages telling me that the rf module is transmitting. So far – so good, but to actually see if it is working I need to build another node that then could receive the messages from the first one to confirm it actually is working – which i could not do today as I never expected to have it up and running in such a short time.
To not be bored and actually see if something comes out of that rf module i asked a colleague to borrow me his rtlsdr DVB-T dongle and installed gnuradio-sdr along with the gr-osmosdr package which then gave me a nice specturm analyzer like tool that would show any radio activity in the defined wavelength. So, after setting that up and starting the tool I hit the reset button on the network node module and instantly had a visible peak showing that it actually transmitted something:
Tonight I’ll solder some connectors to the second rf module and then will start hacking on some application making use of the nodes. Eventually I’ll create a third node and then could start testing the mesh functionality.
I finished basic communication between two Arduinos using both a RFM23BP module. The result is some simple application that let’s you chat between Arduinos using their serial port as interface. Code and basic documentation are available at https://github.com/greygoo/rfchat and https://github.com/greygoo/rfmesh.
Here the connection layout between the Arduino Pro and the RFM23BP module: