rflink


rflink集成支持使用的设备Rflink网关固件,例如,Nodo Rflink网关。Rflink Gateway是一种Arduino Mega固件,使用廉价硬件(Arduino +收发器)允许使用多种RF无线设备进行双向通信。

433 MHz频谱由许多制造商使用其自己的协议/标准使用,其中包括:灯开关,百叶窗,气象站,警报和其他各种传感器。

Rflink网关使用各种低成本硬件支持许多RF频率。他们的网站为433MHz,868MHz和2.4 GHz提供各种RF发射器,接收器和收发器模块的详细信息。

注意:比R44晚的版本增加了对宜家Ansluta,Philips Living Color Gen1和Mysensors设备的支持。

可以找到Rflink支持的设备的完整列表这里

使用以下硬件/软件测试了此集成:

  • Nodo Rflink Gateway v1.4/rflink R46

配置

要在安装中启用Rflink,请添加以下内容configuration.yaml文件:

#示例Configuration.yaml条目rflink港口/dev/serial/by-id/usb-id01234

配置变量

港口 细绳 必需的

在TCP模式下通往Rflink USB/串行设备或TCP端口的路径。

主持人 细绳 ((可选的

切换到TCP模式,连接到主机而不是USB/serial。

wait_for_ack 布尔 ((可选的,默认:正确

等待Rflink在发送新命令之前确认已发送的命令(较慢但更可靠)。

ignore_devices 列表|细绳 ((可选的

设备ID列表要忽略。支持通配符(*,,,,)。

reconnect_interval 整数 ((可选的,默认:10

重新连接尝试之间的几秒钟时间。

tcp_keepalive_idle_timer 整数 ((可选的,默认:3600

自上次数据包以来,在发送TCP KeepAlive之前就可以等待几秒钟的时间。值为0将禁用此功能。

完整的例子

#示例Configuration.yaml条目rflink港口/dev/serial/by-id/usb-id01234wait_for_ack错误的ignore_devices-newkaku_000001_01-Digitech_*

TCP模式

TCP模式使您可以通过TCP/IP网络连接到RFLINK设备。如果将RFLINK设备放置在HA服务器旁边不是最佳或所需的(例如:不良接收),这将很有用。

要通过TCP在其他主机(Linux)上公开USB/串行接口,可以使用以下命令:

SOCAT /DEV /TTYACM0,B57600,RAWER TCP-LISTEN:1234,REUSEADDR

可以通过TCP公开串行接口的其他方法(例如:ESP8266或使用Arduino Wifi Shield)。本质上,串行流应直接映射到TCP流。

用WiFi串行桥测试ESP-Link v2.2.3在带有ESP8266 TXD0(PIN D10)和RXD0(引脚D9)的NodeMCU(ESP8266 WiFi模块)上运行,分别连接到Arduino Mega 2560 RX(PIN 2)和TX(PIN 3)。

由于逻辑水平不同,需要在3.3V nodemcu和5V arduino mega 2560引脚之间进行电压级别变速杆。BSS138双向逻辑水平转换器已测试了串行引脚和关联建议用于CC2500收发器(用于宜家Ansluta和Philips Living Colors)

重新刷新Arduino Mega时,请断开ESP8266,以避免编程困难。
#示例Configuration.yaml条目rflink主持人192.168.0.10港口1234tcp_keepalive_idle_timer600

自动添加设备

为了自动发现设备,您需要将以下内容添加到配置中。按下物理遥控器上的按钮时,RFLINK检测信号,并应自动将设备添加到家庭助手。必威是什么

#示例Configuration.yaml条目-平台rflink自动_ADD真的传感器-平台rflink自动_ADD真的

Rflink开关Rflink二进制传感器无法自动添加。

Rflink集成不知道二进制传感器,开关和光线之间的差异。因此,默认情况下,所有可开关设备都会自动添加为光线。但是,一旦知道开关的ID,就可以将其用于将其配置为“开关”或“家庭助手”中的二进制传感器类型,以将其添加到另一组或配置好名称。必威是什么

忽略设备

可以将Rflink平台配置为完全忽略平台级别的设备。当您有使用433 MHz技术的邻居时,这很有用。

例如:

#示例Configuration.yaml条目rflink港口/dev/serial/by-id/usb-id01234wait_for_ack错误的ignore_devices-newkaku_000001_01-Digitech_*-kaku_1_*

此配置将忽略按钮1纽卡库具有ID的设备000001,所有设备Digitech协议和所有开关卡库带有Codewheel ID的协议设备1

倒盖

可以通过添加选项在configuration.yaml

#倒置RTS封面的示例Configuration.yaml条目覆盖-平台rflink设备#rfloader创建了由家庭助手使用的遥控器必威是什么RTS_0A0A0A_1姓名瞎的办公室”别名-RTS_0F1F2F_01#遥控器的ID(在这种情况下为Somfy Smove)类型

此配置使用0A0A0A控制倒快的快门(向上发送到关闭以打开),然后收听发送的命令0f1f2f遥控。

设备支持

即使RFLINK支持了许多设备,但并非所有设备都经过测试/实施。如果您拥有RFLINK支持的设备,但不受此集成的支持,请考虑自己进行测试和添加支持。

设备错误地识别

如果您发现设备的识别方式不同,则使用不同的协议或打开命令的两个命令将其换成或检测到,则可以通过RFLINK REV REV 46(2017年3月11日)的RFLINK“ RF信号学习”机制来克服它。链接到更多细节。

技术概述

  • rflinkPython模块是一种异步传输/协议,可以为Rflink Gateway接收到的每个(有效/支持的)数据包提供回调。
  • 此集成使用此回调将“ Rflink数据包事件”分发必威是什么家庭助理活动巴士可以由实体/平台实现订阅。
  • 平台实现需要为看不见的传入数据包ID创建新设备(如果已启用)。
  • 设备实体会根据数据包内容来处理与数据包ID的匹配,解释和执行操作。共同实体逻辑在此主要组件中维持。

调试日志

为了调试目的或上下文,您可以使用以下配置片段启用RFLINK的调试记录:

#示例Configuration.yaml条目记录器默认错误日志rflink调试homeassistant.components.rflink调试

这将使您看起来像这样:

17-03-07 20:12:05调试((主要线程[[rflink.protocol]收到数据:20;00;点头17-03-07 20:12:05调试((主要线程[[rflink.protocol]收到数据:o radiofrequencylink-R 17-03-07 20:12:05调试((主要线程[[Rflink.protocol]收到数据:Flink Gateway v1.1-R45 17-03-07 20:12:05调试((主要线程[[rflink.protocol]收到数据:;17-03-07 20:12:05调试((主要线程[[rflink.protolocol] got acket:20;00;Nodo radiofrequencylink -Rflink Gateway v1.1 -R45;17-03-07 20:12:05调试((主要线程[[rflink.protocol]解码数据包:{'固件''Rflink Gateway',,,,'修订''45',,,,'节点'“网关”,,,,'协议''未知',,,,'硬件'“ nodo radiofquencylink”,,,,'版本''1.1'}17-03-07 20:12:05调试((主要线程[[rflink.protolocol]有事件:{'版本''1.1',,,,'固件''Rflink Gateway',,,,'修订''45',,,,'硬件'“ nodo radiofquencylink”,,,,'ID''rflink'}17-03-07 20:12:05调试((主要线程[[homeassistant.components.rflink]类型未知:{'版本''1.1',,,,'固件''Rflink Gateway',,,,'修订''45',,,,'硬件'“ nodo radiofquencylink”,,,,'ID''rflink'}