In a well-insulated home, there is always a risk of overheating in the summer as accumulated heat can not escape to the outside during the nights.
The first thing to do, off course, is to make sure as little heat as possible is able to accumulate.

Although well-insulated windows already have an IR reflective film applied to the glass, they are still a major contribution to unwanted heating in the summer.
The effectiveness of this film can be found in the technical data of the windows under "Solar Insolation".

Weather Array


If you measure outside temperatures, humidity, or other weather related things, you should store these measurements in a special array in MisterHouse.
This way, all already existing modules can make use of this information.
There are also some existing modules to get the Weather array populated.

This part tells how to manually populate the Weather array and how to use it.

Important: If you change the Weather array, you MUST call the "&weather_updated" function in order to process the data as some fields are automatically calculated.

Weather measurements

For home automation, acurate wheater data can be very important. Or at least that's what I think. ;-)

It doesn't only gives you nice statistics and graphs, which can help you plan further improvements, like Solar insolation for planning a photovoltaïc array.
It also gives you data which can be used for real-time decissions:

  • Open the sunscreens because there is too much wind
  • Give an alert when it's almost freezing
  • Give an alert because it starts to rain
  • etc...

We can even try to predict the near future by looking at historical data.

Measurements (Volatile)

Measurements (Volatile)

Sometimes you don't want to store your measurements in a database, but you just want to react on them, ex: Humidity in a bathroom in order to drive the ventilation system.
In this case the procedure described previously is a bit over the top.

For these kind of measurements, where the measured values shouldn't be preserved or volatile measurements, we can use OWFS and xpl-owfs.


OWFS makes the 1-wire sensors and its data available through a filesystem interface.



In order to use 1-wire sensors in the way described here, there are some requirements.


One of the main requirements is OWFS.



This is needed as glue between OWFS and Perl


This is needed to be able to read sensorvalues directly from the filesystem.
This is only needed to use xpl owfs.

xpl owfs

This is optional, but required for volatile measurements.

OWFS compile

Measurements (Stored)

Measurements (Stored)

These kind of measurements are always stored in an external database.
The main usage is to keep historic measurement data or to store the data temporary in order to do certain actions. (Conversions, Graphs, etc...)

An advantage is that the data is also available outside of Mister House and can be parsed or converted by external programs.
Even if Mister House is the only actor, there still is the advantage that the data will not be lost when something happens with the Mister House process (softwarecrash, etc...)

New Content!

New content about "the" output modules!


It is quite generic, and the hardware is still being designed, but it gives you a nice overview of what is being done.
The software on the Arduino controller, however, is already functional.

Output Module


The output modules are, just like the input modules, essentially a string of 8-bit modules.
These are attached to the Arduino controller and can be controlled through xPL commands from MisterHouse.

The current hardware is in design phase, and there are several versions:

  • A version with 2 8-bit modules integrated, providing 16 digital outputs.
  • A version with 2 8-bit modules integrated, providing 2 analoge 0-10V outputs to connect to existing dimmers.
  • Possibly version with a single 8-bit module integrated, providing a 230V phase dimmed output.

OWFS sensor tools

It took a while, but there is new content.

I wrote some scripts to manage my 1-wire sensors and to store all measurements into a mySQL database.
These do not directly integrate with MisterHouse, but measurements can be easily triggered from MisterHouse and reading something from a database is also not very hard to do. ;-)

More information and the code can be found here: http://www.splok.org/owfs_sensor_tools

Setup and Tools


1-Wire devices have a unique ID on the network, like "10.21501B000800".
As these IDs are not very easy to remember and might change over the years when a defective sensor is replaced, there needs to be an abstraction layer.

The most naïve aproach is to use a uniqe name for each sensor, for example:
A sensor with name "Outside Temperature" points to "10.21501B000800".

Syndicate content