Skip to content

Soil Moisture Sensor with Arduino, XBee and Node-Red

IMG_0266I have planted some chilli seeds and I am supposed to keep them moist, only trouble is I am rubbish at remembering to water my plants. I bought three cheap soil moisture sensor kits off ebay and hooked them up to an Arduino. The Arduino has an XBee shield and sends messages to my Raspberry Pi over a Zigbee network. The Pi is running Node-Red on node.js. When the soil moisture goes above a certain threshold it sends a message via Prowl to my iPhone. 


Posted in Uncategorized.

Fibre Optic Broadband Availability Tools

So what do you do if the BT’s Broadband availability checker says that your exchange has been enabled for FTTC (Fibre to the cabinet), but your broadband provider says it is not available at your address? Dig a little deeper and look at whether you are connected directly to the exchange of via a cabinet.

Try these links:

BT Openreach When and Where:

FTTC Checker :  (change the post code to your own)

BT Broadband Availability Checker:

SamKnows Broadband Checker:

Only trouble is I still can’t figure out how to find out when my local cabinet will be upgraded.

This looks like a useful troubleshooting tip.

With your modem/router unplugged, on your phone dial 17070, option 3, 1, 2, 2. What does it report back ?

Posted in Internet.

Tagged with , , .

Pretty as a Pi-cture – Raspberry Pi Server picture frame case (phase 1)

IMG_0170A couple of years ago I watched hak.5′s Darren build a case for his gaming rig out of a couple of IKEA picture frames. Ever since then I have been waiting for the right opportunity to do the same. A couple of months ago the motherboard failed in My Mini-ITX server so I thought I’d try replacing it with a Raspberry Pi. The Pi has been performing it’s home automation duties perfectly ever since but I couldn’t find a decent Raspberry Pi server case. And so the inspiration for this project began.


Posted in Gadgets, Internet of Things.

Tagged with , , , , , , .

Improvised ReadyNAS NV Power Supply

The power supply on my Infrant/Netgear ReadyNAS NV has died again. That’s the third power supply in just over 7 years that has failed.

The ReadyNAS has mostly been great but the power supply really has been it’s achilles heal. The RAID set up means that if a disk fails you can still get at your data and can simply swap out the failed disk for a new one. But when the power supply fails you are screwed. You can’t get at your data and, since they use a proprietary wiring scheme, you can’t just pop into you local PC store to buy a new one. Netgear will sell you a replacement, but they are really overpriced and it can take several days for shipping, assuming they even have them in stock.


Posted in Gadgets.

Tagged with , , , , .

Howto fix a missing eth0 adapter after moving ubuntu server from one box to another

The SATA controller on my Mini-ITX server’s mother board has died. To get the important files off the drive I hooked it up to another PC and booted into Linux. It seemed to boot up perfectly (try doing that with Windows!), except the network adapter wouldn’t start. After a bit of Googling around I found this article.

A Simple edit of a config file and reboot and we were back in business.

It seems that this is more a Debian thing than specific to Ubuntu. Same problem can occur on a Raspberry Pi and the same fix works.

Posted in Linux.

Tagged with , , .

Node-RED and XBee

Node-RED XBeeI recently discovered a really interesting new Open Source project for integrating devices and services, it’s called Node-RED. Sponsored by IBM, the project is built on node.js and describes itself as “A visual tool for wiring the Internet of Things”. It combines a graphical design tool that runs in a web browser and a runtime execution engine. Devices and services are represented by “nodes” which are wired together using the design tool to create a “flow”. Although a number of built-in nodes are provided there isn’t one for integrating an XBee wireless network so I rolled up my sleeves and built one.


Posted in Internet of Things.

Tagged with , , , , .

Teensy 3.0, like Arduino but better

20130627-225930.jpgI’ve been looking for a low cost and smaller footprint Arduino board to use with XBee. Teensy 3.0 is now officially my favourite Arduino board.

I had high hopes for DigiSpark but it doesn’t have a serial UART and I wasn’t able to get the software serial library to work with it. The need to have 5V to 3.3V logic conversion didn’t help either. Then I stumbled upon Teensy, a range of really small Arduino compatible boards. The latest model is the Teensy 3.0, powered by a 32bit ARM Cortex-M4 processor. Unlike most other Arduino boards, the Teensy 3.0 runs at 3.3V not 5V. This makes it much simpler to connect the Teensy 3.0 to an XBee which also runs at 3.3V. It has more analog and digital IO pins than a regular Arduino and THREE hardware serial ports. The USB connection can also be used to send additional Serial messages to the Arduio IDE serial monitor, very useful for debugging XBee serial communication without the debug messages interfering with the XBee communication.


Posted in Internet of Things.

Tagged with , , .

Install Oracle JDK on Oracle Linux

I could’t find a reference to this in the JDK Install instructions so I thought I’d make a note of it here.

I installed the latest Oracle JDK on Oracle Linux using the RPM downloaded from here, but when I checked the version number I was still getting OpenJDK.
# rpm -ivh jdk-7u21-linux-x64.rpm
# java -version
java version "1.7.0_19"
OpenJDK Runtime Environment (rhel-
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

The solution is to use the RedHat “alternatives” utility.

1) Register the newly installed Oracle JDK with “alternatives”

# alternatives --install /usr/bin/java java /usr/java/default/bin/java 2

2) Set the new JDK to be the default

# alternatives --config java

Choose the option that represents the Java version you require.

Posted in Linux.

Tagged with , , .

Look, no Arduino – XBee ZB Series 2.x Digital Input

IMG_0350In preparation for my next project (an XBEE powered rain gauge) I have been investigating how to collect sensor data with just Digi XBee modules. So far all my sensor projects have used an Arduino to collect data then use either WiFi or XBee to send the data to my server for processing. It turns out that the XBee modules have 12 digital input/output and 4 analog input pins that can be used directly. For basic sensor projects it should be possible to use an XBee to collect sensor data without the need for an additional micro-controller such as the Arduino.


Posted in Internet of Things.

Tagged with , , , .

Smart Star – My Arduino, Node.js and MQTT CheerLights Project

A few years ago I bought a large outdoor Christmas decoration from our local B&Q DIY store. It’s made up of three rope lights (one blue, one green and one reddish purple) arranged around a frame to form a Multi coloured Christmas star. After just a couple of seasons the flashing control unit just stopped working and the lights were useless. Despite knowing very little about electronics I decided I should try to build my own control unit using an Arduino. Then I read about the Cheerlights project. I figured that if I’m going to build a new controller then why not build it so it can be hooked into Twitter and join in the CheerLights fun.

Here’s a video of my “Smart Star” working.


Posted in Internet of Things, Software Development.

Tagged with , , , .

%d bloggers like this: