位置: IT常识 - 正文

以DHT11、ESP8266为例介绍ESPHome在Home Assistant中的应用(esp8266 dht22)

编辑:rootadmin
以DHT11、ESP8266为例介绍ESPHome在Home Assistant中的应用

推荐整理分享以DHT11、ESP8266为例介绍ESPHome在Home Assistant中的应用(esp8266 dht22),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:esp8266wifi模块与dht11连接,esp8266 ds1302,esp8266 hx711,esp8266 d0,esp8266 d4,esp8266+dht11,esp8266 dht22,esp8266 dht22,内容如对您有帮助,希望把文章链接给更多的朋友!

ESPHome是一个旨在使管理ESP板尽可能简单的工具,我们不用编程仅通过简单而强大的配置文件就可以控制ESP8266/ESP32系统,并可通过Home Assistant对它们进行远程控制。ESPHome支持ESP8266、ESP32、RP2040等开发平台,支持上百种传感器、控制组件,可帮助我们快速DIY智能家居系统。

ESPHome的工作原理:ESPHome读入YAML配置文件并创建自定义固件,安装到ESP设备上,ESPHome配置中添加的设备或传感器将自动显示在Home Assistant的界面中。

一、器件准备

    1、ESP8266模块(ESP-01S)

      2、DHT11温湿度传感器模块

     3、USB转TTL-CH340模块

二、器件连接

CH340

ESP8266 烧写模式

ESP8266 工作模式

DHT11

3.3V

3.3V

3.3V

VCC

RX

TX

TX

RX

GND

GPIO0

GND

GND

GND

GND

GPIO2

DATA

三、在Home Assistant安装ESPHome

在侧边栏点击“配置”菜单,选择“加载项”进入加载项管理页面,点击屏幕右下角“加载项商店”,搜索或直接选择“ESPHome”。

 进入ESPHome安装页面后点击“安装”按钮。等安装完成后,按上图打开那四个选项,然后点击启动(原来安装的按键位置)。

 此时Home Assistan的侧边栏就会出现esphome的图标,点击就会打开esphome的配置页面。

四、在ESPHome添加Esp设备

点击屏幕右下角“+ NEW DEVICE”,选择“CONTURE”,

 

以DHT11、ESP8266为例介绍ESPHome在Home Assistant中的应用(esp8266 dht22)

 输入要创建的设备名称,点击“NEXT”

 选择要烧写的ESP模块型号,我这里选择ESP8266,点击“NEXT”

 这里会为每个ESPHome设备生成一个唯一的加密密钥(可直接保存,也可后期通过配置文件调阅),后期需要此密钥才能将设备添加到Home Assistant中。选择“INSTALL”。

 这时桌面会出现以下图标

 并出现以下界面

五、给ESP设备刷新固件

上述界面分别提示了4种刷固件方式:

第一种,已经成功刷机后,通过wifi自动升级方式刷固件;

第二种,设备连接到本机USB,通过直连方式刷固件;

第三种,设备连接到服务器(如:树莓派)USB,在ESPHome仪表盘进行操作的方式刷固件;

第四种,通过手工下载固件,通过ESPHome的web方式刷固件。

建议先使用第三种方式下载和刷新固件,然后通过第二种方式进行远程升级刷固件。

在这里先选择“CANCEL”退出,进入ESPHome仪表盘后选择“EDIT”进行配置。

 

 原始配置如下:

esphome: name: esp8266-zl3esp8266: board: esp01_1m# Enable logginglogger:# Enable Home Assistant APIapi: encryption: key: "vVWZozV8A08B3kNuFd0LYMb6tJkRdULCdghfgtDF="ota: password: "9fde296283bdad02a4d781c63k8ad154"wifi: ssid: !secret wifi_ssid password: !secret wifi_password # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Esp8266-Zl2 Fallback Hotspot" password: "Ds4EAp1uGOgs"captive_portal:

在这里需要新增设置固定IP、WEB控制和添加传感器等配置代码,同时按实际情况设置WIFI网络和密码,如下:

