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

2013 Update
We got the roof completely redone, it was designed the maximise northern exposure.
2kW system
aerial view
2kW aerial

We then added an extra 4.42kW system: 17xYingli Panda YL260C-30b organise in two strings: 8 and 9 panels connected to an Aurora PVI-4.2 inverter
6kW system
aurora 4.2-OUTD inverter
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.
inverter photo

The system runs on almost any machines able to run python and PHP (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 limited 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.
Everything 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.

2013 Update
The system now runs on a Raspberry Pi ; a very low power ARM based platform

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

If you are interested, drop me an email.
sources available here. I aim to make it a bit easier to set up in the very short future, including automatic database configuration

Current Conditions

  • Solar Power 422W
  • Solar Today 27.64kWh
  • Solar 1 Power 124W
  • Solar 1 Today 8.89kWh
  • Solar 2 Power 297W
  • Solar 2 Today 18.75kWh
  • Total 986 Watt
    Pool 5W, Main 981W
  • Last hour usage 0.88kWh
  • Room Temp. 19.3
  • Water Level 0%
    (0mm, 0L)
  • Last record 2019-12-13 18:36

Solar Information

  • Dawn 04:41
  • Sunrise 05:51
  • Solar noon 13:13
  • Sunset 20:36
  • Dusk 21:46

Inverter 1 Last Info

  • Voltage1 In 370.68
  • Current1 In 0.4
  • Power1 In 146.75
  • Voltage2 In 0.08
  • Current2 In 1.91
  • Power2 In 0.15
  • Voltage Out 248.84
  • Current Out 0.64
  • Power Out 125.25
  • Frequency Out 49.95
  • Conversion Efficiency 85.26
  • Inverter Temperature 27.6
  • Booster Temperature 27.44

Inverter 2 Last Info

  • Voltage1 In 265.71
  • Current1 In 0.67
  • Power1 In 178.74
  • Voltage2 In 218.6
  • Current2 In 0.7
  • Power2 In 153.21
  • Voltage Out 248.46
  • Current Out 1.22
  • Power Out 301.05
  • Frequency Out 49.95
  • Conversion Efficiency 90.69
  • Inverter Temperature 31.41
  • Booster Temperature 30.7