Arduino based energy and climate monitor

Last year I started with an Arduino project to monitor the energy in our house. I made considerable progress but also encountered some problems, the main one being that the CRT5000 modules are not sufficiently sensitive to pick up the reflectance of the rotating disk of our KWh meter. ALthough it is not yet finished, let me report on the present status.

All components have been wired up and soldered on a perfboard.

For my work earlier this year I completed the real-time interface between an openEEG-compatible fake-EEG amplifier and Arduino for the BrainGain science fair. In that project I combined the Arduino with RFM12b modules and ethernet. Since it would be fun to also do that on my energy monitor, I upgraded my toy project to an energy and climate monitor. Furthermore, I want to extend it to monitor not only electricity and gas, but also water. And finally I realized that. with all the information to be displayed, I need a button to scroll through the different screens.

The core components are

  • Arduino Nano
  • RTC
  • CRT5000 Infrared reflectance module 2x
  • LC Studio SD card module
  • 1602 LCD
  • CNY70 Infrared reflectance sensor (3x)
  • RFM12b on a RFM12b Board
  • push button



Not shown here are the modules I made for the climate measurement and the three CNY70 sensors.

The problem I am presently running into is that the sketch is too large to fit in Arduino memory. Especially the SD card support seems to take a lot of space. I have tried compressing it down, removing all unused and debugging code from the sketch, but it still fails to run robustly. With all parts of the code enabled, the Arduino randomly resets. As a solution I am now considering adding a second Arduino to interface with the SD module.