Open Source Home Automation (Raspberry)


  • Hero Member

    Supported connection method in boldface (i.e. SERIAL, ETHERNET, MQTT, GPIO). Programming language in [brackets].

    ..........................................................................................................................

    Free / Open source:

    1. Ago Control [C++/PYTHON] (SERIAL)
    2. Calaos [C++] (SERIAL/ETHERNET)
    3. DomotiGa [GAMBAS] (SERIAL/ETHERNET/MQTT)
    4. Domoticz [C++] (SERIAL/ETHERNET/MQTT) #RECOMMENDED#
    5. EasyIoT [C# = REQUIRES MONO] (GPIO)
    6. FHEM [PERL] (SERIAL/ETHERNET)
    7. Freedomotic [JAVA] (SERIAL/MQTT)
    8. Heimcontrol.js [NODE.JS]
    9. Home Assistant [PYTHON] (SERIAL/ETHERNET)
    10. Home Genie [C# = REQUIRES MONO] (MQTT)
    11. HouseMon [GO] (MQTT)
    12. ioBroker [NODE.JS] (MQTT)
    13. Jeedom [NODE.JS] (SERIAL/ETHERNET)
    14. MajorDoMo [PHP] (MQTT)
    15. MisterHouse [PERL] (SERIAL/ETHERNET)
    16. MyController.org [JAVA] (SERIAL/ETHERNET/MQTT)
    17. OpenRemote [JAVA]
    18. PiDome [JAVA] (SERIAL/MQTT/GPIO) #RECOMMENDED#
    19. Pimatic [NODE.JS] (SERIAL/GPIO) [link]
    20. Pytomation [PYTHON]
    21. The Thing System [NODE.JS] (MQTT)
    22. homA [NODE.JS]
    23. home.pi [NODE.JS] (MQTT)
    24. openHAB [JAVA] (MQTT)
    25. openLuup [LUA] (ETHERNET)

    ..........................................................................................................................

    Commercial Software

    1. Homeseer [?] (SERIAL)

    ..........................................................................................................................

    Currently not on the Raspberry. Might work with Windows10 and RPi2 in the future?

    1. HoMiDoM [?] (SERIAL)
    2. zVirtualScenes
    3. Opensourceautomation

    ..........................................................................................................................

    Misc

    1. pymysensors - Python code for interacting with the network
    2. pymys - Another python solution

    ..........................................................................................................................

    Personally, I'm still looking around for the perfect home automation software. And I have a fairly steep list of requirements, among them being a meaty and stylish Android app and notifications using Pushover (and Pushbullet for images?). It also has to be real AUTOMATION in the sense that you can build long and complicated scenes that can respond to changing condition in and around the house, preferably in some nice graphical interface where you just drag and drop the building blocks (Blockly). Not to mention taking advantage of the state of the art charting libraries that are available these days. I'd also like for it to interact with the Raspberry Pi camera module in an intelligent way, so it probably needs to be able to be able to allow extensive scripting, like being able to run raspivid, raspimjpeg and/or raspistill when motion sensors trigger or whatnot.

    Finding the right controller software can be confusing and you seldom see the whole picture right away. Some automation software solutions are easy to install and boot up quickly but may slow down under the load of many sensors and rules. Some others may be a real hassle to install in terms of dependencies and slow to boot but may hold up better in the face of more complex home automation. Some are user-friendly but offer little control while others offer extensive control over interface and function but might drive you mad while you figure them out. It is safe to say that there is no obvious choice as of now and that the market is still far from mature. One should also note that the Raspberry Pi 1 is NOT a very fast platform and will not be ideal for many of the JAVA implementations above, unless the developers have had such platforms in mind when modelling their software (PiDome being the notable exception). Personally I am not very keen on software that will take minutes to boot up and effectively bog down the Pi in the meantime.

    As for a faster hardware platform to replace the aging RPi I'm still looking around. The Pi has a support community that none of these other, newer platforms can claim after all. It would have to be a significantly faster system at basically the same price point for another ARM platform to make any sense. It's lucky that the Raspberry Pi 2 was announced at last then. Its IoT support for Windows 10 should provide more possibilities if it runs OK and most of the software above should continue to run on regular Raspbian or whatnot with little or no changes. Whether we ever get any multi-threaded support though for a real performance boost is another issue. Still waiting for the final verdict on the ODROID platforms, particularly the C1, but in my mind, the price including the eMMC module quickly approaches that of some cheaper x86 NUCs or one of those other Atom-powered boxes that keep turning up and are relatively quickly bridging the price gap.


  • Code Contributor

    which of these is support for mysensors?


  • Hero Member

    @Damme Only "Ago Control" afaik. Though there may be some bugs, if their forum is to be believed. Could just be some unlucky user. Might have to pull the latest code from their developmental branch. The MySensor gateway is supposed to be connected via USB to the RPi just like on the Vera.


  • Hero Member

    Openhab has mysensors bindings, I guess @hek will soon integrate it in his github repository, see @wannabee posts

    For Domoticz, well... work ongoing, but there are gaps... and mappings to do because the datamodel is tricky (based on historical logic that now has to handle On/Off or Open/Closed or ....). I have also the same issues/limitations that @wannabee on device mapping although I made the whole mapping work for Imperihome.

    I home I'll do at the same time an integration to Imperihome (currently I do ImperiHome to Domoticz, and mysensors to domoticz), doing it directly will permit me to have features in MySensors that ImperiHome support too (but not domoticz).

    Emmanuel



  • @epierre Where can I find more info on mySensor bindings for openhab? Cant find anything on openhab.



  • We could add this for the list http://www.opensourceautomation.com/


  • Hero Member

    @toni see @wanabee post above


  • Hero Member

    @jendrush Hmm. It IS open source, but does it run on the RPi? Seems to be Windows only?

    Can OSA run on other operating system besides Windows such as Linux and OS X?
    OSA is based upon Microsoft .NET which only runs on Windows. There is an open source clone of .NET called Mono which could allow OSA to run on other operating system. Our goal is to have OSA run on Linux but we are not there yet.

    • added: DomotiGa and Freedomotic.


  • @bjornhallberg said:

    Hmm. It IS open source, but does it run on the RPi? Seems to be Windows only?

    You are right. It looks like it is only for Windows now.


  • Hero Member

    Perhaps this discussion should be taken to a more rudimentary level, trying to figure out which automation software we actually want to bet on. And what software will actually run WELL on the resource limited RPi. It would take some convincing before I ever installed java-based solutions for instance, like openHab.

    Has anyone actually tried Ago Control? Is it any good? Does it work well with the Pi? The installation is 130MB no less. A ton of dependencies. Makes you wonder about RAM and CPU usage.

    It feels like this entire market is a bit premature at the moment.


  • Contest Winner

    @bjornhallberg
    I am running Domoticz on my rPi and I think it runs well. I have only added my 1-wire temp and light sensors currently (light sensors not working very well, but that is not Domotcz fault). I have also plugged a Tellstick to the rPi and managed to get it working as well, so I am going to stick with Domoticz for now on the rPi.
    I have a Vera as well, which I plan to use to make sure my sensor nodes work as intended (since Vera is "officially" supported). But for "the future", the rPi is to me more interesting, and can be extended with zWave support as well. So I would love to see MySensors support on Domoticz eventually.

    I have a pathological hatred for anything Java related, and especially on resource-limited devices so any HA solution based on that is ruled out by me. I tried openHab but could not get it to work properly, and it was s.l.o.w.


  • Mod

    @Anticimex I will prefer to not limit smart home by RPI
    RPI is good to be a bridge between mysensors network and smart home controller
    and also a bridge from mysensors devices to mysensors cloud

    but smart home controller is something else
    I have vera running for 4 years
    vera3 is much more powerful comparing to RPI but still there is lack of performance and resources

    may be RPI can handle 5-10 devices but if you intend to automate more the RPI will became a bottleneck

    I will be looking for nettop PC based computers running UNIX or windows


  • Contest Winner

    @axillent A PC based solution is probably the best from a performance point of view.
    However, I currently has absolutely no sensors interfaced to my VeraLite and 7 temp and 7 light sensors connected by 1-Wire (and the tellstick) on my rPi, and my rPi totally wips the ass of Vera when it comes to performance and responsiveness. It all depends on the back-end and how fancy the frontend needs to be.
    But when in doubt, use PC. That is by far the most flexible option.

    But to not hijack the topic too much, the question here is limited to SW that works well on rPi :)


  • Hero Member

    @axillent Sure, a more powerful solution wouldn't go amiss, but it comes down to cost and power consumption. The RPi SHOULD be enough to power home automation if it was was done right. A lot of the resource consumption for Domoticz (which is still a lot faster than openhab but is nevertheless accused of being slow sometimes) seems to be Apache handling the web interface. Lighttpd might be something I should look into if at all possible. Personally I'd like a really light-weight front-end and then some Android app to control and check the automation server.

    But I'm always open to suggestions. The RPi is only great because of its software support / developers, its peripherals and its gpu. There should be a lot faster chips these days, ARM or preferably x86, that could manage the same power consumption as the Pi but with a lot better performance. If you're only looking for CPU cycles. Personally I was hell bent on cramming as much stuff as possible into the Pi, including the camera module. That is basically £6 of electricity, running it 24/7 for a year. Yes, I'm the ultimate cheapskate ;-)


  • Contest Winner

    @bjornhallberg I installed Domoticz on my Pi using an image, and it seem to run nginx, and not Apache. So far, I have not experienced any particular lag. Fingers crossed...



  • I think the intent of rPI as a mysensor controller is an easy open customizable/semi-universal database service delivery to cloud, and in that department there is no reason to consider it as a bottleneck. And as a mysensor network controller should not be a problem also, i mean, controlling nodes does not require an horsepower machine.



  • @Anticimex said:

    I have a pathological hatred for anything Java related, and especially on resource-limited devices so any HA solution based on that is ruled out by me. I tried openHab but could not get it to work properly, and it was s.l.o.w.

    I can confirm that. I've tried OpenHub Demo, and it was very slow on RPi. Idea for OpenHUB is nice, but Java kills this idea on slower machines.


  • Mod

    Anyone familiar with MQTT (Mqtt.org)? This is not a home automation system but functions as middleware that stores data. Clients can subscribe to topics or publish topics.
    Topics are ordered in a directory-like structure, e.g /mysensors/node123/sensor6/temperature.

    I built a simple software gateway that routes sensor readings from a mysensors network to an MQTT broker, and routes actuator values from a MQTT broker back to the mysensors nodes.

    Powerful rules can be created easily, like subscribe to a light sensor and a motion sensor and publish a light-switch-on when it is dark and motion is detected.

    It might sound complex, but in reality is quite simple, super lightweight (runs easy peasy on RPI, see mosquito.org) and very scalable (brokers can be publish/subscribe to other brokers).

    Only thing I still need is some UI to manually control sensors/actuators and edit rules ;-)



  • I have been using agocontrol on my RPI with pretty good results. The few issues I posted about in the agocontrol form are likely user error on my part. I think ago is written in C and runs well on my PI. I am currently running 4 nodes with about 22 child devices. They have implemented just about all the device types which is a plus. I am running temperature, humidity and distance sensors along with relays and reed switches. Communication and stability have been solid so far.

    I recommend agocontrol to anyone wanting to get some sensor nodes up and talking to a control that don't have a vera. They have x86 packages also so you are not limited to only running on a PI.


  • Hero Member

    @mikeones I managed to get agocontrol installed and running after much grief. Can't really make heads or tails of the interface yet, and I get mysensors errors ("mysensorscontroller is not responding. Unable to execute action.") when going to the mysensors configuration. I did apt-get the agocontrol-mysensor package and it seems to start perfectly. Perhaps it has to do with the beta gateway code. Do you need to configure the serial port in the settings? Because I can't seem to save any changes made? /dev/ttyACM0 doesn't normally work when opening a serial monitor for me. I need to use /dev/ttyUSB0.

    Overall I'm not sure agocontrol looks like my cup of tea. Seems the scope is just too ambitious and not as streamlined and user friendly as it could be. It is however pretty snappy (at least with no sensors configured). I'd still put my money on Domoticz.

    • edited the list above to denote applications that have difficult requirements or requirements that may impede performance (Java ...).


Looks like your connection to MySensors Forum was lost, please wait while we try to reconnect.