首先还是准备一个NodeMCU再加上1个RF发送模块,一个RF接收模块,我手里的是433的模块,因为小K门磁是433频率的。

射频又2种发射频率,一种是315MhZ,另一种是433MHZ,如果不确定自己是什么频率可以每种买一对发射接收,反正也不贵。

大部分灯具遥控采用315频率,卷帘门等一般采用443频率。

视频教程:

先写芯片程序再做连线操作。

下载NodeMCU的射频固件:
https://github.com/1technophile/OpenMQTTGateway/releases
下载NodeMCU Flasher:
https://github.com/marcelstoer/nodemcu-pyflasher/releases
连接nodemcu到电脑usb口,打开flasher选择射频固件刷新进去。
接线方法:

接收模块数据端连接NodeMCU- D3针脚 (电源5V)
发送模块数据端连接NodeMCU- RX针脚 (电源3V或5V)

连接到芯片发射出来的WiFi信号,密码是your_password,自动弹出配置网络界面,设置好你家里的WiFi名称和密码,还有Mqtt信息,保存即可。

从MQTT服务器抓到下面消息:

开门消息
{
"value": 305409792,
"protocol": 1,
"length": 32,
"delay": 191
}
关门消息
{
"value": 305409793,
"protocol": 1,
"length": 32,
"delay": 191
}
低电消息
{
"value": 305409794,
"protocol": 1,
"length": 32,
"delay": 191
}

Home Assistant里添加mqtt sensor取回小K门磁发送代码并判断开门或者关门。

binary_sensor:
  - platform: mqtt
    name: "Door Sensor"
    state_topic: "home/OpenMQTTGateway_ESP8266_RF/433toMQTT"
    value_template: '{{ value_json.value }}'
    payload_on: "305409792"
    payload_off: "305409793"
    qos: 0
    device_class: door

发射代码例子:

switch: 
  - platform: mqtt 
    name: IR Power 
    state_topic: "home/OpenMQTTGateway_ESP8266_RF/commands/MQTTto433" 
    command_topic: "home/OpenMQTTGateway_ESP8266_RF/commands/MQTTto433" 
    payload_on: '{"value": 16625743}' 
    payload_off: '{"value": 16625743}' 
    qos: "0"

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据