What is FHEM

I had been thinking about implementing a home automation system for a long time. One with a low budget, based on an open source home automation (HA) solution that runs on a Raspberry PI and still usable in real life. I looked at all of the open source HA project that I could goggle up, but most them has a limited HA protocol/hardware support, wouldn’t run an Raspberry Pi or not based on a script language. Using a script language may sound a disadvantage, but in case of a HA system the performance loss is minimal, the flexibility and easy customization is a big plus.

Finally I found FHEM. It is actively maintained by a team of enthusiastic German (speaking) team.  They have a forum in German and a wiki also in German… so that’s why you probably never heard of it. Thankfully the built-in command reference and the GUI is in English. I think the lack of English material restricts the popularity of FHEM which is a shame. To fill the void I decided to create a series of posts about my experiences about installing and configuring it on a Raspberry PI.The system itself is very mature and supports most of the HA protocol/hardware available in Europe, even ones with proprietary protocols. These guys reverse engineered them on a bit level… They even have their own hardware dongle with and open source firmware that taps into some of these closed HA systems. As the other HA systems it can automate some common tasks in the household like switching lamps, shutters, heating and to log measurements like temperature, humidity, power consumption, etc.

As it turned out it perfectly fits my other requirements: very lightweight and fully written in Perl so it runs on any platform including the Raspberry Pi and other low power devices. And it takes advantage of the fact that it is written in a script language: easy to extend, configuration is very flexible.

Next post will be about supported HA protocols and hardware. In the meantime you can find the homepage of FHEM here: http://fhem.de