-
-
Save edalquist/42c6f802b25af98da4046da66ba41d59 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| substitutions: | |
| esphome: | |
| name: m30 | |
| friendly_name: M30 Power Monitor | |
| esp32: | |
| board: esp32dev | |
| framework: | |
| type: arduino | |
| # Enable logging | |
| logger: | |
| # debug | |
| # Enable Home Assistant API | |
| api: | |
| encryption: | |
| key: "PUT_YOUR_KEY_HERE" | |
| ota: | |
| - platform: esphome | |
| password: "PUT_YOUR_KEY_HERE" | |
| ethernet: | |
| type: LAN8720 | |
| mdc_pin: GPIO23 | |
| mdio_pin: GPIO18 | |
| clk_mode: GPIO17_OUT | |
| phy_addr: 0 | |
| number: | |
| - platform: template | |
| name: "LED 01 Max Current Range" | |
| id: led_01_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 02 Max Current Range" | |
| id: led_02_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 03 Max Current Range" | |
| id: led_03_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 04 Max Current Range" | |
| id: led_04_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 05 Max Current Range" | |
| id: led_05_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 06 Max Current Range" | |
| id: led_06_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 07 Max Current Range" | |
| id: led_07_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 08 Max Current Range" | |
| id: led_08_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 09 Max Current Range" | |
| id: led_09_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 10 Max Current Range" | |
| id: led_10_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 11 Max Current Range" | |
| id: led_11_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 12 Max Current Range" | |
| id: led_12_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 13 Max Current Range" | |
| id: led_13_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 14 Max Current Range" | |
| id: led_14_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 15 Max Current Range" | |
| id: led_15_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 16 Max Current Range" | |
| id: led_16_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 17 Max Current Range" | |
| id: led_17_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 18 Max Current Range" | |
| id: led_18_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 19 Max Current Range" | |
| id: led_19_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 20 Max Current Range" | |
| id: led_20_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 21 Max Current Range" | |
| id: led_21_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 22 Max Current Range" | |
| id: led_22_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 23 Max Current Range" | |
| id: led_23_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 24 Max Current Range" | |
| id: led_24_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 25 Max Current Range" | |
| id: led_25_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 26 Max Current Range" | |
| id: led_26_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 27 Max Current Range" | |
| id: led_27_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 28 Max Current Range" | |
| id: led_28_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 29 Max Current Range" | |
| id: led_29_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED 30 Max Current Range" | |
| id: led_30_max_current_range | |
| unit_of_measurement: "A" | |
| min_value: 15 | |
| max_value: 60 | |
| step: 5 | |
| initial_value: 10 | |
| optimistic: true | |
| restore_value: true | |
| - platform: template | |
| name: "LED Brightness" | |
| id: status_brightness_number | |
| unit_of_measurement: "%" | |
| min_value: 0 | |
| max_value: 100 | |
| step: 1 | |
| initial_value: 20 | |
| optimistic: true | |
| restore_value: true | |
| 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 | |
| sensor: | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 100 | |
| register_type: holding | |
| name: "L1 01 Current" | |
| id: l1_01_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_01_current).state; | |
| float max_current = id(led_01_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_01).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 101 | |
| register_type: holding | |
| name: "L1 02 Current" | |
| id: l1_02_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_02_current).state; | |
| float max_current = id(led_02_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_02).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 102 | |
| register_type: holding | |
| name: "L1 03 Current" | |
| id: l1_03_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_03_current).state; | |
| float max_current = id(led_03_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_03).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 103 | |
| register_type: holding | |
| name: "L1 04 Current" | |
| id: l1_04_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_04_current).state; | |
| float max_current = id(led_04_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_04).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 104 | |
| register_type: holding | |
| name: "L1 05 Current" | |
| id: l1_05_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_05_current).state; | |
| float max_current = id(led_05_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_05).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 105 | |
| register_type: holding | |
| name: "L1 06 Current" | |
| id: l1_06_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_06_current).state; | |
| float max_current = id(led_06_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_06).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 106 | |
| register_type: holding | |
| name: "L1 07 Current" | |
| id: l1_07_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_07_current).state; | |
| float max_current = id(led_07_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_07).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 107 | |
| register_type: holding | |
| name: "L1 08 Current" | |
| id: l1_08_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_08_current).state; | |
| float max_current = id(led_08_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_08).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 108 | |
| register_type: holding | |
| name: "L1 09 Current" | |
| id: l1_09_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_09_current).state; | |
| float max_current = id(led_09_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_09).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 109 | |
| register_type: holding | |
| name: "L1 10 Current" | |
| id: l1_10_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l1_10_current).state; | |
| float max_current = id(led_10_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_10).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 110 | |
| register_type: holding | |
| name: "L1 Voltage" | |
| id: l1_voltage | |
| unit_of_measurement: V | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.01 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 111 | |
| register_type: holding | |
| name: "L1 01 Watt" | |
| id: l1_01_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 112 | |
| register_type: holding | |
| name: "L1 02 Watt" | |
| id: l1_02_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 113 | |
| register_type: holding | |
| name: "L1 03 Watt" | |
| id: l1_03_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 114 | |
| register_type: holding | |
| name: "L1 04 Watt" | |
| id: l1_04_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 115 | |
| register_type: holding | |
| name: "L1 05 Watt" | |
| id: l1_05_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 116 | |
| register_type: holding | |
| name: "L1 06 Watt" | |
| id: l1_06_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 117 | |
| register_type: holding | |
| name: "L1 07 Watt" | |
| id: l1_07_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 118 | |
| register_type: holding | |
| name: "L1 08 Watt" | |
| id: l1_08_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 119 | |
| register_type: holding | |
| name: "L1 09 Watt" | |
| id: l1_09_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 120 | |
| register_type: holding | |
| name: "L1 10 Watt" | |
| id: l1_10_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 121 | |
| register_type: holding | |
| name: "L1 01 Energy" | |
| id: l1_01_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 122 | |
| register_type: holding | |
| name: "L1 02 Energy" | |
| id: l1_02_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 123 | |
| register_type: holding | |
| name: "L1 03 Energy" | |
| id: l1_03_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 124 | |
| register_type: holding | |
| name: "L1 04 Energy" | |
| id: l1_04_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 125 | |
| register_type: holding | |
| name: "L1 05 Energy" | |
| id: l1_05_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 126 | |
| register_type: holding | |
| name: "L1 06 Energy" | |
| id: l1_06_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 127 | |
| register_type: holding | |
| name: "L1 07 Energy" | |
| id: l1_07_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 128 | |
| register_type: holding | |
| name: "L1 08 Energy" | |
| id: l1_08_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 129 | |
| register_type: holding | |
| name: "L1 09 Energy" | |
| id: l1_09_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 130 | |
| register_type: holding | |
| name: "L1 10 Energy" | |
| id: l1_10_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 131 | |
| register_type: holding | |
| name: "L1 Energy Sum" | |
| id: l1_energy_sum | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 132 | |
| register_type: holding | |
| name: "L1 Frequency" | |
| id: l1_frequency | |
| unit_of_measurement: Hz | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.01 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 133 | |
| register_type: holding | |
| name: "L1 Temperature" | |
| id: l1_temperature | |
| unit_of_measurement: °C | |
| device_class: temperature | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 200 | |
| register_type: holding | |
| name: "L2 11 Current" | |
| id: l2_11_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_11_current).state; | |
| float max_current = id(led_11_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_11).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 201 | |
| register_type: holding | |
| name: "L2 12 Current" | |
| id: l2_12_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_12_current).state; | |
| float max_current = id(led_12_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_12).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 202 | |
| register_type: holding | |
| name: "L2 13 Current" | |
| id: l2_13_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_13_current).state; | |
| float max_current = id(led_13_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_13).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 203 | |
| register_type: holding | |
| name: "L2 14 Current" | |
| id: l2_14_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_14_current).state; | |
| float max_current = id(led_14_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_14).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 204 | |
| register_type: holding | |
| name: "L2 15 Current" | |
| id: l2_15_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_15_current).state; | |
| float max_current = id(led_15_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_15).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 205 | |
| register_type: holding | |
| name: "L2 16 Current" | |
| id: l2_16_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_16_current).state; | |
| float max_current = id(led_16_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_16).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 206 | |
| register_type: holding | |
| name: "L2 17 Current" | |
| id: l2_17_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_17_current).state; | |
| float max_current = id(led_17_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_17).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 207 | |
| register_type: holding | |
| name: "L2 18 Current" | |
| id: l2_18_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_18_current).state; | |
| float max_current = id(led_18_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_18).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 208 | |
| register_type: holding | |
| name: "L2 19 Current" | |
| id: l2_19_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_19_current).state; | |
| float max_current = id(led_19_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_19).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 209 | |
| register_type: holding | |
| name: "L2 20 Current" | |
| id: l2_20_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l2_20_current).state; | |
| float max_current = id(led_20_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_20).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 210 | |
| register_type: holding | |
| name: "L2 Voltage" | |
| id: l2_voltage | |
| unit_of_measurement: V | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.01 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 211 | |
| register_type: holding | |
| name: "L2 11 Watt" | |
| id: l2_11_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 212 | |
| register_type: holding | |
| name: "L2 12 Watt" | |
| id: l2_12_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 213 | |
| register_type: holding | |
| name: "L2 13 Watt" | |
| id: l2_13_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 214 | |
| register_type: holding | |
| name: "L2 14 Watt" | |
| id: l2_14_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 215 | |
| register_type: holding | |
| name: "L2 15 Watt" | |
| id: l2_15_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 216 | |
| register_type: holding | |
| name: "L2 16 Watt" | |
| id: l2_16_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 217 | |
| register_type: holding | |
| name: "L2 17 Watt" | |
| id: l2_17_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 218 | |
| register_type: holding | |
| name: "L2 18 Watt" | |
| id: l2_18_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 219 | |
| register_type: holding | |
| name: "L2 19 Watt" | |
| id: l2_19_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 220 | |
| register_type: holding | |
| name: "L2 20 Watt" | |
| id: l2_20_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 221 | |
| register_type: holding | |
| name: "L2 11 Energy" | |
| id: l2_11_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 222 | |
| register_type: holding | |
| name: "L2 12 Energy" | |
| id: l2_12_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 223 | |
| register_type: holding | |
| name: "L2 13 Energy" | |
| id: l2_13_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 224 | |
| register_type: holding | |
| name: "L2 14 Energy" | |
| id: l2_14_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 225 | |
| register_type: holding | |
| name: "L2 15 Energy" | |
| id: l2_15_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 226 | |
| register_type: holding | |
| name: "L2 16 Energy" | |
| id: l2_16_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 227 | |
| register_type: holding | |
| name: "L2 17 Energy" | |
| id: l2_17_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 228 | |
| register_type: holding | |
| name: "L2 18 Energy" | |
| id: l2_18_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 229 | |
| register_type: holding | |
| name: "L2 19 Energy" | |
| id: l2_19_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 230 | |
| register_type: holding | |
| name: "L2 20 Energy" | |
| id: l2_20_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 231 | |
| register_type: holding | |
| name: "L2 Energy Sum" | |
| id: l2_energy_sum | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 232 | |
| register_type: holding | |
| name: "L2 Frequency" | |
| id: l2_frequency | |
| unit_of_measurement: Hz | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.01 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 233 | |
| register_type: holding | |
| name: "L2 Temperature" | |
| id: l2_temperature | |
| unit_of_measurement: °C | |
| device_class: temperature | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 300 | |
| register_type: holding | |
| name: "L3 21 Current" | |
| id: l3_21_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_21_current).state; | |
| float max_current = id(led_21_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_21).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 301 | |
| register_type: holding | |
| name: "L3 22 Current" | |
| id: l3_22_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_22_current).state; | |
| float max_current = id(led_22_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_22).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 302 | |
| register_type: holding | |
| name: "L3 23 Current" | |
| id: l3_23_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_23_current).state; | |
| float max_current = id(led_23_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_23).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 303 | |
| register_type: holding | |
| name: "L3 24 Current" | |
| id: l3_24_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_24_current).state; | |
| float max_current = id(led_24_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_24).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 304 | |
| register_type: holding | |
| name: "L3 25 Current" | |
| id: l3_25_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_25_current).state; | |
| float max_current = id(led_25_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_25).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 305 | |
| register_type: holding | |
| name: "L3 26 Current" | |
| id: l3_26_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_26_current).state; | |
| float max_current = id(led_26_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_26).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 306 | |
| register_type: holding | |
| name: "L3 27 Current" | |
| id: l3_27_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_27_current).state; | |
| float max_current = id(led_27_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_27).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 307 | |
| register_type: holding | |
| name: "L3 28 Current" | |
| id: l3_28_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_28_current).state; | |
| float max_current = id(led_28_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_28).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 308 | |
| register_type: holding | |
| name: "L3 29 Current" | |
| id: l3_29_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_29_current).state; | |
| float max_current = id(led_29_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_29).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 309 | |
| register_type: holding | |
| name: "L3 30 Current" | |
| id: l3_30_current | |
| unit_of_measurement: A | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 3 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.00098 | |
| on_value: | |
| - then: | |
| - lambda: |- | |
| float current = id(l3_30_current).state; | |
| float max_current = id(led_30_max_current_range).state; | |
| float red = (current - 0.0) / max_current; | |
| float green = (max_current - current) / max_current; | |
| float blue = 0.0; | |
| auto call = id(led_30).turn_on(); | |
| call.set_brightness(id(status_brightness_number).state / 100.0); | |
| call.set_rgb(red, green, blue); | |
| call.set_color_mode(ColorMode::RGB); | |
| call.perform(); | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 310 | |
| register_type: holding | |
| name: "L3 Voltage" | |
| id: l3_voltage | |
| unit_of_measurement: V | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.01 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 311 | |
| register_type: holding | |
| name: "L3 21 Watt" | |
| id: l3_21_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 312 | |
| register_type: holding | |
| name: "L3 22 Watt" | |
| id: l3_22_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 313 | |
| register_type: holding | |
| name: "L3 23 Watt" | |
| id: l3_23_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 314 | |
| register_type: holding | |
| name: "L3 24 Watt" | |
| id: l3_24_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 315 | |
| register_type: holding | |
| name: "L3 25 Watt" | |
| id: l3_25_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 316 | |
| register_type: holding | |
| name: "L3 26 Watt" | |
| id: l3_26_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 317 | |
| register_type: holding | |
| name: "L3 27 Watt" | |
| id: l3_27_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 318 | |
| register_type: holding | |
| name: "L3 28 Watt" | |
| id: l3_28_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 319 | |
| register_type: holding | |
| name: "L3 29 Watt" | |
| id: l3_29_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 320 | |
| register_type: holding | |
| name: "L3 30 Watt" | |
| id: l3_30_watt | |
| unit_of_measurement: W | |
| device_class: energy | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 321 | |
| register_type: holding | |
| name: "L3 21 Energy" | |
| id: l3_21_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 322 | |
| register_type: holding | |
| name: "L3 22 Energy" | |
| id: l3_22_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 323 | |
| register_type: holding | |
| name: "L3 23 Energy" | |
| id: l3_23_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 324 | |
| register_type: holding | |
| name: "L3 24 Energy" | |
| id: l3_24_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 325 | |
| register_type: holding | |
| name: "L3 25 Energy" | |
| id: l3_25_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 326 | |
| register_type: holding | |
| name: "L3 26 Energy" | |
| id: l3_26_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 327 | |
| register_type: holding | |
| name: "L3 27 Energy" | |
| id: l3_27_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 328 | |
| register_type: holding | |
| name: "L3 28 Energy" | |
| id: l3_28_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 329 | |
| register_type: holding | |
| name: "L3 29 Energy" | |
| id: l3_29_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 330 | |
| register_type: holding | |
| name: "L3 30 Energy" | |
| id: l3_30_energy | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 331 | |
| register_type: holding | |
| name: "L3 Energy Sum" | |
| id: l3_energy_sum | |
| unit_of_measurement: kWh | |
| device_class: energy | |
| state_class: total_increasing | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 332 | |
| register_type: holding | |
| name: "L3 Frequency" | |
| id: l3_frequency | |
| unit_of_measurement: Hz | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.01 | |
| - platform: modbus_controller | |
| modbus_controller_id: modbus_hub_m30 | |
| address: 333 | |
| register_type: holding | |
| name: "L3 Temperature" | |
| id: l3_temperature | |
| unit_of_measurement: °C | |
| device_class: temperature | |
| state_class: measurement | |
| accuracy_decimals: 1 | |
| value_type: U_WORD | |
| filters: | |
| - multiply: 0.1 | |
| light: | |
| - platform: partition | |
| name: "LED 01" | |
| id: led_01 | |
| segments: | |
| - id: light_strip | |
| from: 14 | |
| to: 14 | |
| - platform: partition | |
| name: "LED 02" | |
| id: led_02 | |
| segments: | |
| - id: light_strip | |
| from: 13 | |
| to: 13 | |
| - platform: partition | |
| name: "LED 03" | |
| id: led_03 | |
| segments: | |
| - id: light_strip | |
| from: 12 | |
| to: 12 | |
| - platform: partition | |
| name: "LED 04" | |
| id: led_04 | |
| segments: | |
| - id: light_strip | |
| from: 11 | |
| to: 11 | |
| - platform: partition | |
| name: "LED 05" | |
| id: led_05 | |
| segments: | |
| - id: light_strip | |
| from: 10 | |
| to: 10 | |
| - platform: partition | |
| name: "LED 06" | |
| id: led_06 | |
| segments: | |
| - id: light_strip | |
| from: 9 | |
| to: 9 | |
| - platform: partition | |
| name: "LED 07" | |
| id: led_07 | |
| segments: | |
| - id: light_strip | |
| from: 8 | |
| to: 8 | |
| - platform: partition | |
| name: "LED 08" | |
| id: led_08 | |
| segments: | |
| - id: light_strip | |
| from: 7 | |
| to: 7 | |
| - platform: partition | |
| name: "LED 09" | |
| id: led_09 | |
| segments: | |
| - id: light_strip | |
| from: 6 | |
| to: 6 | |
| - platform: partition | |
| name: "LED 10" | |
| id: led_10 | |
| segments: | |
| - id: light_strip | |
| from: 5 | |
| to: 5 | |
| - platform: partition | |
| name: "LED 11" | |
| id: led_11 | |
| segments: | |
| - id: light_strip | |
| from: 4 | |
| to: 4 | |
| - platform: partition | |
| name: "LED 12" | |
| id: led_12 | |
| segments: | |
| - id: light_strip | |
| from: 3 | |
| to: 3 | |
| - platform: partition | |
| name: "LED 13" | |
| id: led_13 | |
| segments: | |
| - id: light_strip | |
| from: 2 | |
| to: 2 | |
| - platform: partition | |
| name: "LED 14" | |
| id: led_14 | |
| segments: | |
| - id: light_strip | |
| from: 1 | |
| to: 1 | |
| - platform: partition | |
| name: "LED 15" | |
| id: led_15 | |
| segments: | |
| - id: light_strip | |
| from: 0 | |
| to: 0 | |
| - platform: partition | |
| name: "LED 16" | |
| id: led_16 | |
| segments: | |
| - id: light_strip | |
| from: 15 | |
| to: 15 | |
| - platform: partition | |
| name: "LED 17" | |
| id: led_17 | |
| segments: | |
| - id: light_strip | |
| from: 16 | |
| to: 16 | |
| - platform: partition | |
| name: "LED 18" | |
| id: led_18 | |
| segments: | |
| - id: light_strip | |
| from: 17 | |
| to: 17 | |
| - platform: partition | |
| name: "LED 19" | |
| id: led_19 | |
| segments: | |
| - id: light_strip | |
| from: 18 | |
| to: 18 | |
| - platform: partition | |
| name: "LED 20" | |
| id: led_20 | |
| segments: | |
| - id: light_strip | |
| from: 19 | |
| to: 19 | |
| - platform: partition | |
| name: "LED 21" | |
| id: led_21 | |
| segments: | |
| - id: light_strip | |
| from: 20 | |
| to: 20 | |
| - platform: partition | |
| name: "LED 22" | |
| id: led_22 | |
| segments: | |
| - id: light_strip | |
| from: 21 | |
| to: 21 | |
| - platform: partition | |
| name: "LED 23" | |
| id: led_23 | |
| segments: | |
| - id: light_strip | |
| from: 22 | |
| to: 22 | |
| - platform: partition | |
| name: "LED 24" | |
| id: led_24 | |
| segments: | |
| - id: light_strip | |
| from: 23 | |
| to: 23 | |
| - platform: partition | |
| name: "LED 25" | |
| id: led_25 | |
| segments: | |
| - id: light_strip | |
| from: 24 | |
| to: 24 | |
| - platform: partition | |
| name: "LED 26" | |
| id: led_26 | |
| segments: | |
| - id: light_strip | |
| from: 25 | |
| to: 25 | |
| - platform: partition | |
| name: "LED 27" | |
| id: led_27 | |
| segments: | |
| - id: light_strip | |
| from: 26 | |
| to: 26 | |
| - platform: partition | |
| name: "LED 28" | |
| id: led_28 | |
| segments: | |
| - id: light_strip | |
| from: 27 | |
| to: 27 | |
| - platform: partition | |
| name: "LED 29" | |
| id: led_29 | |
| segments: | |
| - id: light_strip | |
| from: 28 | |
| to: 28 | |
| - platform: partition | |
| name: "LED 30" | |
| id: led_30 | |
| segments: | |
| - id: light_strip | |
| from: 29 | |
| to: 29 | |
| - platform: esp32_rmt_led_strip | |
| id: light_strip | |
| rgb_order: GRB | |
| pin: GPIO12 | |
| num_leds: 30 | |
| chipset: ws2812 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment