OWFS Server on The Raspberry Pi

Quick and simple this one is. I have a DS9490R (internally it’s a DS1490F) one-wire bus master attached to my Raspberry Pi. 4 DS18B20 temperature sensors are hanging off the bus, and I’d like to access them from the home automation server.

On the Raspberry Pi, or the server/device that’s hosting the 1-Wire bus:

apt-get install owserver ow-shell
modprobe ds1wm
echo “ds1wm” >> /etc/modules

Edit /etc/owfs.conf such that the following parameters are entered. I’d advise commenting out the rest (at least, the rest of the server: directives)

! server: server = localhost:4304
server: usb = all
server: w1
server: port =

Restart the 1-Wire server

/etc/init.d/owserver restart

All being well, the following command should output a listing of all the devices on the bus.

owdir -s localhost:4304 /

On the remote server, simply use the following command to read the data.

owread -s kitchenpi.vpn.glasgownet.com:4304 /28.DDBF1D030000/temperature

MQTT GPIO Monitoring

My little Raspberry Pi seems to be growing arms and legs.

The other day I hooked up a simple PIR to it. I can’t remember where I got it, but it runs off 5v, consumes a low enough amount of milliAmps to be directly connected to the Raspberry Pi 5v supply, and outputs a TTL compatible 3.3v signal. Bonus!

I wanted to be able to signal to my MQTT broker when motion was detected, so it was time to start monitoring the GPIO pins. I wrote up this short app using the framework I’d made for MQTT-Republisher earlier. MQTT-GPIO-Trigger will accept a list of GPIO pins that you wish to watch, and will cycle through them all and fire off MQTT messages on any state change.

It uses the standard Linux sysfs interface to read the pin states, and if it detects the WiringPi library on the system it will use Gordons gpio command to export the pins to the system.

Making XBMC work on Mint 12, with HDMI Audio Passthrough and LIRC

I’ve got a Dell Optiplex 755 hooked up to my Yamaha amp and surround system, and it was about time XBMC was installed on it. It uses a low profile Nvidia GeForce 8400GS for VDPAU acceleration and HDMI audio. These are some rough notes I took whilst setting it up.

Follow this guide to install XBMC on Mint 12

adduser --system --home /var/lib/htpc/ htpc
vipw, change htpc shell to /bin/bash
apt-get install build-essential vim xbmc xbmc-standalone ubuntu-restricted-extras mint-meta-gnome-dvd mint-meta-codecs

Download and extract lirc-0.9.0.tar.bz2 from www.lirc.org
As I’m using a DangerousPrototypes USB IRToy, all I’m interested in is the IRMan driver

sudo apt-get install libirman-dev
./configure --prefix=/usr/ --with-driver=irman
make install

Copy the SysV startup script from a Debian package into /etc/init.d/, use update-rc.d lirc defaults to put it in all the right runlevel directories

Used my existing Hauppauge A415 remote control definition file, and put it in /etc/lirc/

Edited /etc/lirc/hardware.conf to include the following…

REMOTE_MODULES=”lirc_dev mceusb”

Edited /etc/lirc/lircd.conf to include the following at the end…

include “/etc/lirc/A415-HPG-KG.conf”

Ensure the lirc_dev module is loaded at boot, with echo lirc_dev >> /etc/modules

Start lirc with /etc/init.d/lirc start, and fire up irw. Press some keys on the remote to make sure it works.

Edit /etc/lightdm/lightdm.conf, ensure autologin-user=htpc, and user-session=XBMC

Reboot and bask in XBMC glory

I restored most of my XBMC settings from backups, but the audio settings were of a particular concern. This is what I use to get HDMI passthrough over a NVidia GeForce 8400GS card…

Audio Output : HDMI
Speaker Configuration : 5.1
Audio Output Device : Custom
Custom Audio Device : plughw:0,7
Passthrough output device : Custom
Custom Passthrough device : plughw:0,7

I knew the audio devices courtesy of the output from aplay -l, and some random testing with mplayer got me the results. To test it with mplayer, I just ran mplayer -fs -afm hwac3,hwdts -ao alsa:device=hw=0.7 against the name of a movie I knew had an AC3 soundtrack. Within a couple of seconds the amp was reporting a full AC3 bitstream, and surround sound was filling the living room.

Free cooker

cimg6333 A free cooker to the first taker. It’s all in nice working order, has been kept mostly clean by Charlotte, and has loyally prevented us from starving on many an occasion.

Collect from Yoker.