Saturday, January 23, 2010

Energy tracking...

I got a solar system installed early December 2009 ; it's a 2kW system made of 12 CEEG 170W panels with a Power-One Aurora Inverter PVI-2000

I had to track the electricity production ; but also wanted to track my power usage.

I couldn't find any proper solutions letting me record everything at once:
  • How much is used in the house
  • How much is produced by the solar panels
  • How much is imported from the electric network grid
  • How much is exported back to the grid
So I designed my own...

I bought a CurrentCost CC128 which can be interfaced to a PC through a serial interface.
The Aurora inverter has a RS485 interface; a cheap RS232 converter on eBay for $6.50 did the trick.

The system runs on almost any machines (tested on FreeBSD, Linux, MacOS).

It is made of 3 parts.
-Daemons polling the various sensors ; they poll every 6s ; compute an average every minute and feed the data in a RRDtool database (round robin database).
-A Daemon computing the import and export value in 30 minutes interval (it wakes up every 30 minutes, calculate the import/export over the past 30 minutes and feed another database
-A web page

The daemons are written in python ; as long as you have python running on your machine with the pyserial module you'll be fine.

For the HTML interface ; it's written in PHP on the server side; and javascript/ajax on the client side (though it will work even with javascript disabled, albeit with limit interactivity).

It's probably easier to get it working with the Apache web server and the mod_php5 module...

The PC needs to be on 24/7 as neither the CC128 nor the Aurora inverter keeps any data in memory...

The system is done in such a way that you can easily use a different power monitor or a different inverter.
Everythin can be configured through a simple configuration file: colours, shapes, labels, database used etc...
You don't even need a solar system ; I set the same system at my office to monitor our power usage.

The response to this tool has been very overwhelming.
I have been approach by various parties to integrate with some professional solutions.

I contacted the Google PowerMeter project in order to feed the data through their system, but at this stage they weren't interested, prefering to work utility providers. Their loss !

Some real-time graph samples are shown below.

If you are interested, drop me an email.

Easy FreeBSD Upgrade ...

Over the past few weeks, I updated all my machines from FreeBSD 6.4 to the latest FreeBSD 8.

Upgrading FreeBSD has always been a bit of a pain (even makes me miss linux here and all its binary distributions) as I do not have physical access to most machine and always do so remotely.

I found this great site:

I followed all the steps gron from FreeBSD 6 to FreeBSD 7 then FreeBSD 8.

Painless upgrades; all remotely !

Update for Kindle DX with Global Wireless (DX International)

Amazon just released a new Kindle DX which can now works outside the US using the GSM network.

It has a new device id and 3rd party packages written for the previous Kindle DX won't work.

It's really just a matter of repackaging them and the OS is virtually the same.

So I updated the packager to support this new device ; and repackaged the usbnetwork and screen saver hack package..

Packager (version 0.8):

USB network (version 0.11)

Screen saver (version 0.1)