pdf-icon

Unit Step16 Home Assistant 集成

本教程将介绍如何使用 Unit Step16 16 位旋转编码器控制单元集成至 Home Assistant,实现旋钮数值与灯光控制。

准备工作

注意事项

在本教程中,固件使用 ESPHome 2026.1.2 进行编译和上传。如果遇到编译 / 上传问题,请考虑将 ESPHome 切换到此版本。

创建设备

  1. 创建新设备。点击右下角的绿色按钮创建设备。

  2. 创建设备名称。

    2.1 点击 CONTINUE

    2.2 点击 New Device Setup

    2.3 输入设备名称并点击 NEXT

  3. 选择设备类型。

    3.1 点击 ESP32

    3.2 点击 SKIP

  4. 开始编辑 YAML 文件。

    4.1 点击 EDIT。我们可以通过 YAML 文件自定义设备功能。

设备配置

以下是代码的核心部分。下面提供了相关的参考和说明。

外部组件配置

添加 External 组件:

external_components:
  - source: github://m5stack/esphome-yaml/components
    components: unit_step16
    refresh: 0s

unit_step16:
  id: my_step16
  i2c_id: bsp_iic
  address: 0x48

I2C 配置

i2c:
  - id: bsp_iic
    scl: GPIO32
    sda: GPIO26
    scan: True

传感器配置

添加 Sensor 组件:

sensor:
  - platform: unit_step16
    unit_step16_id: my_step16
    name: "Encoder Value"
    update_interval: 100ms
    on_value:
      then:
        - logger.log:
            format: "Encoder value changed to: %.0f"
            args: ["x"]

输出配置

添加 Output 组件:

output:
  - platform: unit_step16
    id: led_brightness_output
    unit_step16_id: my_step16
    channel: led_brightness

  - platform: unit_step16
    id: rgb_brightness_output
    unit_step16_id: my_step16
    channel: rgb_brightness

  - platform: unit_step16
    id: rgb_red_output
    unit_step16_id: my_step16
    channel: rgb_red

  - platform: unit_step16
    id: rgb_green_output
    unit_step16_id: my_step16
    channel: rgb_green

  - platform: unit_step16
    id: rgb_blue_output
    unit_step16_id: my_step16
    channel: rgb_blue

灯光配置

添加 Light 组件:

light:
  - platform: rgb
    id: step16_rgb_light
    name: "Step16 RGB Light"
    red: rgb_red_output
    green: rgb_green_output
    blue: rgb_blue_output
    restore_mode: ALWAYS_ON
    default_transition_length: 0s

  - platform: monochromatic
    id: step16_led_display
    name: "Step16 LED Display"
    output: led_brightness_output
    restore_mode: ALWAYS_ON
    default_transition_length: 0s

数字配置

添加 Number 组件:

number:
  - platform: template
    name: "RGB Brightness"
    min_value: 0
    max_value: 100
    step: 1
    optimistic: true
    initial_value: 50
    on_value:
      then:
        - output.set_level:
            id: rgb_brightness_output
            level: !lambda "return x / 100.0;"

下载和烧录固件

  1. 修改后,点击右上角的 SAVEINSTALL,然后在弹出窗口中选择 Manual Download

  2. 固件编译完成后,点击下载并选择 Factory format (Previously Modern)

    提示
    点击 Unit Step16 查看完整的示例配置。首次构建可能需要一段时间,具体取决于 Home Assistant 主机的性能和网络质量。
  3. 通过 USB Type-C 线缆将设备连接到主机。打开 ESPHome Web 并点击 CONNECT 连接设备。

  4. 找到对应的串口号。

  5. 点击 INSTALL

  6. 选择之前编译的固件,然后点击INSTALL进行上传。

  7. 烧录完成后重新启动设备。

开始使用

  1. 点击 Settings -> Device & services 检查设备。

  2. 我们可以在 Discover 部分找到相应的设备。

  3. 添加设备后,数据将正确显示。

  4. 最后,我们将这些实体添加到仪表板,以下显示了它们的显示结果。

相关视频

On This Page