RF24 Weather Station Nearing Completion

I’ve soldered on my waterproof/wired DS18B20 and written a Python wrapper that prettifies the data written by the C++ daemon. So it converts a text file containing “8110:2396:1449:23:49:1170:2343:1383008407” to: BMP085 altitude: 81.10m BMP085 pressure: 14.49psi BMP085 temperature: 23.96c DS18B20 temperature: 23.43c DHT11 temperature: 23c DHT11 humidity: 49% DHT11 dewpoint: 11.70c Date: Tue 29 Oct 2013, 01:00:07 The entire code can be downloaded as a tarball Here’s a photo of the Arduino transmitter, I’ve ordered a plastic project box to make it waterproof:

RF24 (Again!)

I’m still playing with my nRF24L01+’s, I’ve now got the RPi running the receiver as a daemon and the Arduino transmitter in low-power mode. The 3.3v 8MHz ATmega328p-pu now takes a reading (well at the moment its still a dumb counter!) and transmits it, then turns off the radio and goes to sleep for 30 seconds. This is why its important that the Pi is constantly listening (well, sleeps every 5secs to reduce CPU load) and only overwrites the file if it receives a good reading.

nRF24L01+ And Raspberry Pi

Further to my previous post I’ve moved onto using the Raspberry Pi as the receiver. There’s a lot of incorrect documentation, and even incorrect comments in the libraries, so I thought I’d better note down what I’ve done. First we need to get the Pi version of the RF24 library from GitHub, so on the Pi: git clone https://github.com/stanleyseow/RF24.git cd RF24 cd librf24-rpi/librf24 make sudo make install I couldn’t get the hardware SPI version to work, so stick with librf24 not librf24-bcm.

BeagleBone Black First Steps

I’ve finally gotten around to having a quick play with my BeagleBone Black and all I can say is that its hideously badly documented! An easy to read pinout would be nice, or correct documentation regarding UARTs and the USB networking. For those of you who actually want correct information here goes……. USB networking – this doesn’t automatically bring up a network interface on your host PC, the key here is to run ifconfig as root: ifconfig eth1 192.

nRF24L01+ and 3.3V Arduino On A Breadboard

I’ve just received a pair of nRF24L01+ radio modules for my Arduino and have been learning how to use the RF24 library. Probably the hardest part was getting the ATmega328P running at 3.3V/8MHz on the breadboard. Funny shenanegans went on that meant I had to burn the bootloader using ArduinoISP with a 16MHz crystal and pair of 22pF caps, then remove them and upload the sketch using my CP2102. Anyway, after figuring out that “RF24 radio(9,10);” referred to the CE and CSN pins respectively on the module being wired to digital 9 and 10 on the Arduino, things started working.