『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 10537|回复: 11

[求助] 萌新ESPHOME刷机失败

[复制链接]

106

主题

551

帖子

2789

积分

金牌会员

Rank: 6Rank: 6

积分
2789
金钱
2238
HASS币
20
发表于 2020-7-6 21:30:59 | 显示全部楼层 |阅读模式
本帖最后由 comeon_000 于 2020-7-7 21:27 编辑

买了几个ESP8266玩玩,就是下面这款ESP8266串口wifi模块 NodeMcu Lua WIFI V3 物联网 开发 CH340
TB2B7OlA2iSBuNkSnhJXXbDcpXa_!!107845380.jpg
ESPHOME是直接在HA(群辉docker安装)里装的插件,在WINDOWS系统下网页方式登录刷写

配置静态IP后是如下错误:
Snipaste_2020-07-06_21-05-03.png
改成动态IP是如下错误:
Snipaste_2020-07-06_21-06-13.png
拔了USB线后upload,发现也是上面的错误,我晕,难道就没连接到设备吗,CH340的驱动已经装了
Snipaste_2020-07-06_21-28-20.png
难道是不能用这种方式直接刷固件吗,我看网上有人只是用ESPHOME编译好固件,最后还是用的ESPeasy刷机
或者是需要操作一下RST或者FLASH按钮,我看单板上有这两个按钮,卖家没给什么资料,求大神指导,感谢!
按照大神的提示,第一次用官方的刷机工具刷机成功,然后再用ESPhome刷,出现如下提示,是否还有哪里需要设置一下
Snipaste_2020-07-07_21-24-36.png


回复

使用道具 举报

73

主题

1165

帖子

6643

积分

论坛元老

Rank: 8Rank: 8

积分
6643
金钱
5473
HASS币
30
发表于 2020-7-7 05:57:27 | 显示全部楼层
刷机前,要点击右下角选择ota,串口
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2020-7-7 07:44:13 | 显示全部楼层
本帖最后由 XCray 于 2020-7-7 11:25 编辑

第一次烧写ESPHome固件,推荐在本地进行操作,也就是用你直接操作的这台电脑、把开发板连在这台电脑的USB口、把bin格式的固件下载下来、用ESPHome推荐的刷机工具(这个比ESP官方的都好用)。
~~~~~~~~~~~~~~
直接在HA的ESPHome插件里烧写也行,但第一次USB必须连接到HA运行的主机和系统里、必须把USB转成的串口暴露给HA(错了,应该是暴露给ESPHome),这里面往往还涉及docker。并且在软硬件都弄好之后,ESPHome还需要重启一次才可以认到USB转出来的串口。

当然,以后更新固件就很方便了,OTA随时可以用。
~~~~~~~~~~~
也就是说,第一次烧写ESPHome固件,只能通过串口(现在都是USB转串口),所以物理上你运行烧写工具的主机/系统必须是直接和开发板的USB口是连接的,软件上也要正确对应才行。
回复

使用道具 举报

106

主题

551

帖子

2789

积分

金牌会员

Rank: 6Rank: 6

积分
2789
金钱
2238
HASS币
20
 楼主| 发表于 2020-7-7 08:10:05 | 显示全部楼层
XCray 发表于 2020-7-7 07:44
第一次烧写ESPHome固件,推荐在本地进行操作,也就是用你直接操作的这台电脑、把开发板连在这台电脑的USB口 ...

明白了,感谢指导!
回复

使用道具 举报

106

主题

551

帖子

2789

积分

金牌会员

Rank: 6Rank: 6

积分
2789
金钱
2238
HASS币
20
 楼主| 发表于 2020-7-7 09:18:19 | 显示全部楼层
xuyang 发表于 2020-7-7 05:57
刷机前,要点击右下角选择ota,串口

感谢,看来有一些小坑还是要慢慢填一下
回复

使用道具 举报

106

主题

551

帖子

2789

积分

金牌会员

Rank: 6Rank: 6

积分
2789
金钱
2238
HASS币
20
 楼主| 发表于 2020-7-7 21:28:44 | 显示全部楼层
XCray 发表于 2020-7-7 07:44
第一次烧写ESPHome固件,推荐在本地进行操作,也就是用你直接操作的这台电脑、把开发板连在这台电脑的USB口 ...

我先用官方刷机工具刷机成功,接入WIFI了,然后再用ESPhome刷机还是有错误,日志截图放到顶楼了,帮忙再看看是否还有哪里需要设置
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2020-7-8 07:19:14 | 显示全部楼层
comeon_000 发表于 2020-7-7 21:28
我先用官方刷机工具刷机成功,接入WIFI了,然后再用ESPhome刷机还是有错误,日志截图放到顶楼了,帮忙再 ...

你还是没有理清楚。建议先看明白这一段ESPHome刷机的基本逻辑:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
在成功刷入ESPHome编译的固件并成功联网之前,你的板子与ESPHome是没有任何关系的!这时候OTA是绝对理所当然无法成功的。

OTA的本义就是Over-The-Air,通过空气,要想用ESPHome直接OTA,板子必须先成功联网、并能够认识ESPHome的OTA指令才行,而做到这两点(关键是后一点),必须运行ESPHome固件才行。

这是个先有鸡还是先有蛋的问题?其实不是。板子本来的固件就跟ESPHome没有任何关系,不能接受ESPHome OTA指令当然是天经地义的啦。

那么怎么才能让板子运行ESPHome固件呢?答案就是把ESPHome固件烧写进去。

而实现这一步,又需要根据板子本身的固件及其与电脑的连接而定。

- 如果板子已经运行ESPEasy、tasmota等具有OTA功能的固件且已成功联网,可以用“原固件规定的OTA方法”、把新编译的ESPHome固件用OTA的方式刷进去——这时候绝对不能在ESPHome上操作,因为你的板子和ESPHome还没有发生任何关系!

- 如果板子没有OTA功能,那就必须通过USB口建立物理连接。这时候一定要头脑清醒——你的板子是连在哪个电脑哪个系统的、就只能在哪个系统里运行刷机工具。

由于对虚拟机、Docker等本来就稀里糊涂,这时候很多人脑子就成了一团浆糊——ESPHome服务器运行在另一个系统、你只是在你自己的电脑上(往往是Windows)用浏览器访问ESPHome、你把板子插在自己电脑上指望ESPHome服务器替你刷机,怎么可能呢?
这时候你又有两个选择:
- 把板子连接到ESPHome服务器所在的系统里(也许是虚拟机、也许是docker容器)、重启ESPhome服务器、烧写
- 把固件下载到本地、在本地用任何刷机工具刷(任何刷机工具都可以,esp官方的、esphome的、python的、espeasy的、tasmota的等等任何一个都行)

当然,这时候还需要了解板子的具体型号和刷机步骤,有些需要按什么键、有些需要拉高拉低某个引脚之类的
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

回到楼主的情况,你在主贴里没有贴出来关键的错误提示信息。我也不知道你“先用官方工具刷机成功”具体刷的是什么固件——你如果刷的是ESPHome固件,联网成功后OTA是不会有问题的(当然,yaml里要配置OTA)
回复

使用道具 举报

106

主题

551

帖子

2789

积分

金牌会员

Rank: 6Rank: 6

积分
2789
金钱
2238
HASS币
20
 楼主| 发表于 2020-7-8 07:57:04 | 显示全部楼层
XCray 发表于 2020-7-8 07:19
你还是没有理清楚。建议先看明白这一段ESPHome刷机的基本逻辑:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...

受教了,讲解的很详细,我刷的就是ESPHome导出的固件,也已经开启了OTA(yaml里默认带ota:),然后同样的固件在通过ESphome的OTA刷才出现上面的错误
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12103
金钱
9084
HASS币
460

教程狂人突出贡献

发表于 2020-7-8 08:08:22 | 显示全部楼层
本帖最后由 XCray 于 2020-7-8 08:21 编辑
comeon_000 发表于 2020-7-8 07:57
受教了,讲解的很详细,我刷的就是ESPHome导出的固件,也已经开启了OTA(yaml里默认带ota:),然后同样的 ...

如果你已经成功刷入ESPHome导出的固件(固件也开了OTA),那么在板子重启并成功联网之后,就会出现在“ESPHome Dashboard”里(如果设置了API密码会提示你输入),状态是小绿灯后面带着Online。这时候你就可以在“ESPHome Dashboard”里编辑修改然后以OTA的方式升级板子上的固件了(OTA也可以用密码限制,也建议设置密码)。
esp.png


看你主贴里最后一张图,错误信息是Errno 104 Connection reset by peer.意味着对方根本不同意你的刷入请求。
绿点还是红点?online还是offline?
HA里,在配置/集成是不是没有完成配置?刷好重启后ha就可以发现它、按提示输入api密码即可。怀疑你没有完成这一步
回复

使用道具 举报

106

主题

551

帖子

2789

积分

金牌会员

Rank: 6Rank: 6

积分
2789
金钱
2238
HASS币
20
 楼主| 发表于 2020-7-8 09:55:12 | 显示全部楼层
XCray 发表于 2020-7-8 08:08
如果你已经成功刷入ESPHome导出的固件(固件也开了OTA),那么在板子重启并成功联网之后,就会出现在“ESP ...

ESPHome已经发现它了,状态是绿色的,而且也在HA里面通过集成加载了这个NODE,可以看到固件版本信息
只是Esphome ota还不行,不过我没配置api密码,不知道和这个有没有关系
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-25 19:22 , Processed in 0.273264 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表