DIY一款基于MySensors的ESP8266+NRF24L01的MQTT(WIFI)和RF无线网关(二)正式DIY
正式DIY
先声明一下,本次DIY并非原创。
硬件方面,参考了一款国外的DIY,他的项目比较完善。有多个信号指示灯和包装外壳等。
我们的DIY只是用ESP8266跟NRF24L01+加强版的模块直接连接,目的是做个简单的网关,对网关功能进行验证。
当然有兴趣的人可以去做完善的版本。
软件上,我们直接用那个国外DIY项目的源代码。
或者在其基础上进行修改。
这款基于ESP8266的网关支持SoftAP模式(热点模式)设置网络连接参数。
一、本文参考的国外DIY项目
这款MQTT-RF无线网关DIY项目在这里:
https://www.openhardware.io/view/349/MySensors-ESP8266-MQTT-gateway
外观图:

主板PCB:
电路原理图:
![]()
他的源代码:
https://github.com/Japio74/MySensorsESP8266MQTTGateway
或者:
https://www.openhardware.io/dl/58bdb24644f656d179dca125
二、本文采用的模块和连接线路
1、ESP8266模块
也有人叫它NodeMCU
前面我们研究了怎么用Arduino IDE给它烧程序。
这个模块可以用使用CP2102的或者CH340的,都可以,后者便宜几块钱。
可以在某宝上买到,十几块钱吧。

2、NRF24L01+ PA版(即所谓的功率增强版)
NRF24L01+ 无线模块 功率加强版 2.4G 无线收发通信模块

在某宝上,大概两三块钱。
当然我们现在是用在家用场合,收发距离不太远。
如果要远距离传输,最好买那种加屏蔽罩并带有外置天线的。
或者,模块带屏蔽罩,自己另加室外天线。
3、硬件连接线路
我们使用MySensors官方给出的连接定义,这个连接方式是跟网关源代码的定义相符合的。
参考:https://www.mysensors.org/build/connect_radio#nrf24l01+-&-esp8266
整个的连接共使用7根线,IRQ(中断信号管脚)不需要连接。
NRF24L01+ 的管脚定义:

跟ESP8266的连接定义:

本文介绍了如何使用ESP8266和NRF24L01+ PA版模块自制一个简单的MQTT无线网关,涉及硬件连接、软件库安装、代码修改与编译、设备设置和参数配置。通过参考国外项目,实现了基于MySensors的ESP8266 MQTT网关功能。
DIY一款基于MySensors的ESP8266+NRF24L01的MQTT(WIFI)和RF无线网关(二)正式DIY&spm=1001.2101.3001.5002&articleId=87459032&d=1&t=3&u=8a7f770adbd24b98b8bf5389c52569d2)
2497

被折叠的 条评论
为什么被折叠?



