Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
M30 configure yaml for ESPhome
#60
Here is my YAML file.

Single channel package:
Code:
# Parameters:
# ph - phase
# ch - channel
# modbus_curr_addr - current address
# modbus_pwr_addr - power address
# modbus_energy_addr - energy address
# max_current - max. current
# led_id - ID of LED of a channel
# led_pos - LED position (single digit)
# modbus_ctrl_id - modbus controller id
# light_id - light component id

sensor:
  # Current measurement
  - platform: modbus_controller
    modbus_controller_id: ${modbus_ctrl_id}
    address: ${modbus_curr_addr}
    register_type: holding
    name: m30_${ph}_current_${ch}
    id: m30_${ph}_current_${ch}
    unit_of_measurement: A
    accuracy_decimals: 3
    value_type: U_WORD
    filters:
      - multiply: 0.00098
    on_value:
      - then:
          - lambda: |-
              float current = id(m30_${ph}_current_${ch}).state;
              float red = (current - 0.0) / ${max_current};
              float green = (${max_current} - current) / ${max_current};
              float blue = 0.0;
            
              auto call = id(M30_LED${ph}${ch}).turn_on();
              call.set_brightness(0.6);
              call.set_rgb(red, green, blue);
              call.set_color_mode(ColorMode::RGB);
              call.perform();
 
  # Power measurement
  - platform: modbus_controller
    modbus_controller_id: ${modbus_ctrl_id}
    address: ${modbus_pwr_addr}
    register_type: holding
    name: m30_${ph}_watt_${ch}
    id: m30_${ph}_watt_${ch}
    unit_of_measurement: W
    accuracy_decimals: 1
    value_type: U_WORD
    filters:
      - multiply: 0.1

  # Energy measurement
  - platform: modbus_controller
    modbus_controller_id: ${modbus_ctrl_id}
    address: ${modbus_energy_addr}
    register_type: holding
    name: m30_${ph}_energy_${ch}
    id: m30_${ph}_energy_${ch}
    unit_of_measurement: kWh
    accuracy_decimals: 1
    value_type: U_WORD

light:
  - platform: partition
    name: M30_LED${ph}${ch}
    id: M30_LED${ph}${ch}
    segments:
      - id: ${light_id}
        from: ${led_pos}
        to: ${led_pos}

Base YAML:
Code:
substitutions:
  devicename: esp32-kincony-m30
  friendly: esp32-kincony-m30
  roottopic: device
  max_current_range: "10"

packages:
  # Core
  base: !include common/common-base-eth.yaml

  # Board
  esp32dev: !include boards/esp32dev.yaml

  # Channels
  # phase 1
  ph1ch1: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "1", modbus_curr_addr: 100, modbus_pwr_addr: 111, modbus_energy_addr: 121, max_current: "10", led_id: "1", led_pos: 14, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch2: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "2", modbus_curr_addr: 101, modbus_pwr_addr: 112, modbus_energy_addr: 122, max_current: "10", led_id: "2", led_pos: 13, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch3: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "3", modbus_curr_addr: 102, modbus_pwr_addr: 113, modbus_energy_addr: 123, max_current: "10", led_id: "3", led_pos: 12, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch4: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "4", modbus_curr_addr: 103, modbus_pwr_addr: 114, modbus_energy_addr: 124, max_current: "10", led_id: "4", led_pos: 11, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch5: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "5", modbus_curr_addr: 104, modbus_pwr_addr: 115, modbus_energy_addr: 125, max_current: "10", led_id: "5", led_pos: 10, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch6: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "6", modbus_curr_addr: 105, modbus_pwr_addr: 116, modbus_energy_addr: 126, max_current: "10", led_id: "6", led_pos: 9, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch7: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "7", modbus_curr_addr: 106, modbus_pwr_addr: 117, modbus_energy_addr: 127, max_current: "10", led_id: "7", led_pos: 8, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch8: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "8", modbus_curr_addr: 107, modbus_pwr_addr: 118, modbus_energy_addr: 128, max_current: "10", led_id: "8", led_pos: 7, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch9: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "9", modbus_curr_addr: 108, modbus_pwr_addr: 119, modbus_energy_addr: 129, max_current: "10", led_id: "9", led_pos: 6, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph1ch10: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "1", ch: "10", modbus_curr_addr: 109, modbus_pwr_addr: 120, modbus_energy_addr: 130, max_current: "10", led_id: "10", led_pos: 5, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  # phase 2
  ph2ch1: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "2", ch: "1", modbus_curr_addr: 200, modbus_pwr_addr: 211, modbus_energy_addr: 221, max_current: "10", led_id: "11", led_pos: 4, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph2ch2: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "2", ch: "2", modbus_curr_addr: 201, modbus_pwr_addr: 212, modbus_energy_addr: 222, max_current: "10", led_id: "12", led_pos: 3, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph2ch3: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "2", ch: "3", modbus_curr_addr: 202, modbus_pwr_addr: 213, modbus_energy_addr: 223, max_current: "10", led_id: "13", led_pos: 2, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph2ch4: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "2", ch: "4", modbus_curr_addr: 203, modbus_pwr_addr: 214, modbus_energy_addr: 224, max_current: "10", led_id: "14", led_pos: 1, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph2ch5: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "2", ch: "5", modbus_curr_addr: 204, modbus_pwr_addr: 215, modbus_energy_addr: 225, max_current: "10", led_id: "15", led_pos: 0, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph2ch6: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "2", ch: "6", modbus_curr_addr: 205, modbus_pwr_addr: 216, modbus_energy_addr: 226, max_current: "10", led_id: "16", led_pos: 15, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
  ph2ch7: !include {file: common/kincony-m30-chan.yaml, vars:{ph: "2", ch: "7", modbus_curr_addr: 206, modbus_pwr_addr: 217, modbus_energy_addr: 227, max_current: "10", led_id: "17", led_pos: 16, modbus_ctrl_id: "modbus_hub_m30", light_id: "light1"}}
