Posts: 9,082
Threads: 1,202
Joined: Oct 2020
Reputation:
235
i have said, you can buy any 2000:1 CT sensor, NOT MUST kincony's.
Posts: 22
Threads: 0
Joined: Jan 2025
Reputation:
0
OK, I bought a CT clamp exactly like the 30A one you have in your store. I have this clamp, an old one, and a Shelly meter on the same circuit. Each of them shows different readings. Under load: Shelly shows 528W, YHDC shows 357W, and the other one shows 317W. Without significant load: Shelly shows 188W, YHDC shows 231W, and the other one shows 207W.
Is it possible to configure this so that the readings are accurate? Supposedly, the current transformer I bought for testing doesn’t require calibration, but it still shows absurd values… ;(
Or maybe my m30 is broken??
Posts: 9,082
Threads: 1,202
Joined: Oct 2020
Reputation:
235
can you use kincony's CT sensor do testing? because some CT clamp sensor although they look the same on the outside, they are different inside. just make sure it's 2000:1
Posts: 22
Threads: 0
Joined: Jan 2025
Reputation:
0
I can, but shipping from your store takes a month — I know from experience  I bought it from the official YHDC distributor in Poland and got such results. If you had it on AliExpress, I could order it there, because orders from there arrive within a week.
Posts: 22
Threads: 0
Joined: Jan 2025
Reputation:
0
05-17-2025, 04:25 PM
(This post was last modified: 05-17-2025, 04:36 PM by pawelb.)
I noticed another strange thing, the energy sum also shows nonsense. The total consumption hangs at 1kWh, although induction is working there which consumes a lot of energy, there is no total there at all, my energy measurement does not increase at all. is that correct?
https://www.imgshare.pl/img/7849
Posts: 22
Threads: 0
Joined: Jan 2025
Reputation:
0
05-17-2025, 06:43 PM
(This post was last modified: 05-17-2025, 07:08 PM by pawelb.)
Posts: 22
Threads: 0
Joined: Jan 2025
Reputation:
0
I received a new M30 board and CT clamp for testing, and unfortunately the readings are exactly the same, so it’s not a failure of the board or the clamp but simply the poor quality of the device itself ;( On the new device I immediately installed the KCS firmware and it’s the same ;( Overall, if anyone is looking for a measurement device it’s worth looking elsewhere, because I just sank $260 into a paperweight ;((
Posts: 10
Threads: 1
Joined: Feb 2023
Reputation:
2
Has anyone got the M30 to work and get accurate readings?
All the thread only shows people having issues with getting this to give accurate readings?
Thanks.
Posts: 7
Threads: 0
Joined: Jun 2025
Reputation:
0
Sadly, but I am in the same position. It seems garbage thing and lost money.
I plugged 2 other meters in the same circuit and two of those (well known) measure very similar to 4.9A, but M30 just shows 4.2A.
It is far away from reality. Not sure what to do.
Seller, can I return it? It has not been used and I am willing to pay that 30USD for shipping as cost was way higher. Bought from your shop.
Posts: 7
Threads: 0
Joined: Jun 2025
Reputation:
0
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.
|