跳转到内容

Web 服务器 OTA 更新

Web 服务器 OTA 平台允许您直接通过 Web 界面向 ESPHome 设备上传新的固件二进制文件。这提供了一种用户友好的方式来更新设备,无需命令行工具或 ESPHome 仪表板。

启用后,设备 Web 界面上会出现”OTA 更新”部分,您可以在其中选择并上传固件文件。这对于部署在现场的设备或当您想允许非技术用户执行更新时特别有用。

WARNING

在没有身份验证的情况下通过 Web 界面启用 OTA 更新,允许任何有网络访问权限的人向您的设备上传新固件。使用此功能时,强烈建议在 Web 服务器上启用身份验证。

# 示例配置条目
web_server:
port: 80
auth:
username: !secret web_server_username
password: !secret web_server_password
ota:
- platform: web_server
  • id (可选, ID):手动指定用于代码生成的 ID。
  • Ota 支持的所有 自动化

NOTE

此平台需要在您的设备中配置 Web 服务器 组件。

在 ESPHome 2025.7.0 之前,OTA 功能使用 ota 选项内置于 web_server 组件中。这已移至单独的平台,以与其他 OTA 方法保持一致。

旧配置:

web_server:
port: 80
ota: true # 或 ota: false 禁用

新配置:

web_server:
port: 80
ota:
- platform: web_server # 添加此行以启用 Web OTA

如果您之前在 web_server 配置中有 ota: false,只需删除该行,不要添加 web_server OTA 平台。

使用 Web 服务器 OTA 的基本设置:

# 基本配置
web_server:
port: 80
ota:
- platform: web_server

使用身份验证的安全设置:

# 推荐:使用身份验证
web_server:
port: 80
auth:
username: admin
password: !secret web_password
ota:
- platform: web_server
  1. 导航到您设备的 Web 界面,地址为 http://<设备-ip>/http://<设备名称>.local/
  2. 如果启用了身份验证,输入您的用户名和密码
  3. 向下滚动到”OTA 更新”部分
  4. 点击”选择文件”并选择您的固件文件(firmware.bin
  5. 点击”更新”开始上传
  6. 等待上传完成 - 设备将自动使用新固件重新启动

WARNING

  • 始终使用 firmware.binfirmware.ota.bin 文件进行 OTA 更新,而不是 firmware.factory.bin 文件
  • 更新过程中 Web 界面可能无响应 - 这是正常的
  • 更新期间不要断开设备电源