Poor man’s spectrum analysis with the RFM12B – scanning the 868MHz band to check how noisy my chosen channel really is.
Spectrum analysis with RFM12B


Poor man’s spectrum analysis with the RFM12B – scanning the 868MHz band to check how noisy my chosen channel really is.

Swapping the RFM12B for the pin-compatible RFM69CW – +30% range and better sensitivity for roughly the same price.

Replacing my python gateway script with Node-RED: RFM2Pi packets decoded and forwarded to emonCMS in a visual, easy to extend flow.

The RFM2Pi board gets a 6 pin port that happens to exactly match the Digole 0.96″ OLED – instant plug-on status display.

A rock-solid RFM2Pi gateway: after killing several SD cards, the Pi now boots read-only and survives every power failure.

Mounting the Raspberry Pi root file system read-only – the next step after USB flash also proved corruptible on power loss.
Installing emonCMS’s events module – rule-based alerts and actions on top of the telemetry my sensors already log.
The new uIoT RFM12B shield adds a plug-on OLED port – gateway and status display in one stack.
Reducing RFM12B transmission power to stop overloading nearby receivers – better link quality and lower battery drain.
My cheap ebay ‘FTDI’ cable outputs 5V on the supposedly 3.3V lines – scope proof, two dead RFM12Bs, straight to the trash bin.
The RFM12B was declared End of Life – what it meant for my projects and the ecosystem. (Spoiler from 2015: it never really died.)
TCP/IP over RFM12B using the uIP stack – remote nodes reach the Internet through a Raspberry Pi gateway.
The Funky v2 as an RFM12B to Raspberry Pi gateway – it enumerates as CDC over USB, keeping the Pi’s GPIO header free.

The new RFM2Pi board Glyn Hudson and I are working on – ATmega328, internal 8MHz oscillator, SMT layout for the Raspberry Pi.

RFM2Pi firmware fixes: random serial gibberish could switch the board’s nodeID, so commands now require deliberate input.
Rethinking the Funky: an ATmega32U4 micro node with RFM12B – native USB means no ISP programmer and no core installs for users.
Clocking the Funky’s ATtiny84 from the RFM12B’s crystal – stable timing for IR and RF experiments the internal oscillator can’t do.
Discontinuing the TinySensor in favor of the Funky, and a dedicated RFM12B to Raspberry Pi board is coming – the RFM2Pi’s origin.
3D render of the RFM12B shield for the micro IoT gateway – keeping the top free for micro SD and other expansions.
Thinking out loud on clocking the ATtiny84 from the RFM12B’s crystal – a stable external clock without spending an extra part.
A small home-made PCB that permanently fits the RFM12B-to-serial module on my Raspberry Pi – simpler than the native SPI efforts.
Capturing RFM12B packets on the Raspberry Pi, decoding them and logging to emonCMS – the receiving side of my sensor network.
Sending JeeLib compatible packets from an ATtiny85 + RFM12B by porting an old AVR library to the Arduino IDE – no Jeelib needed.
Getting an ATtiny85 to drive the RFM12B – 8 pins, 8KB flash, and enough for a working remote sensor unit.
Interfacing the RFM12B to the Raspberry Pi for cheap – a TinySensor on the Pi’s UART relays packets onward to emonCMS.
An ATtiny84 remote temperature sensor with RFM12B – JeeNode Micro envy turned into my own single-chip wireless node.
Controlling 433MHz RF power sockets straight from an RFM12B module – appliance switching without wiring a single relay.
Getting the RFM12B and an Arduino Ethernet (WizNet5100) to coexist on SPI – working around the nasty W5100 bus bug.