esphome: name: esp8266-zl2esp8266: board: esp01_1m# Enable logginglogger:# Enable Home Assistant APIapi: encryption: key: "vVWZozV8A08B3kNuFd0LYMb6tJkRdULCdghfgtDF="ota: password: "9fde296283bdad02a4d781c63k8ad154"wifi: #wifi和密码 ssid: "MyWIFI" password: "pass123456" # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Esp8266-Zl2 Fallback Hotspot" password: "UtFLBHz8SAui" manual_ip: #设置固定IP static_ip: 192.168.0.251 gateway: 192.168.0.1 subnet: 255.255.255.0captive_portal:web_server: ## web控制,添加了这2行,就可以在网页端打开设备ip; port: 80sensor: #设置dht11传感器 - platform: dht pin: GPIO1 temperature: name: "Temperature" humidity: name: "Humidity" update_interval: 60s # 数据每60s监测一次 model: "DHT11"

配置完成后选择右上角“SAVE”保存配置,然后即可点击“INSTALL”进行安装。这时需将之前连接好的ESP8266和DHT11传感器插入Home Assistant服务器USB接口。系统会再次进入刷固件方式界面,请选择方式三。

选择服务器USB接口后,系统就开始刷新固件。第一次需要下载安装编译链,因此所需时间较长,以后就比较快了。

当屏幕出现以下提示,表示固件已经刷新。

INFO Reading configuration /config/esphome/esp8266-zl2.yaml...INFO Generating C++ source...INFO Compiling app...Processing esp8266-zl2 (board: esp01_1m; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)--------------------------------------------------------------------------------HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB FlashLDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldfDependency Graph|-- ESPAsyncTCP-esphome @ 1.2.3|-- ESPAsyncWebServer-esphome @ 2.1.0| |-- ESPAsyncTCP-esphome @ 1.2.3| |-- Hash @ 1.0| |-- ESP8266WiFi @ 1.0|-- DNSServer @ 1.1.1|-- ESP8266WiFi @ 1.0|-- ESP8266mDNS @ 1.2|-- noise-c @ 0.1.4| |-- libsodium @ 1.10018.1|-- ArduinoJson @ 6.18.5RAM: [==== ] 42.3% (used 34636 bytes from 81920 bytes)Flash: [===== ] 49.4% (used 506025 bytes from 1023984 bytes)========================= [SUCCESS] Took 8.06 seconds =========================INFO Successfully compiled program.esptool.py v4.4Serial port /dev/ttyUSB0Connecting....Chip is ESP8266EXFeatures: WiFiCrystal is 26MHzMAC: 5c:cf:7f:8f:26:99Uploading stub...Running stub...Stub running...Changing baud rate to 460800Changed.Configuring flash size...Auto-detected Flash size: 1MBFlash will be erased from 0x00000000 to 0x0007cfff...Compressed 510176 bytes to 357416...Wrote 510176 bytes (357416 compressed) at 0x00000000 in 8.3 seconds (effective 492.3 kbit/s)...Hash of data verified.Leaving...Hard resetting via RTS pin...INFO Successfully uploaded program.INFO Starting log output from /dev/ttyUSB0 with baud rate 115200

 选择“STOP”退出,完成固件刷新。

这以后,就可以选择方式一通过WIFI进行固件刷新了(注意:方式一刷机仅需给ESP8266加上3.3V电源,不用接RX、TX串口线,也不用IO0接地)。

