All posts by chris

Fixed voip call dropouts

All of our outgoing phone calls go via a local asterisk server connected to Internode’s voip service NodePhone. One problem we’ve had is that muting our phone line for long periods of time, which I like to do during conference calls, would lead to the call being disconnected. I should complain more often on twitter as someone suggested I look into RTP keep alive.

By default asterisk does not terminate calls if there is no RTP activity, but neither does it send keep alive packets to the voip service provider if no packets are received when someone mutes their line. Adding the following to the general section of sip.conf fixed the call dropout problem:

[general]
rtpkeepalive=30

GNOME MQTT Panel Applet 0.1

We’ve been tracking our electricity usage for a few weeks now and have a web page of graphs which make it easier to work out when we’re using a lot of electricity.

Last 24 hours power usage
Last 24 hours power usage

I have a perl script running on one machine which reads the CurrentCost data from a serial port and publishes the temperature and instantaneous power consumption into an MQTT microbroker. On the webserver machine another perl script is subscribed to the temperature and power consumption topics and uses rrdtool to record the data and create not so pretty graphs.

I also wanted to be able to keep an eye on the current power usage so I put together a little gnome applet that connects to an MQTT server and subscribes to a single topic. You can run multiple applets connecting to different brokers or subscribing to different topics. Conceptually data moves from the current cost around the system like this:

mqtt-current-cost-diagram-export

One of the big advantages of using the broker is it neatly abstracts the data producers like the CurrentCost or a temperature sensor connected via an arduino from the consumers that process, record and render the data. Its easy to slip in additional sensors or replace existing ones with something which is quite different without having to make any changes on the processing and user interface side. When our new house gets built and we have a C-Bus system controlling the electrical system, state information from it will be added to the broker so it can be monitored easily.

I’ve never written a gnome applet before nor even done much gtk programming before so its still a bit rough around the edges. But it currently looks like this on a panel:

Temperature and Power Usage
Temperature and Power Usage
Preferences dialog
Preferences dialog

Tooltip with status information
Tooltip with status information

I still need to work on having the preferences saved between sessions.

Monitoring power usage with CurrentCost

Last year i was very lucky to be given a CurrentCost power meter. Unfortunately the electrical board in the townhouse we were living in didn’t really have room to fit the clamp meter and as it had 3 phase power and we only had one clamp we couldn’t really use it properly. Yesterday I finally got around to installing it in the house we’re currently living in.

CurrentCost Meter (photo by Roo Reynolds)
CurrentCost Meter (photo by Roo Reynolds)

There is a wireless connection between the meter and the clamp which goes around the active cable coming out of the normal electricity meter.

Measuring Clamp (photo by PixelFrenzy)
Measuring Clamp (photo by PixelFrenzy)

Unlike most power meters available in Australia it is possible to connect a serial cable to display to get a live reading of the power used downloaded to a computer. Using a microbroker, rrdtool and a bit of perl as glue we know have 24/7 logging of electricity usage at about 30 second intervals from which we can create pretty graphs.

Breakfast
Breakfast power usage

Unlike our last house we have electric cooktops in the current place and you can definitely tell when I started cooking breakfast for Kelly on Sunday in the graph above. It probably cost us about 20 cents in electricity.

Our idle power usage is around 550W which is pretty high and we’ll hopefully be reducing it a bit once we start identifying exactly what is using the power. Looking at a snapshot of power usage overnight its pretty clear when the fridge/freezer thermostat kicks in though.

Fridge Power Usage
Fridge Power Usage

Leopard Ambush

Linden likes to hide in bags and wait for people and cats to walk by before jumping out to surprise them. Sometimes she doesn’t choose her hiding spots so well though.

Leopard Ambush

Pipe walks past and becomes prey. I don’t think he’d survive too well in the wild as he doesn’t play dead very convincingly.

dsc_0131

dsc_0129

After a bit of wrestling they’re friends again.

Friends

And then its back into the hidey spot for Linden.

hidey2

Birthday Cake!

Kelly has been reading cake making books and collecting cake making equipment in preparation for Alyssa’s first birthday. For practice she’s made a cake for my birthday tommorow. The detail is amazing given its her first go at doing fancy decoration and icing. Everything is edible except for the superman candle.

Chris Birthday Cake
Chris Birthday Cake