<.... the rest of the channels ... >

  # Voltage, temperature, energy sum, frequency (for 3 phases)
  ph1: !include {file: common/kincony-m30-ph.yaml, vars:{ph: "1", modbus_voltage_addr: 110, modbus_temp_addr: 133, modbus_energy_sum_addr: 131, modbus_freq_addr: 132, modbus_ctrl_id: "modbus_hub_m30"}}
  ph2: !include {file: common/kincony-m30-ph.yaml, vars:{ph: "2", modbus_voltage_addr: 210, modbus_temp_addr: 233, modbus_energy_sum_addr: 231, modbus_freq_addr: 232, modbus_ctrl_id: "modbus_hub_m30"}}
  ph3: !include {file: common/kincony-m30-ph.yaml, vars:{ph: "3", modbus_voltage_addr: 310, modbus_temp_addr: 333, modbus_energy_sum_addr: 331, modbus_freq_addr: 332, modbus_ctrl_id: "modbus_hub_m30"}}

# Configuration >>

ethernet:
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk_mode: GPIO17_OUT
  phy_addr: 0

uart:
  id: modbus_uart
  rx_pin: 32
  tx_pin: 33
  baud_rate: 115200
  stop_bits: 1
  data_bits: 8
  parity: NONE


modbus:
  id: modbus_hub
  uart_id: modbus_uart


modbus_controller:
  - id: modbus_hub_m30
    address: 1
    modbus_id: modbus_hub
    update_interval: 5s

light:
  - platform: esp32_rmt_led_strip
    id: light1
    rgb_order: GRB
    pin: GPIO12
    num_leds: 30
    rmt_channel: 0
    chipset: ws2812

Seller said calibration could be done, but I do not have appropriate equipment to do that. 

Still, I am interested in returning this item if it cannot show accurate readings based on written claims.
Reply


Messages In This Thread
M30 configure yaml for ESPhome - by admin - 01-05-2024, 11:11 AM
RE: M30 configure yaml for ESPhome - by admin - 06-06-2024, 06:17 AM
RE: M30 configure yaml for ESPhome - by admin - 06-24-2024, 10:05 AM
RE: M30 configure yaml for ESPhome - by admin - 06-25-2024, 01:07 AM
RE: M30 configure yaml for ESPhome - by admin - 06-27-2024, 12:18 AM
RE: M30 configure yaml for ESPhome - by admin - 07-07-2024, 05:50 AM
RE: M30 configure yaml for ESPhome - by admin - 09-23-2024, 11:26 PM
RE: M30 configure yaml for ESPhome - by Gyro - 10-29-2024, 03:12 PM
RE: M30 configure yaml for ESPhome - by admin - 10-29-2024, 11:24 PM
RE: M30 configure yaml for ESPhome - by pawelb - 01-30-2025, 08:48 PM
RE: M30 configure yaml for ESPhome - by admin - 01-31-2025, 12:36 AM
RE: M30 configure yaml for ESPhome - by admin - 04-11-2025, 10:11 AM
RE: M30 configure yaml for ESPhome - by admin - 04-12-2025, 01:56 AM
RE: M30 configure yaml for ESPhome - by admin - 04-12-2025, 11:32 PM
RE: M30 configure yaml for ESPhome - by stephane - 04-21-2025, 02:11 PM
RE: M30 configure yaml for ESPhome - by admin - 04-21-2025, 11:26 PM
RE: M30 configure yaml for ESPhome - by stephane - 04-22-2025, 04:35 AM
RE: M30 configure yaml for ESPhome - by stephane - 04-22-2025, 06:12 AM
RE: M30 configure yaml for ESPhome - by stephane - 04-22-2025, 10:35 AM
RE: M30 configure yaml for ESPhome - by admin - 04-22-2025, 09:14 AM
RE: M30 configure yaml for ESPhome - by admin - 04-22-2025, 11:33 AM
RE: M30 configure yaml for ESPhome - by stephane - 04-22-2025, 11:43 AM
RE: M30 configure yaml for ESPhome - by uslackr - 04-22-2025, 09:13 PM
RE: M30 configure yaml for ESPhome - by admin - 04-22-2025, 10:57 PM
RE: M30 configure yaml for ESPhome - by stephane - 04-25-2025, 04:34 PM
RE: M30 configure yaml for ESPhome - by admin - 04-25-2025, 11:51 PM
RE: M30 configure yaml for ESPhome - by pawelb - 05-11-2025, 07:26 PM
RE: M30 configure yaml for ESPhome - by admin - 05-12-2025, 01:17 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-12-2025, 06:28 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-12-2025, 08:33 AM
RE: M30 configure yaml for ESPhome - by admin - 05-12-2025, 08:58 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-12-2025, 11:06 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-13-2025, 06:33 AM
RE: M30 configure yaml for ESPhome - by admin - 05-13-2025, 10:52 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-13-2025, 05:08 PM
RE: M30 configure yaml for ESPhome - by admin - 05-13-2025, 09:58 PM
RE: M30 configure yaml for ESPhome - by pawelb - 05-14-2025, 05:55 AM
RE: M30 configure yaml for ESPhome - by admin - 05-14-2025, 08:17 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-14-2025, 09:17 AM
RE: M30 configure yaml for ESPhome - by admin - 05-14-2025, 10:20 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-14-2025, 10:45 AM
RE: M30 configure yaml for ESPhome - by admin - 05-14-2025, 11:08 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-16-2025, 03:19 PM
RE: M30 configure yaml for ESPhome - by admin - 05-17-2025, 12:21 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-17-2025, 11:09 AM
RE: M30 configure yaml for ESPhome - by pawelb - 05-17-2025, 04:25 PM
RE: M30 configure yaml for ESPhome - by pawelb - 05-17-2025, 06:43 PM
RE: M30 configure yaml for ESPhome - by pawelb - 06-03-2025, 05:36 AM
RE: M30 configure yaml for ESPhome - by jhobson - 06-05-2025, 10:21 AM
RE: M30 configure yaml for ESPhome - by roflas - 06-11-2025, 07:24 AM
RE: M30 configure yaml for ESPhome - by roflas - 06-11-2025, 12:55 PM
RE: M30 configure yaml for ESPhome - by pawelb - 06-12-2025, 02:48 PM
RE: M30 configure yaml for ESPhome - by roflas - 06-12-2025, 08:10 PM
RE: M30 configure yaml for ESPhome - by admin - 06-19-2025, 10:39 AM
RE: M30 configure yaml for ESPhome - by pawelb - 06-19-2025, 05:14 PM
RE: M30 configure yaml for ESPhome - by admin - 06-19-2025, 11:47 PM
RE: M30 configure yaml for ESPhome - by pawelb - 06-20-2025, 06:35 AM
RE: M30 configure yaml for ESPhome - by admin - 06-21-2025, 02:22 AM
RE: M30 configure yaml for ESPhome - by pawelb - 06-21-2025, 04:05 PM
RE: M30 configure yaml for ESPhome - by admin - 06-22-2025, 01:17 AM
RE: M30 configure yaml for ESPhome - by roflas - 06-28-2025, 06:26 PM
RE: M30 configure yaml for ESPhome - by admin - 06-28-2025, 11:26 PM
RE: M30 configure yaml for ESPhome - by roflas - 06-29-2025, 06:39 PM
RE: M30 configure yaml for ESPhome - by admin - 06-29-2025, 11:45 PM
RE: M30 configure yaml for ESPhome - by pawelb - 07-01-2025, 12:48 PM
RE: M30 configure yaml for ESPhome - by admin - 07-01-2025, 11:39 PM
RE: M30 configure yaml for ESPhome - by pawelb - 07-02-2025, 04:47 PM
RE: M30 configure yaml for ESPhome - by admin - 07-03-2025, 02:35 AM
RE: M30 configure yaml for ESPhome - by pawelb - 07-03-2025, 03:24 PM
RE: M30 configure yaml for ESPhome - by roflas - 07-11-2025, 03:49 PM
RE: M30 configure yaml for ESPhome - by sc00bs - 07-24-2025, 08:35 AM
RE: M30 configure yaml for ESPhome - by roflas - 09-04-2025, 08:38 AM
RE: M30 configure yaml for ESPhome - by edalquist - 02-01-2026, 05:32 AM

Forum Jump:


Users browsing this thread:
1 Guest(s)