本教程将使用 Unit Encoder 旋转编码器搭配 Atom Lite 主控,并将其集成到 Home Assistant 中,实现旋钮数值读取、按键检测与 RGB LED 控制。
2026.5.0 或更高版本)。ESPHome 2026.4.5 或更高版本编写。)

CONTINUE。
New Device Setup,进入设备创建向导。
NEXT。
Use recommended settings,然后选择 ESP32,在详情页中找到 Unit Encoder 并选中,点击 NEXT。
SKIP,跳过加密密钥设置。
EDIT,进入 YAML 配置页面,自定义设备功能。
在 YAML 文件中添加 External Components 配置,加载 Unit Encoder 驱动。
external_components:
- source: github://m5stack/esphome-yaml/components
components: [m5unit_encoder]
refresh: 0s i2c:
sda: GPIO26
scl: GPIO32
scan: true sensor:
- platform: m5unit_encoder
id: unit_encoder_1
name: "Encoder Value" binary_sensor:
- platform: m5unit_encoder
m5unit_encoder_id: unit_encoder_1
name: "Encoder Button" output:
- platform: m5unit_encoder
m5unit_encoder_id: unit_encoder_1
led_index: 0
channel: red
id: led0_red
- platform: m5unit_encoder
m5unit_encoder_id: unit_encoder_1
led_index: 0
channel: green
id: led0_green
- platform: m5unit_encoder
m5unit_encoder_id: unit_encoder_1
led_index: 0
channel: blue
id: led0_blue
- platform: m5unit_encoder
m5unit_encoder_id: unit_encoder_1
led_index: 1
channel: red
id: led1_red
- platform: m5unit_encoder
m5unit_encoder_id: unit_encoder_1
led_index: 1
channel: green
id: led1_green
- platform: m5unit_encoder
m5unit_encoder_id: unit_encoder_1
led_index: 1
channel: blue
id: led1_blue light:
- platform: rgb
name: "LED 0"
red: led0_red
green: led0_green
blue: led0_blue
- platform: rgb
name: "LED 1"
red: led1_red
green: led1_green
blue: led1_blue 主要参数说明:
| 参数 | 说明 |
|---|---|
m5unit_encoder_id | 关联到对应的 m5unit_encoder sensor 实例 ID |
led_index | LED 索引,0 或 1,对应两颗 SK6812 LED |
channel | 颜色通道,可选 red、green、blue |
SAVE 保存配置,再点击 INSTALL。
Manual Download。
Download 并选择 Factory format (Previously Modern),将固件保存到本地。
CONNECT。
INSTALL。
Settings > Devices & Services,进入集成管理页面。
Discovered 区域找到已上线的 Unit Encoder 设备,点击 CONFIGURE 并按照提示完成添加。