INFO Reading configuration /config/esphome/esp8266-zl2.yaml...INFO Generating C++ source...INFO Compiling app...Processing esp8266-zl2 (board: esp01_1m; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)--------------------------------------------------------------------------------HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB FlashLDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldfDependency Graph|-- ESPAsyncTCP-esphome @ 1.2.3|-- ESPAsyncWebServer-esphome @ 2.1.0| |-- ESPAsyncTCP-esphome @ 1.2.3| |-- Hash @ 1.0| |-- ESP8266WiFi @ 1.0|-- DNSServer @ 1.1.1|-- ESP8266WiFi @ 1.0|-- ESP8266mDNS @ 1.2|-- noise-c @ 0.1.4| |-- libsodium @ 1.10018.1|-- ArduinoJson @ 6.18.5RAM: [==== ] 42.3% (used 34636 bytes from 81920 bytes)Flash: [===== ] 49.4% (used 506025 bytes from 1023984 bytes)========================= [SUCCESS] Took 8.07 seconds =========================INFO Successfully compiled program.INFO Connecting to 192.168.0.251INFO Uploading /data/esp8266-zl2/.pioenvs/esp8266-zl2/firmware.bin (510176 bytes)INFO Compressed to 357428 bytesUploading: [============================================================] 100% Done...INFO Waiting for result...INFO OTA successfulINFO Successfully uploaded program.INFO Starting log output from 192.168.0.251 using esphome APIWARNING Can't connect to ESPHome API for 192.168.0.251: Timeout while connecting to ('192.168.0.251', 6053)INFO Trying to reconnect to 192.168.0.251 in the backgroundINFO Successfully connected to 192.168.0.251[22:03:58][I][app:102]: ESPHome version 2022.12.8 compiled on Feb 15 2023, 21:59:45[22:03:58][C][wifi:504]: WiFi:[22:03:58][C][wifi:362]: Local MAC: 5C:CF:7F:8F:26:99[22:03:58][C][wifi:363]: SSID: 'YUYU'[redacted][22:03:58][C][wifi:364]: IP Address: 192.168.0.251[22:03:58][C][wifi:365]: BSSID: B0:73:5D:6D:64:4C[redacted][22:03:58][C][wifi:367]: Hostname: 'esp8266-zl2'[22:03:58][C][wifi:369]: Signal strength: -58 dB ▂▄▆█[22:03:58][C][wifi:373]: Channel: 1[22:03:58][C][wifi:374]: Subnet: 255.255.255.0[22:03:58][C][wifi:375]: Gateway: 192.168.0.1[22:03:58][C][wifi:376]: DNS1: 0.0.0.0[22:03:58][C][wifi:377]: DNS2: 0.0.0.0[22:03:58][C][logger:293]: Logger:[22:03:58][C][logger:294]: Level: DEBUG[22:03:58][C][logger:295]: Log Baud Rate: 115200[22:03:58][C][logger:296]: Hardware UART: UART0[22:03:58][C][dht:017]: DHT:[22:03:58][C][dht:018]: Pin: GPIO1[22:03:58][C][dht:022]: Model: DHT11[22:03:58][C][dht:027]: Update Interval: 60.0s[22:03:58][C][dht:029]: Temperature 'Temperature'[22:03:58][C][dht:029]: Device Class: 'temperature'[22:03:58][C][dht:029]: State Class: 'measurement'[22:03:58][C][dht:029]: Unit of Measurement: '°C'[22:03:58][C][dht:029]: Accuracy Decimals: 1[22:03:58][C][dht:030]: Humidity 'Humidity'[22:03:58][C][dht:030]: Device Class: 'humidity'[22:03:58][C][dht:030]: State Class: 'measurement'[22:03:58][C][dht:030]: Unit of Measurement: '%'[22:03:58][C][dht:030]: Accuracy Decimals: 0[22:03:58][C][captive_portal:088]: Captive Portal:[22:03:58][C][web_server:125]: Web Server:[22:03:58][C][web_server:126]: Address: 192.168.0.251:80[22:03:58][C][mdns:103]: mDNS:[22:03:58][C][mdns:104]: Hostname: esp8266-zl2[22:03:58][C][ota:093]: Over-The-Air Updates:[22:03:58][C][ota:094]: Address: 192.168.0.251:8266[22:03:58][C][ota:097]: Using Password.[22:03:58][C][api:138]: API Server:[22:03:58][C][api:139]: Address: 192.168.0.251:6053[22:03:58][C][api:141]: Using noise encryption: YES[22:04:31][D][dht:048]: Got Temperature=15.0°C Humidity=60.0%[22:04:31][D][sensor:126]: 'Temperature': Sending state 15.00000 °C with 1 decimals of accuracy[22:04:31][D][sensor:126]: 'Humidity': Sending state 60.00000 % with 0 decimals of accuracy

完成固件刷新后,重新给ESP8266加上3.3V电源(不用接RX、TX串口线,也不用IO0接地),ESPHome仪表盘上该设备已显示为“ONLINE”。

六、将ESP设备集成到Home Assistant

重新启动Home Assistant,进入界面之后,会自动提示发现设备。

 点击“配置”,选择“提交”。

 按提示输入ESP8266设备的加密密钥(查看配置文件里面encryption—key值),提交后就成功在Home Assistant创建了ESP8266设备。

 在“配置”——》“设备”中可看到该设备集成,包括“1个设备”和“2个实体”。

 点击“1个设备”,可以查看设备数据。

 选择“添加到仪表盘”可以将该设备实体添加到“概览”中。

本文链接地址:https://www.jiuchutong.com/zhishi/294600.html 转载请保留说明!

上一篇:红嘴牛椋鸟和高角羚, 南非姆普马兰加省 (© Heini Wehrle/Minden Pictures)(红嘴牛文鸟图片)

下一篇:使用videojs播放m3u8视频(video.js教程)

  • 淘宝天天领钱怎么取消(淘宝天天领钱怎么突然没有了)

    淘宝天天领钱怎么取消(淘宝天天领钱怎么突然没有了)

  • 手机屏幕漏液紫色扩散(手机屏幕漏液紫色扩散能阻止吗)

    手机屏幕漏液紫色扩散(手机屏幕漏液紫色扩散能阻止吗)

  • 电脑连wifi的安全密钥是什么(电脑连wifi的安全WPA2怎样修改?)

    电脑连wifi的安全密钥是什么(电脑连wifi的安全WPA2怎样修改?)

  • 微信付款码被别人拍照了怎么办(微信付款码被别人知道了怎么办)

    微信付款码被别人拍照了怎么办(微信付款码被别人知道了怎么办)

  • 剪映导不出视频怎么回事(为什么剪映导不出视频)

    剪映导不出视频怎么回事(为什么剪映导不出视频)

  • 哔哩哔哩上传视频审核需要多久(哔哩哔哩上传视频怎么赚钱)

    哔哩哔哩上传视频审核需要多久(哔哩哔哩上传视频怎么赚钱)

  • 抖音号养了7天为什么0播放量(抖音号养了7天怎么0播放量)

    抖音号养了7天为什么0播放量(抖音号养了7天怎么0播放量)

  • 苹果x背面有一串英文(苹果x背面有一条黑线)

    苹果x背面有一串英文(苹果x背面有一条黑线)

  • 监控摄像头可以听到声音吗(监控摄像头可以看到多远)

    监控摄像头可以听到声音吗(监控摄像头可以看到多远)

  • 微信下载安装的步骤是(微信下载安装的文件在哪)

    微信下载安装的步骤是(微信下载安装的文件在哪)

  • 华为nova6双系统怎么设置(华为nova6双系统怎么进去)

    华为nova6双系统怎么设置(华为nova6双系统怎么进去)

  • 戴尔笔记本无线网络开关在哪里(戴尔笔记本无线鼠标怎么连接)

    戴尔笔记本无线网络开关在哪里(戴尔笔记本无线鼠标怎么连接)

  • oppor11s多少英寸(oppor11s手机多大尺寸)

    oppor11s多少英寸(oppor11s手机多大尺寸)

  • 网络lte表示什么意思(lte的网络)

    网络lte表示什么意思(lte的网络)

  • 计算器上的off键的作用(计算器上的off键是干什么用的)

    计算器上的off键的作用(计算器上的off键是干什么用的)

  • 手机文件管理怎么清理(手机文件管理怎样清理垃圾)

    手机文件管理怎么清理(手机文件管理怎样清理垃圾)

  • 蓝牙耳机一边响一边不响怎么办(蓝牙耳机一边响一边断断续续)

    蓝牙耳机一边响一边不响怎么办(蓝牙耳机一边响一边断断续续)

  • 苹果11pro max和11pro区别(苹果11pro max和11pro的区别)

    苹果11pro max和11pro区别(苹果11pro max和11pro的区别)

  • 网易云怎么判断对方把我拉黑(网易云怎么判断对方有没有和别人一起听)

    网易云怎么判断对方把我拉黑(网易云怎么判断对方有没有和别人一起听)

  • 小米手环4来电不提醒(小米手环4来电不震动,来电不提醒怎么办)

    小米手环4来电不提醒(小米手环4来电不震动,来电不提醒怎么办)

  • 蜜蜂出行押金188退步骤(蜜蜂出行押金手动退款)

    蜜蜂出行押金188退步骤(蜜蜂出行押金手动退款)

  • 清晰度3mp5mp是什么意思(清晰度3mp5mp哪个好)

    清晰度3mp5mp是什么意思(清晰度3mp5mp哪个好)

  • 华为手机通讯录黑名单在哪找(华为手机通讯录怎么转移新手机)

    华为手机通讯录黑名单在哪找(华为手机通讯录怎么转移新手机)

  • 抖音收藏的视频怎么找(抖音收藏的视频不见了是什么原因)

    抖音收藏的视频怎么找(抖音收藏的视频不见了是什么原因)

  • ahqtb.exe是啥进程 ahqtb进程信息查询

    ahqtb.exe是啥进程 ahqtb进程信息查询

  • kaggle注册以及数据集下载全流程(kaggle官网注册)

    kaggle注册以及数据集下载全流程(kaggle官网注册)

  • 曼哈顿河滨公园中的圣女贞德纪念碑 (© Chase Guttman/Alamy)(曼哈顿公园大道432号)

    曼哈顿河滨公园中的圣女贞德纪念碑 (© Chase Guttman/Alamy)(曼哈顿公园大道432号)

  • 进项税额怎么抵税
  • 企业发生的印花税计入什么科目
  • 销售商品收到转账支票计入什么科目
  • 管理费抵扣如何计算
  • 供电局发票金额可以多开吗
  • 公司网站建设费入什么明细科目里
  • 一次性奖励随工资发
  • 印花税这个月没交下个月补报可以吗?
  • 日用品发票能报销吗
  • 土地使用权出让和划拨有什么区别
  • 购进固定资产抵扣时咋填报增值税
  • 工程备用金金额怎么算
  • 小额贷款公司借钱容易吗
  • 勾选认证的发票在哪里能查询
  • 确认并支付本年职工工资
  • 预付卡销售发票可以报销吗?
  • 已抵扣的进项税额怎么转出
  • 即征即退收入是否计入三免三减半所得
  • 小型微利企业应纳税所得额300万
  • 什么是长期应付薪酬
  • 筹建期间的广宣费
  • 会计分录是怎么写的
  • 买水果送什么赠品
  • 认筹金客户经常提出哪些问题
  • 税务发票盖章要求
  • 误删开始菜单
  • 收到的销项负数要认证吗
  • os x yosemite dp6下载 os x 10.10 dp6官方下载地址
  • 怎么扣除购入的物品
  • php require的用法
  • 家用电脑分为哪几类
  • 税收风险应对措施包括
  • php中strtotime
  • php日历如何实现
  • xcsp_eclib.dll
  • 企业购入固定资产要交印花税吗
  • 购入固定资产的会计处理
  • 报废车怎么走流程
  • 增值税发票半年能开吗
  • 股权转让怎么做帐务处理
  • 特征提取原理
  • vue3.0动态路由
  • windows history命令
  • 邮寄的发票对方没收到怎么办
  • 帝国cms破解授权
  • python os.path模块
  • SQL SERVER 2008 64位系统无法导入ACCESS/EXCEL怎么办
  • mysql 5.7.20 win64 安装及配置方法
  • MongoDB的mongo shell常用操作方法及操作脚本笔记
  • 最新版税控盘怎么设置打印机
  • 行政事业单位非税收入管理办法
  • 税款减半征收如何申报
  • 加盟代理需要什么手续
  • 应收账款周转率高说明
  • 企业固定资产清理流程
  • 外购的商品用于生产
  • 非营利医疗机构免征哪几种税
  • window正在检查内存
  • centos7设置ssh登录
  • 什么是suv汽车
  • mac键盘图标与对应不匹配
  • mcupdate.dll
  • 有没有win8系统
  • linux groupmod命令参数及用法详解(linux修改组信息命令)
  • win7系统怎么设置桌面便签
  • win7系统重启后黑屏不进系统
  • perl读取文件内容到数组
  • javascript运用
  • jquery easyui validatebox remote的使用详解
  • js实现组件功能
  • JavaScript中的方法名不区分大小写
  • unity多人联机服务器客户端
  • 引用jquery后没反应
  • jquery实现轮播图步骤
  • jquery弹出窗口
  • js面向对象是什么意思
  • 福建省国税局
  • 对税务工作提出意见建议
  • 查询完毕
  • 航天金税开票软件服务费可以抵扣税款吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设