手把手教你将鸿雁带计量半成品插座刷ESPHome接入HA
平时没事就在咸鱼瞎逛看看有什么可以捡漏。结果看到鸿雁的16A半成品插座看介绍是esp8266的主控带hlw8012计量芯片,9.9元包邮 。一下购买10个,到手后用鸿雁智家App可用正常连接带电量统计。重要提示:此板有强电 一定不要插强电刷机。固件刷好后测试也要注意安全不要碰裸露的金属部分。


我购买它决不满足于此,最终是要将其接入HA里面手机里面就不需要安装各种APP。只要是ESP8266的主控都可以通过刷机接入HA。当然前提是ESP8266的芯片没被商家锁死。在瀚思论坛找到这位大神的一篇关于这款插座的刷机方法及公开的固件免得自己编译。

下面就跟我步骤来:
1.刷机前的准备工作:一把电烙铁,焊锡丝, 5-10厘米网线数根,TTL刷机模块CH341A一个。双母头杜邦线5根。一把镊子。




2.找出插座的刷机需要管脚。

USB口对着自己的方向,8266小板的8pin弯针从左到右依次是:
第一排:RX(GPIO3)、GPIO13、 GND、 3V3
第二排:TX(GPIO1)、 GPIO0、GPIO15、GPIO16
按钮引脚是GPIO4,继电器是GPIO15,USB通断是GPIO13、蓝灯GPIO5、橙灯GPIO12。
3.焊接刷机线一共五根( TX,RX GND, 3.3V ,GPIO0)

USB的外壳也是GND 焊这里方便点GPIO16焊一根线到对面空焊盘上。否则看不到功率检测。


焊完后将五根线分别对应431模块对接好插到电脑的USB口上。
1.GND----GND ,3.3V-----3.3, RX-----TX ,TX----RX GPIO0-----GND




仔细看上面的标识不要差错位置,特别注意3.3v不要接到5v上面了。
准备工作做完了就开始正式刷机:
1.打开HA页面安装ESPHome插件。在设置里面找到加载项(HA必须是OS版才有docker安装的没有,飞牛系统应用里面安装也没有虚拟机安装OS版本)


点右下角加载项商店

搜索esp出来第一个就是点开他

点安装

安装完成就能看到ESHome了,打开它。

将里面的选项都打开再点运行,在侧边栏就会ESPhome这个选项。

点打开网页界面

刚开始里面是空的因为我们还没添加设备 ,点击右下角新设备添加一个配置文件。

此时会弹出如上图点继续

选择第一项新设备设置

给设备娶一个名称这个随意但只能是小写的英文,不能有符号空格之类的。接着点下一步

来到这个界面这里直接选ESP8266,若果是刷其他ESP8266的板型可用去掉左下脚的小勾在ESP8266里面还可以选择比如开发板,ESP12等。

点ESP8266后就来到这个页面直接点安装 可以点跳过 。

点安装就会有第一个.yaml配置文件出来,现在这个文件还不是我们需要的。

点击EDIT编辑在最后一行添加

captive_portal:
web_server:
port: 80
substitutions:
voltage_divider: "1991"
current_resistor: "0.001"
#current_multiply: "1.0"
sensor:
- platform: hlw8012
current_resistor: ${current_resistor}
voltage_divider: ${voltage_divider}
sel_pin: GPIO2
cf_pin: GPIO14
cf1_pin: GPIO0
#current:
# name: "HLW8012 Current"
#voltage:
# name: "HLW8012 Voltage"
power:
name: "功率"
update_interval: 10s
#initial_mode: CURRENT
#change_mode_every: "never"
#
switch:
- platform: gpio
id: relay
pin: GPIO15
name: "继电器"
on_turn_on:
- output.turn_on: blue_led
- output.turn_off: yellow_led
on_turn_off:
- output.turn_off: blue_led
- output.turn_on: yellow_led
- platform: gpio
id: usb
pin: GPIO13
name: "USB"
output:
- platform: gpio
id: blue_led
pin: GPIO5
- platform: gpio
id: yellow_led
pin: GPIO12
binary_sensor:
- platform: gpio
id: pwm
pin:
number: 16
mode:
input: true
- platform: gpio
pin: GPIO4
id: button
on_press:
then:
- switch.toggle: relay
最后编辑就是这样子。
esphome:
name: wxkg1
friendly_name: wxkg1
esp8266:
board: esp01_1m
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "+rQjMbmWi9QKTlqDlEZCPfNd9cnlg1Vvj8yZPngeHPg="
ota:
- platform: esphome
password: "90261a45f51e3fe48b7f1f517f323fa9"
wifi:
ssid: "k2p"
password: "xxxxxxxxxxxx"
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "wxkg1"
password: "12345678"
captive_portal:
web_server:
port: 80
substitutions:
voltage_divider: "1991"
current_resistor: "0.001"
#current_multiply: "1.0"
sensor:
- platform: hlw8012
current_resistor: ${current_resistor}
voltage_divider: ${voltage_divider}
sel_pin: GPIO2
cf_pin: GPIO14
cf1_pin: GPIO0
#current:
# name: "HLW8012 Current"
#voltage:
# name: "HLW8012 Voltage"
power:
name: "功率"
update_interval: 10s
#initial_mode: CURRENT
#change_mode_every: "never"
#
switch:
- platform: gpio
id: relay
pin: GPIO15
name: "继电器"
on_turn_on:
- output.turn_on: blue_led
- output.turn_off: yellow_led
on_turn_off:
- output.turn_off: blue_led
- output.turn_on: yellow_led
- platform: gpio
id: usb
pin: GPIO13
name: "USB"
output:
- platform: gpio
id: blue_led
pin: GPIO5
- platform: gpio
id: yellow_led
pin: GPIO12
binary_sensor:
- platform: gpio
id: pwm
pin:
number: 16
mode:
input: true
- platform: gpio
pin: GPIO4
id: button
on_press:
then:
- switch.toggle: relay
根据你自己的实际情况修改完成后保存。(第一二行设备名称,wifi名称和密码, ap名称和密码)WiFi只支持2.4g AP是不能联网后它会生成一个热点供手机连接设置WiFi用。


接下来不忙编译,先验证一下配置文件是否有正确。有错误必须修改到验证通过。

没有红色的错误提示就是行了,上图这样就是验证通过了。

点insstall安装开始编译(所谓的编译就是将.yaml配置文件转换为.bin二进制文件)

这个编译时间与你网络环境有关系。若果你用科学上网就非常快。国内环境一般就10多分钟,若果提示不成功可用退出重新编译。或者换个时间段。本人遇到了几次都是这样解决的。

等它停止后最下面两行绿色英文就表示编译成功。若果你安装类似IDM这种网页下载插件就会弹出下载并保存的提示。没有提示点download(下载)也是一样的。保存的文件格式默认就是.bin。不要修改它。保存到你容易找到的地方后点最右边CLOSE退出。
文件编译完成接下来就刷机了:

这时还是点击新的设备在弹出这个页面选择左面含有WEB这里

点击黄色的CONNECT(连接)在左上角会弹出一个串口COM号选择他点连接就会弹出如下界面。
这里提醒一下要看到串口就必须将连好线的341刷机模块查到USB口上。若果插好还是没有你可以把3.3V重新连一下。串口号在电脑设备管理器里面可以找到一个CH341就是。


到了这一步选中间INSTALL 弹出选择文件找到你刚刚保存的.bin文件点打开再点一次INSTALL就开始刷机了

这在连接设备

出现这个图标表示刷机已快完成了。

最后显示配置完成刷机就结束了,拔出刷机模块焊掉所有连接线,重新通220v电。
此时距离目标已完成99%,紧接着就是将刷好ESPhome固件的插座接入HA

返回到主页面在配置里面就会看到你设备已被发现。点击添加就可以了。




这里这个页面可以控制USB 和220V开和关,还有重要的功能就是OTA(无线升级固件)
点击访问到下面这个界面就是OTA界面 选择好.bin文件点UPdate就可以了。

最后在你的仪表盘里面添加这个实体就可以了具体步骤看下图







为了正常使用加了个86底盒及面板


zt2068
校验提示文案
值友很嗨皮
校验提示文案
阿俊探险
校验提示文案
小霞翁
校验提示文案
红心闪闪的李
校验提示文案
值友很嗨皮
校验提示文案
红心闪闪的李
校验提示文案
小霞翁
校验提示文案
阿俊探险
校验提示文案
zt2068
校验提示文案