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

 找回密码
 立即注册
查看: 2893|回复: 6

esphome学习 - 安装与基本使用

[复制链接]

2

主题

13

帖子

124

积分

注册会员

Rank: 2

积分
124
金钱
111
HASS币
0
发表于 2022-12-3 13:31:00 | 显示全部楼层 |阅读模式
本帖最后由 q2316367743 于 2022-12-4 19:30 编辑
esphome学习 - 安装与基本使用

ESPHome 是一个通过简单而强大的配置文件控制您的 ESP8266/ESP32 并通过家庭自动化系统远程控制它们的系统。
这篇文章主要讲一下怎么安装和基本使用,网上的教程大部分是使用home assistant安装,他们的home assistant版本一般是hassOS,但是我的home assistant是使用Docker安装的,而另外一种是使用Docker安装,我试了试,没搞明白,所以我这里讲的是命令行安装,官网:Getting Started with the ESPHome Command Line — ESPHome
前提安装esphome首先需要安装python环境
安装esphomepython安装成功后,使用下面命令安装esphome
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple esphome
复制
等待安装完成,使用下面命令验证
$ esphome version
Version: 2022.11.4

显示版本号,就代表安装成功
基本使用使用esphome -h查看全部命令
$ esphome -h
usage: esphome [-h] [-v] [-q] [-s key value] command ...

positional arguments:
  command               Command to run:
    config              验证配置并将其输出.
    compile             读取配置并编译程序.
    upload              验证配置并上载最新的二进制文件.
    logs                验证配置并显示所有日志.
    run                 验证配置、创建二进制文件、上载并启动日志.
    clean-mqtt          帮助程序清除MQTT主题中保留的消息.
    wizard              一个有用的设置向导,将指导您设置ESPHome.
    mqtt-fingerprint    从MQTT代理获取SSL指纹.
    version             打印ESPHome版本并退出.
    clean               删除所有临时生成文件.
    dashboard           为仪表板创建一个简单的web服务器.
    rename              在YAML中重命名设备,编译二进制文件并上传.

options:
  -h, --help            show this help message and exit
  -v, --verbose         Enable verbose ESPHome logs.
  -q, --quiet           Disable all ESPHome logs.
  -s key value, --substitution key value
                        Add a substitution

例子:点亮一个灯
本例子使用开发版未ESP-12F,开发文档:https://explorer.esion.xyz/s/WpTL
我们首先创建一个文件夹,用于存放esphome的配置文件,比如创建一个文件夹esphome,进入到文件夹中,创建一个yaml文件,比如叫test.yaml
创建好文件后,我们使用编辑器打开文件,将下面代码复制进去
# esphome项目节点
esphome:
  name: test

# 开发版
esp8266:
  # 开发版版型
  board: esp01_1m

# wifi节点
wifi:
  ssid: <wifi名称>
  password: <wifi密码>
  ap:
    ssid: <如果wifi连接失败,热点名称>
    password: <如果wifi连接失败,热点密码>

# 如果wifi连接失败,启动热点
captive_portal:

# web服务器,生产环境建议禁用
web_server:
  port: 80

# 是否打印日志
logger:
  level: debug

# home assistant连接开发版的密码
api:
  password: '123456'

# ota升级的密码
ota:
  password: '123456'

# 对外输出
output:
  # ID,全局唯一
  - id: gpio_13
    # 开发版平台
    platform: gpio
    # 输出的gpio口
    pin: 13

# 灯组件
light:
  # 平台,二进制
  - platform: binary
    # 输出,此处指向初始的ID
    output: gpio_13
    # 随便七个名字
    name: "Kitchen Light"

wifi名、密码、AP名、AP密码修改为自己的
编写完成后,在文件所在文件夹打开终端,收入运行命令
esphome run ./test.yaml -device=COM5
注意:后面的COM5改成自己的COM口,可以在设备管理器 -> 端口(COM和APT)中查看

第一次需要下载一些库,如果没有梯子,可能会很慢,下载后,以后就不需要下载了
编译完成后,会在当前文件夹创建文件夹.esphome
等待上传,上传成功后,会在终端显示
[13:00:09][C][wifi:504]: WiFi:
[13:00:09][C][wifi:362]:   Local MAC: ********
[13:00:09][C][wifi:363]:   SSID: '********'
[13:00:09][C][wifi:364]:   IP Address: 192.168.31.113
[13:00:09][C][wifi:365]:   BSSID: ********
[13:00:09][C][wifi:367]:   Hostname: 'electric-blanket'
[13:00:09][C][wifi:369]:   Signal strength: -61 dB ▂▄▆█
[13:00:09][C][wifi:373]:   Channel: 1
[13:00:09][C][wifi:374]:   Subnet: 255.255.255.0
[13:00:09][C][wifi:375]:   Gateway: 192.168.31.1
[13:00:09][C][wifi:376]:   DNS1: 192.168.31.1
[13:00:09][C][wifi:377]:   DNS2: 0.0.0.0
[13:00:09][C][logger:293]: Logger:
[13:00:09][C][logger:294]:   Level: DEBUG
[13:00:09][C][logger:295]:   Log Baud Rate: 115200
[13:00:09][C][logger:296]:   Hardware UART: UART0
[13:00:09][C][gpio.output:010]: GPIO Binary Output:
[13:00:09][C][gpio.output:011]:   Pin: GPIO13
[13:00:09][C][light:104]: Light 'Kitchen Light'
[13:00:09][C][captive_portal:088]: Captive Portal:
[13:00:09][C][web_server:125]: Web Server:
[13:00:09][C][web_server:126]:   Address: electric-blanket.local:80
[13:00:09][C][mdns:103]: mDNS:
[13:00:09][C][mdns:104]:   Hostname: electric-blanket
[13:00:09][C][ota:093]: Over-The-Air Updates:
[13:00:09][C][ota:094]:   Address: electric-blanket.local:8266
[13:00:09][C][ota:097]:   Using Password.
[13:00:09][C][api:138]: API Server:
[13:00:09][C][api:139]:   Address: electric-blanket.local:6053
[13:00:09][C][api:143]:   Using noise encryption: NO

其中第四排哪个IP Address就是开发版地址,使用浏览器打开

                               
登录/注册后可看大图

通过上面的开关,就可以控制灯的亮灭



评分

参与人数 2金钱 +10 收起 理由
riture + 2 感谢楼主分享!
sorrypqa + 8 大神666!

查看全部评分

回复

使用道具 举报

52

主题

1345

帖子

5082

积分

论坛DIY达人

积分
5082
金钱
3737
HASS币
20
发表于 2022-12-5 21:09:04 | 显示全部楼层
学习了,谢谢楼主的分享!
回复

使用道具 举报

0

主题

48

帖子

600

积分

高级会员

Rank: 4

积分
600
金钱
552
HASS币
0
发表于 2023-3-18 13:06:01 | 显示全部楼层
感谢楼主分享
回复

使用道具 举报

1

主题

23

帖子

85

积分

注册会员

Rank: 2

积分
85
金钱
62
HASS币
0
发表于 2023-6-19 12:14:31 | 显示全部楼层
学习这个比Tasmota门槛要高
回复

使用道具 举报

0

主题

3

帖子

20

积分

新手上路

Rank: 1

积分
20
金钱
17
HASS币
0
发表于 2023-6-25 11:22:33 | 显示全部楼层
大佬好牛逼
回复

使用道具 举报

0

主题

18

帖子

190

积分

注册会员

Rank: 2

积分
190
金钱
172
HASS币
0
发表于 2023-7-27 18:24:05 | 显示全部楼层
学习一下,信息分享
回复

使用道具 举报

0

主题

47

帖子

172

积分

注册会员

Rank: 2

积分
172
金钱
125
HASS币
0
发表于 2024-3-18 22:36:14 | 显示全部楼层
学习了,谢谢楼主的分享!
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-5-19 07:04 , Processed in 0.100325 second(s), 30 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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