市场上有许多WiFi插头来自不同的制造商。我决定使用Luminea ZX-2820 。购买后,事实证明,由于没有螺丝并且粘合住房,因此很难打开此插头,因此我最好购买另一个。但是,好的,您需要一把刀才能切开关节,并小心地打开房屋,而无需大义务。在内部,有一个ESP8285/ESP8266模块(Tuya Tywe2s),可以轻松地用PCB上的可用垫子重新刷新。还有一个智能的单相能计IC,可以测量电压,电流,不同的功率类型和消耗的能量。使用中国MQTT云的原始固件也是一种很好的感觉。取而代之的是,我的软件连接到本地自我维护的MQTT经纪人(请参阅我的其他项目)。
硬件是商业产品Luminea ZX-2820 。它由Pearl(https://www.pearl.de/a-zx2820-3103.shtml)和Amazon(https://www.amazon.de/-/www.amazon.de/-/luminea/lumineaea-home-chontrol-elsocke-socket-socket-socket-socket/dp/b078159rangue)出售。 
PCB上有一个ESP8285(Tuya Tywe2s)模块。实际上,这是带有内部闪光灯(1MBYTE)的ESP8266。下表显示了GPIO及其功能之间的分配:
| 信号 | tywe2s | 类型 |
|---|---|---|
| 按钮 | GPIO3 | 输入 |
| BL0937 CF | GPIO4 | 打断 |
| BL0937 CF1 | GPIO5 | 打断 |
| BL0937 SEL | GPIO12 | 输出 |
| 引领 | GPIO13 | 输出 |
| rel | GPIO14 | 输出 |

这个单相能计的IC与非常流行的HLW8012非常相似,至少它是兼容的。通过比较数据表,存在一些显着差异。我从https://github.com/xoseperez/hlw8012中获取了驱动程序代码,并将其移植到BL0937,您可以在主程序旁边找到。最重要的变化影响了
串行标头(3.3V,RXD,TXD,GND)以及GPIO0和RESET(IO0,RST)在PCB背面和Tuya Tywe2s模块本身上填充为测试垫。为了访问串行标头以焊接一些电缆,需要将小孔切入外壳(最终可以用一些热胶将孔关闭)。您可以轻松添加一些焊料来修理闪光过程的电线。您需要连接到ESP8266芯片的串行编程界面。这是通过将任何串行到USB转换器(例如FT232R)TX,RX,3.3V和GND引脚连接到ESP8266 RX,TX,3.3V和GND引脚(交叉连接!)来完成。重新检查您的串行到USB转换器,以确保其提供3.3V电压而不是5V。 5V会损坏ESP芯片! 
要将木板首次放置在闪烁模式下,您需要将IO0(GPIO0)简要介绍到GND。在闪烁过程中,这可能会保持短路,但是您需要删除简短以后才能启动闪烁的软件。如果您第一次成功刷新了闪烁的软件启动,则可以轻松地通过空中和WiFi重新闪烁。 Arduino IDE支持此功能,您可以选择插头的IP地址,而不是用于下载软件的UART频道。 OTA的密码是esp8266 。随后将通过快速LED切换来指示OTA成功的闪存过程。 
Lolin(Wemos) D1 mini Lite板Async MQTT client端库:https://github.com/marvinroger/async-mqtt-client/archive/archive/master.zipAsync TCP库:https://github.com/me-no-dev/espasynctcp/archive/master.zipArduinoOTA库。该配置完全在Wifimanager的Web前端完成。在第一启动时,软件以访问点模式启动。在此模式下,您可以配置参数
保存这些设置后,下一家启动后,软件启动到了正常的操作模式,并连接到WiFi和MQTT代理。通过打开LED来指示与经纪人的成功连接。可以在软件启动期间再次按下按下按钮。
软件订阅到MQTT主题,可以更改ZX-2820的Relais状态,并可以重置消耗的能量。该软件每3秒钟发布一次新的采样值,用于电压,电流,主动功率,反应能力,明显的功率和消耗能量。此外,该软件还支持重新连接WiFi和MQTT经纪人,如果不可用,WiFi丢失或MQTT经纪人不可用。 MQTT主题从设备特定的MAC-ADDRESS字符串开始(以下面的“ A020A600F73A”为例)。当您的MQTT云中有多个控制器以避免碰撞时,这很有用。
订阅主题:
发布主题:
开放住房: 
PCB上的TYWE2S和BL0937模块: