Home Automation

FHEM – Perl-based home automation server

FHEM is a Perl-based home automation server designed to control connected devices and monitor household conditions. It supports lighting, shutters, heating systems, switches, sensors and other equipment through a modular architecture.

The software is particularly flexible in the way it responds to device events. Users can define actions based on sensor readings, schedules and changes in device state, allowing automations to coordinate equipment using different communication technologies.

FHEM provides a built-in web interface and can also be operated through command-line and network interfaces. Its configuration and scripting facilities make it especially suitable for technically experienced users who want detailed control over home automation behaviour.

This is free and open source software.

Key Features

  • Control compatible lighting systems, shutters, heating equipment and household appliances.
  • Modular architecture with hundreds of extensions for different devices and protocols.
  • Support for technologies including HomeMatic, KNX, Z-Wave, EnOcean, X10, Zigbee integrations and MQTT.
  • FHEMWEB interface for configuring devices and controlling a smart home through a browser.
  • Automatic creation of device definitions for supported hardware.
  • Event-driven automation using notify, DOIF and other rule modules.
  • Scheduled commands using timers, calendar conditions and time expressions.
  • Perl scripting for implementing custom automation behaviour.
  • Event Monitor for inspecting device activity and identifying automation triggers.
  • Device state recording and historical logging to files or supported databases.
  • SVG graphs for visualising temperature, humidity, electricity consumption and other readings.
  • Support for alternative interfaces including floor plans, tablet dashboards and mobile frontends.
  • Integration with compatible entertainment equipment, weather services and online calendars.
  • Interfaces for exchanging information using HTTP, TCP/IP, JSON and XML.
  • Notification and external command execution in response to device events.

Website: fhem.de
Support:
Developer: Rudolf Koenig and FHEM contributors
License: GNU General Public License v2.0

FHEM is written in Perl. Learn Perl with our recommended free books and free tutorials.


Related Software

Home Automation
Home AssistantHome automation platform running on Python 3
openHABAward winning solution for smart home and the Internet of Things
HomebridgeNodeJS server for home network that emulates the iOS HomeKit API
DomoticzAn excellent home automation system
HomeGenieHome automation server for smart connected devices and applications
FHEMPerl server for house automation
Gladys AssistantPrivacy-first home assistant
ioBrokerIntegration platform for the Internet of Things
CalaosHome automation solution and a complete distro
ButlerCompanion for Home Assistant
PytomationAutomation system written in Python
FreedomoticSecure Internet of Things (IoT) development framework

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted