简体中文
English
简体中文
日本語

Module13.2 Dual Kmeter ESPHome 组件

Module13.2 Dual Kmeter 是双通道 K 型热电偶温度模块,通过单条 I2C 总线提供两路独立的热电偶输入(Kmeter 1 和 Kmeter 2)以及一路板载内部温度传感器。

1. 组件简介

项目 信息
产品名称 Module13.2 Dual Kmeter
SKU M127
主要功能 双通道 K 型热电偶和内部温度测量
通信接口 I2C
默认 I2C 地址 0x11
ESPHome 组件 dual_kmeter(外部组件)
ESPHome 版本要求 2026.4.4 及以上

2. 组件说明

外部组件引入

external_components:
  - source: github://m5stack/esphome-yaml/components
    components: [dual_kmeter]
    refresh: 0s

配置变量

添加 Sensor 组件,读取 Module13.2 Dual Kmeter 的热电偶或内部温度数据。

sensor:
  - platform: dual_kmeter
    name: "热电偶通道 1"
    channel: KMETER_1
    update_interval: 60s

主要参数:

  • channel (必填): 要读取的测量通道,可选值如下:
描述
KMETER_1 K 型热电偶输入通道 1
KMETER_2 K 型热电偶输入通道 2
INTERNAL 板载内部温度传感器
  • unit(可选):传感器上报的温度单位,可选 CELSIUS(摄氏度)或 FAHRENHEIT(华氏度)。默认为 CELSIUS

  • update_interval(可选,时间): 传感器的轮询间隔。默认为 60s

  • address(可选,int):模块的 I2C 地址。默认为 0x11

  • 其他所有选项请参考 传感器组件

测量行为

热电偶通道(KMETER_1 / KMETER_2

当选择热电偶通道时,组件在每次 update() 周期中写入通道选择寄存器(0x20), 然后轮询就绪标志寄存器(0x30),直到模块表示新一次转换已完成。 组件最长等待 300 ms;若在此时间窗口内标志未置位,则跳过本次更新并记录警告日志:

[W][dual_kmeter]: Kmeter sampling timeout

模块固件以小端字节序的有符号 32 位整数存储温度值,比例因子为 0.01 (例如,寄存器值 2537 代表 25.37 °C)。

内部通道(INTERNAL

内部通道直接读取模块板载热敏电阻,无需等待就绪标志。 该测量值始终可用,不受热电偶通道选择寄存器的影响。

I2C 地址

M5Stack Module Dual Kmeter 默认使用固定 I2C 地址 **0x11**。 若已通过模块的 DIP 拨码开关 更改了硬件地址, 请使用 address 选项指定新地址:

sensor:
  - platform: dual_kmeter
    name: "窑炉温度"
    channel: KMETER_2
    address: 0x12        # 非默认地址

3. 参考案例

yaml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
external_components:
  - source: github://m5stack/esphome-yaml/components
    components: [dual_kmeter]
    refresh: 0s

i2c:
  sda: GPIO21
  scl: GPIO22

sensor:
  # --- 热电偶通道 1,摄氏度 ---
  - platform: dual_kmeter
    name: "窑炉热电偶"
    channel: KMETER_1
    unit: CELSIUS
    update_interval: 30s
    filters:
      - sliding_window_moving_average:
          window_size: 5
          send_every: 5

  # --- 热电偶通道 2,华氏度 ---
  - platform: dual_kmeter
    name: "烤箱热电偶 (°F)"
    channel: KMETER_2
    unit: FAHRENHEIT
    # 为保持单位一致性,默认 unit_of_measurement 为摄氏度
    unit_of_measurement: "°F"
    update_interval: 30s

  # --- 板载内部温度 ---
  - platform: dual_kmeter
    name: "模块内部温度"
    channel: INTERNAL
    update_interval: 60s

CoreS3 与 Module13.2 Dual Kmeter 的使用示例

4. 相关链接

Page Tools
PDF
On This Page