30 lines
9.9 KiB
HTML
30 lines
9.9 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>
|
|
</title>
|
|
<style type="text/css">
|
|
.cs95E872D0{text-align:left;text-indent:0pt;margin:0pt 0pt 0pt 0pt}
|
|
.cs84FBA952{color:#000000;background-color:transparent;font-family:Calibri;font-size:17pt;font-weight:normal;font-style:normal;}
|
|
.csB33285EC{color:#808080;background-color:transparent;font-family:Calibri;font-size:10pt;font-weight:normal;font-style:normal;}
|
|
.cs14438CD8{text-align:left;text-indent:0pt;margin:0pt 0pt 0pt 0pt}
|
|
.csA27DA275{color:#000000;background-color:transparent;font-family:Calibri;font-size:16pt;font-weight:bold;font-style:normal;}
|
|
.cs1B16EEB5{color:#000000;background-color:transparent;font-family:Calibri;font-size:11pt;font-weight:normal;font-style:normal;}
|
|
.cs9C490B4D{text-align:left;margin:0pt 0pt 0pt 18pt;list-style-type:disc;color:#000000;background-color:transparent;font-family:Arial;font-size:11pt;font-weight:normal;font-style:normal}
|
|
.csD5D7D290{color:#000000;background-color:transparent;font-family:Arial;font-size:11pt;font-weight:normal;font-style:normal;}
|
|
.csDBD8AC8B{color:#000000;background-color:transparent;font-family:Arial;font-size:11pt;font-weight:normal;font-style:normal;text-decoration: none;}
|
|
.cs777ED152{color:#0000FF;background-color:transparent;font-family:Calibri;font-size:11pt;font-weight:normal;font-style:normal;text-decoration: underline;}
|
|
.csF5FDF0BE{color:#24292E;background-color:transparent;font-family:Calibri;font-size:11pt;font-weight:normal;font-style:normal;}
|
|
.csB4F56505{color:#000000;background-color:transparent;font-family:Calibri;font-size:11pt;font-weight:normal;font-style:normal;text-decoration: none;}
|
|
.csCF6BBF71{color:#000000;background-color:transparent;font-family:Times New Roman;font-size:12pt;font-weight:normal;font-style:normal;}
|
|
.cs7FC7682D{color:#969696;background-color:transparent;font-family:Arial;font-size:9pt;font-weight:normal;font-style:normal;}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<p class="cs95E872D0"><span class="cs84FBA952">Home Automation</span></p><p class="cs95E872D0"><span class="csB33285EC">24 August, 2018</span></p><p class="cs95E872D0"><span class="csB33285EC">9:11</span></p><p class="cs14438CD8"><span class="csA27DA275">Introduction</span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5">Having a DIY home automation system for a couple of years and having seen Home Wizard by a neighbor, we decided to try something new.</span></p><p class="cs14438CD8"><span class="cs1B16EEB5">One of the most important things was that the software should be open source, easy and flexible.</span></p><p class="cs14438CD8"><span class="cs1B16EEB5">Further more it should handle many of the features we already build in our own system.</span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5">For the home automation software we found Domoticz, Open Hab and Home Assistant. All of them are open source and are have a lot of features.</span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5">Having a lot of hardware device, running at 433 MHz, 866 MHz and WiFi, we also needed a standard RF-interface (and preferable also an IR-interface), because none of the Home Automation systems will handle our current own build RF-interface. To make a fluently transition from old hardware/software the new RF-interface should preferable also support our old interface. Therefore open source was an absolute demand. And that lead to RFLink.</span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="csA27DA275">Domoticz / OpenHAB / Home Assistant</span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5">The first experiment was to interface WunderGround to Domoticz as it doesn't require any hardware. This worked very well. Also MQTT en WiFi devices could be connected to Domoticz. After realizing an RFLink device, it was also possible to connect the RF-devices. Being technician and regularly changing devices, this is not well supported in Domoticz, mainly because Domoticz decides which unique idx each device gets. After creating the idx, you've to reprogram your device to get connected. </span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5">So after a week we changed to OpenHab, which we couldn't get running under windows.</span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5">So we switched to Home Assistant, which was a relief. For non technician Domoticz might be a better starting point, but for technician Home Assistant is really the best. After playing for a week with Home Assistant we found the following major advantages</span></p><ul style="margin-top:0;margin-bottom:0;">
|
|
<li class="cs9C490B4D"><span class="cs1B16EEB5">Starts very fast</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Has a good (and free) mobile interface </span><span class="csD5D7D290"><a class="csDBD8AC8B" href="https://www.home-assistant.io/docs/frontend/mobile/"><span class="cs777ED152">https://www.home-assistant.io/docs/frontend/mobile/</span></a></span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">All settings and definitions are 1 one single file</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Completely written in Python</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Large community that responds very fast</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Interfaced fluently with RFLink, MQTT-broker, HTTP</span></li></ul>
|
|
<p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="csA27DA275">RFLink</span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="cs1B16EEB5">We've experience with other devices than Arduino, i.e. Raspberry, ESP8266 and ESP are our standard devices for the moment. </span></p><p class="cs14438CD8"><span class="cs1B16EEB5">As RFLink was open source and an ESP is much more powerful than an Arduino it should be easy to get it RFLink running on an ESP.</span></p><p class="cs14438CD8"><span class="csF5FDF0BE">Problem is that the latest version of RFLink is R48. We couldn't only find sources of version R29 and R35. Both sources didn't work correctly, R29 was the best. We tried to contact "the stuntteam" which owns the orginal sources but didn't get any response. At any moment we're willing to cooperate and merge the ideas of Stuntteam and ours.</span></p><p class="cs14438CD8"><span class="csF5FDF0BE">After changing about 10 lines of code the program ran on ESP32. Especially the detection of RF sequences wasn't vey stable. After making some improvements, we did form an opinion about the state of the software, which made us decide to rewrite the whole program. </span></p><p class="cs14438CD8"><span class="csF5FDF0BE">Rebuilding the program gave us very stable RF-sequence detections and everything ran well at the ESP32 and also on the ESP8266.</span></p><p class="cs14438CD8"><span class="csF5FDF0BE">The new software, called RFLink-ESP, can be found on GitHub: </span><span class="cs1B16EEB5"><a class="csB4F56505" href="https://github.com/Stef-aap/Domoticz-RFLink-ESP"><span class="cs777ED152">https://github.com/Stef-aap/Domoticz-RFLink-ESP</span></a></span></p><p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs14438CD8"><span class="csF5FDF0BE">Some of the advantages of the new software (and we've some new ideas in mind)</span></p><ul style="margin-top:0;margin-bottom:0;">
|
|
<li class="cs9C490B4D"><span class="cs1B16EEB5">Only a few protocols are translated and tested. But as the protocols are made much easier and there are extra tools to analyze the RF sequences, it's not difficult to add new protocols.</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Protocols are written as classes and all derived from a common class</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Protocols are more generic, so you need less protocols</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Protocols can easily be selected and the order can be determined</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Debug mode replaced with a more flexible Learning_Mode</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Removed a lot of redundancies</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Device must be registered before they will be recognized ( (almost) no more false positives)</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Dynamically determine long/short puls, by measuring Min,Max,Mean</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Runs on ESP32 and even on a ESP8266. Making it work on an Arduino should be done easily (and we're willing to help) </span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Fully open source</span></li><li class="cs9C490B4D"><span class="cs1B16EEB5">Codesize is strongly reduced</span></li></ul>
|
|
<p class="cs14438CD8"><span class="cs1B16EEB5"> </span></p><p class="cs95E872D0"><span class="csCF6BBF71"> </span></p><p class="cs95E872D0"><span class="cs7FC7682D">Created with Microsoft Office OneNote 2007<br/>One place for all your notes and information</span></p></body>
|
|
</html>
|