Site updated at 2017-09-26 07:14:23 UTC

This commit is contained in:
Travis CI 2017-09-26 07:14:23 +00:00
parent 80847eb95a
commit b723b0750d
415 changed files with 2329 additions and 1581 deletions

View file

@ -75,8 +75,8 @@
</header>
<hr class="divider">
<p>The <code class="highlighter-rouge">rflink</code> component support devices that use <a href="http://www.nemcon.nl/blog2/">RFLink gateway firmware</a>, for example the <a href="https://www.nodo-shop.nl/nl/21-rflink-gateway">Nodo RFLink Gateway</a>. RFLink gateway is an Arduino Mega firmware that allows two-way communication with a multitude of RF wireless devices using cheap hardware (Arduino + transceiver).</p>
<p>The 433 Mhz spectrum is used by many manufacturers mostly using their own protocol/standard and includes devices like: light switches, blinds, weather stations, alarms and various other sensors.</p>
<p>RFLink Gateway supports a number of RF frequencies, using a wide range of low-cost hardware. Their website provides details for various RF transmitter, receiver and transceiver modules for 433Mhz, 868Mhz and 2.4 Ghz <a href="http://www.nemcon.nl/blog2/wiring">here.</a></p>
<p>The 433 MHz spectrum is used by many manufacturers mostly using their own protocol/standard and includes devices like: light switches, blinds, weather stations, alarms and various other sensors.</p>
<p>RFLink Gateway supports a number of RF frequencies, using a wide range of low-cost hardware. Their website provides details for various RF transmitter, receiver and transceiver modules for 433MHz, 868MHz and 2.4 GHz <a href="http://www.nemcon.nl/blog2/wiring">here.</a></p>
<p class="note">
Note: Versions later than R44 adds support for Ikea Ansluta, Philips Living Colors Gen1, MySensors devices.
</p>
@ -95,7 +95,7 @@
<ul>
<li><strong>port</strong> (<em>Required</em>): The path to RFLink USB/serial device or TCP port in TCP mode.</li>
<li><strong>host</strong> (<em>Optional</em>): Switches to TCP mode, connects to host instead of to USB/serial.</li>
<li><strong>wait_for_ack</strong> (<em>Optional</em>): Wait for RFLink to ackowledge commands sent before sending new command (slower but more reliable). Defaults to <code class="highlighter-rouge">True</code></li>
<li><strong>wait_for_ack</strong> (<em>Optional</em>): Wait for RFLink to acknowledge commands sent before sending new command (slower but more reliable). Defaults to <code class="highlighter-rouge">True</code></li>
<li><strong>ignore_devices</strong> (<em>Optional</em>): List of devices ids to ignore. Supports wildcards (*) at the end.</li>
<li><strong>reconnect_interval</strong> (<em>Optional</em>): Time in seconds between reconnect attempts.</li>
</ul>
@ -130,7 +130,7 @@ When re-flashing the Arduino MEGA, disconnect the ESP8266 to avoid programming d
</code></pre>
</div>
<h3><a class="title-link" name="ignoring-devices" href="#ignoring-devices"></a> Ignoring devices</h3>
<p>RFLink platform can be configured to completely ignore a device on a platform level. This is useful when you have neighbors which also use 433 Mhz technology.</p>
<p>RFLink platform can be configured to completely ignore a device on a platform level. This is useful when you have neighbors which also use 433 MHz technology.</p>
<p>For example:</p>
<div class="language-yaml highlighter-rouge"><pre class="highlight"><code><span class="c1"># Example configuration.yaml entry</span>
<span class="s">rflink</span><span class="pi">:</span>
@ -147,13 +147,13 @@ When re-flashing the Arduino MEGA, disconnect the ESP8266 to avoid programming d
<h3><a class="title-link" name="device-support" href="#device-support"></a> Device support</h3>
<p>Even though a lot of devices are supported by RFLink, not all have been tested/implemented. If you have a device supported by RFLink but not by this component please consider testing and adding support yourself or <a href="https://github.com/home-assistant/home-assistant/issues/new">create an issue</a> and mention <code class="highlighter-rouge">@aequitas</code> in the description.</p>
<h3><a class="title-link" name="device-incorrectly-identified" href="#device-incorrectly-identified"></a> Device Incorrectly Identified</h3>
<p>If you find a device is recognized differently, with different protocols or the ON OFF is swapped or detected as two ON commands, it can be overcome with the RFlink RF Signal Learning mechanism from RFLink Rev 46 (11 March 2017). <a href="http://www.nemcon.nl/blog2/faq#RFFind">Link to further detail.</a></p>
<p>If you find a device is recognized differently, with different protocols or the ON OFF is swapped or detected as two ON commands, it can be overcome with the RFLink RF Signal Learning mechanism from RFLink Rev 46 (11 March 2017). <a href="http://www.nemcon.nl/blog2/faq#RFFind">Link to further detail.</a></p>
<h3><a class="title-link" name="technical-overview" href="#technical-overview"></a> Technical overview</h3>
<ul>
<li>The<code class="highlighter-rouge">rflink</code> Python module a asyncio transport/protocol is setup that fires an callback for every (valid/supported) packet received by the RFLink gateway.</li>
<li>This component uses this callback to distribute rflink packet events over Home Assistants bus which can be subscribed to by entities/platform implementations.</li>
<li>The platform implementions take care of creating new devices (if enabled) for unsees incoming packet ids.</li>
<li>Device entities take care of matching to the packet ID, interpreting and performing actions based on the packet contents. Common entitiy logic is maintained in this main component.</li>
<li>The platform implementation takes care of creating new devices (if enabled) for unseen incoming packet ids.</li>
<li>Device entities take care of matching to the packet ID, interpreting and performing actions based on the packet contents. Common entity logic is maintained in this main component.</li>
</ul>
<h3><a class="title-link" name="debug-logging" href="#debug-logging"></a> Debug logging</h3>
<p>For debugging purposes or context when investigating issues you can enable debug logging for Rflink with the following config snippet:</p>