SDM120M + UART-RS485 + ESP32 = no data

Dear all,

I've been struggling for hours and hours now to get this setup working, so it's time to ask for some help :slight_smile:
This is my first ESPHome appliance/experience and I'm trying to use ESPHome (current version: 2026.6.4) to get data from the SDM120M in HomeAssistant and the internet states ESPHome has a good solution for that :wink:
I have a

  • Eastron SDM120M

  • this UART-RS485 converter (UART TTL to RS485 Two-way Converter | Elecrow) connected ground-ground, A-A and B-B

  • a Doit 38 pin ESP32-32D connected with pin 16 and 17 to TX/RX and vin to vcc and gnd to gnd while powered by USB

  • I figured I have the UART TX/RX and the ESPHome config for this module allright since the UART-RS485 module repeats and the ESP receives the messages send

However... I haven't succeded in getting any response from the meter yet.
I clicked on the meter and discovered some parameters and used those:

  • id = 1
  • baud = 9600
  • prty = none

I allready succeeded in updating the firmware via OTA and have this config right now:

esphome:
  name: rs548-kwh-meter-pv
  friendly_name: RS548-kWh-meter pv
  area: Meterkast

esp32:
  board: esp32doit-devkit-v1
  framework:
    type: esp-idf
    advanced:
      enable_full_printf: true
  variant: ESP32
logger:
  level: DEBUG

api:
  encryption:
    key: *******
  
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  ap:
    ssid: sdm120m-reader-AP
    password: *********

# UART voor RS485 (TTL side)
uart:
  id: uart_rs485
  tx_pin:
    number: GPIO16
  rx_pin: GPIO17
  baud_rate: 9600
  data_bits: 8
  parity: NONE
  stop_bits: 1
  debug:
    direction: BOTH
    dummy_receiver: false
    after:
      delimiter: \n
    debug_prefix: "[UART-RS485] "

# Modbus component (geen DE/RE pin nodig bij mijn Elecrow board)
sensor:
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x1
    total_power:
      name: Total Power
      device_class: power
      unit_of_measurement: W
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x2
    total_power:
      name: Total Power2
      device_class: power
      unit_of_measurement: W
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x3
    total_power:
      name: Total Power3
      device_class: power
      unit_of_measurement: W
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x4
    total_power:
      name: Total Power4
      device_class: power
      unit_of_measurement: W
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x5
    total_power:
      name: Total Power5
      device_class: power
      unit_of_measurement: W
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x6
    total_power:
      name: Total Power6
      device_class: power
      unit_of_measurement: W
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x7
    total_power:
      name: Total Power7
      device_class: power
      unit_of_measurement: W
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x8
    total_power:
      name: Total Power8
      device_class: power
      unit_of_measurement: W
  - platform: sdm_meter
    modbus_id: modbus1
    address: 0x9
    total_power:
      name: Total Power9
      device_class: power
      unit_of_measurement: W
  
ota:
  - platform: esphome

captive_portal:
  id: sdm120m_reader_AP

modbus:
  - id: modbus1
  role: client

As you can see I just tried different addresses to see if that is the problem, without any luck.
I really don't know what is going wrong, Is there anyone who sees what I did wrong or what I can do to check where the problem is?

I'm not everyday able to fysically check the setup so if nessecary to check it locally it takes some time. So I would prefer to do a check via new firmware over fysical acces, but solving the problem is the main priority.

Looking out for your answers :smiley:

edit: added yaml code in code tags</>

First of all, post your yaml, using code tags </>.
Also photo of your wiring.
Are your wirres soldered to converter? Tx to TX and Rx to Rx? Did you try to swap A/B?
You shouldn't power the converter from Vin if you don't use level shifters, esp32 is 3.3V MCU.

Thank you for your reply, I added the code in code tags to the original post.
Regarding wiring; I soldered the UART-RS485 with solidcore wires to the ESP, I did the rx/tx the right way I think; switching them around in software made responses of the RS485 module disappear.
I soldered a screwterminal on the UART-RS485 module to screw the wire from SDM120M to UART-RS485 module on both ends.
According to the specifications of the UART-RS485 module is should accept both 3,3V and 5,0V on VCC. Just curious; why should I power the module with 3,3V while it could handle 5,0v too? Is the voltage on VCC the same as the module outputs on TX/RX on the module, is that the reason? And if so, how can it be that I seem to get some response of the UART-RS485 module?
Pictures coming soon.

No-one here likes to spend time here zooming screenshots. Logs should be posted with code tags as well.

But you should not get the sent request back as received.
rx-rx and tx-tx is the right way with these modules.

Max485 is 5V chip, but it works pretty reliably at 3.3V as well. Esp instead is 3.3V chip and combining the with different voltages violates several things. Likely not the main problem here but neither good choice and could damage esp.

Edit:
If you posted your whole yaml, it's missing completely modbus_controller.
On the other hand your sensor uses platform: sdm_meter which according to docs doesn't require modbus config at all . I'm not familiar with this component but either use it like the example code on documentation or go with modbus_controller.

Also according to docs, 120M default baud rate is 2400. I don't have an idea what you mean with clicked..:

I hope these pictures give you the information you where looking for. This is a temporary setup. As soon as this is working properlyI'm going to give it a box/cover to make it less vulnrable to dust, touching, etc.




No they don't.

Thank you for the reponse, what are you looking for in the photo's you requested that isn't in these photos? I can make some extra photo's

Blockquote

There is a button on the meter which lets you scroll through the settings and values of the meter. I clicked on that button and discovered those values
I noticed the difference between manual and reality too.

Technically information might be on these photos but it's not usable because of bad quality. Just wanted to see your wiring is correct and rock solid.

I changed the YAML to the example in the documentation and added some things to keep OTA working etc. (and replaced some passwords for ***** in this post) :

esphome:
  name: rs548-kwh-meter-pv
  friendly_name: RS548-kWh-meter pv
  area: Meterkast

esp32:
  board: esp32doit-devkit-v1
  framework:
    type: esp-idf
    advanced:
      enable_full_printf: true
  variant: ESP32
logger:
  level: DEBUG

api:
  encryption:
    key: **********
  
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  ap:
    ssid: sdm120m-reader-AP
    password: **********

# UART voor RS485 (TTL side)
uart:
  #id: uart_rs485
  tx_pin: GPIO17
  rx_pin: GPIO16
  baud_rate: 9600
  #data_bits: 8
  #parity: NONE
  stop_bits: 1
  debug:
    direction: BOTH
    dummy_receiver: false
    after:
      delimiter: \n
    debug_prefix: "[UART-RS485] "

# Modbus component (geen DE/RE pin nodig bij Elecrow board)
sensor:
  - platform: sdm_meter
    phase_a:
      current:
        name: "SDM230M Current"
      voltage:
        name: "SDM230M Voltage"
      active_power:
        name: "SDM230M Power"
      power_factor:
        name: "SDM230M Power Factor"
      apparent_power:
        name: "SDM230M Apparent Power"
      reactive_power:
        name: "SDM230M Reactive Power"
      phase_angle:
        name: "SDM230M Phase Angle"
    frequency:
      name: "SDM230M Frequency"
    total_power:
      name: "SDM230M Total Power"
    import_active_energy:
      name: "SDM230M Import Active Energy"
    export_active_energy:
      name: "SDM230M Export Active Energy"
    import_reactive_energy:
      name: "SDM230M Import Reactive Energy"
    export_reactive_energy:
      name: "SDM230M Export Reactive Energy"
    update_interval: 60s

  
ota:
  - platform: esphome

captive_portal:
  id: sdm120m_reader_AP
[13:10:40.814][C][mdns:230]: mDNS:
[13:10:40.814][C][mdns:230]:   Hostname: rs548-kwh-meter-pv
[13:11:34.526][I][safe_mode:142]: Boot seems successful; resetting boot loop counter
[13:11:35.077][D][preferences:148]: Writing 1 items: 0 cached, 1 written, 0 failed
[13:11:35.298][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[13:11:35.310][W][modbus:219]: CRC check failed 22ms after last send
[13:11:35.320][W][modbus:417]: Clearing buffer of 5 bytes - parse failed 26ms after last send
[13:11:35.334][W][modbus:417]: Clearing buffer of 3 bytes - timeout after partial response 46ms after last send
[13:11:35.419][D][uart_debug:113]: [UART-RS485] <<< 01:04:00:00:00:50:F0:36
[13:11:35.561][W][modbus:063]: Stop waiting for response from 1 272ms after last send
[13:12:35.311][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[13:12:35.328][W][modbus:219]: CRC check failed 22ms after last send
[13:12:35.331][W][modbus:417]: Clearing buffer of 5 bytes - parse failed 26ms after last send
[13:12:35.346][W][modbus:417]: Clearing buffer of 3 bytes - timeout after partial response 44ms after last send
[13:12:35.430][D][uart_debug:113]: [UART-RS485] <<< 01:04:00:00:00:50:F0:36
[13:12:35.572][W][modbus:063]: Stop waiting for response from 1 270ms after last send
[13:13:35.305][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[13:13:35.320][W][modbus:219]: CRC check failed 22ms after last send
[13:13:35.327][W][modbus:417]: Clearing buffer of 5 bytes - parse failed 25ms after last send
[13:13:35.340][W][modbus:417]: Clearing buffer of 3 bytes - timeout after partial response 43ms after last send
[13:13:35.423][D][uart_debug:113]: [UART-RS485] <<< 01:04:00:00:00:50:F0:36
[13:13:35.565][W][modbus:063]: Stop waiting for response from 1 268ms after last send
[13:14:35.298][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[13:14:35.312][W][modbus:219]: CRC check failed 22ms after last send
[13:14:35.316][W][modbus:417]: Clearing buffer of 5 bytes - parse failed 26ms after last send
[13:14:35.331][W][modbus:417]: Clearing buffer of 3 bytes - timeout after partial response 44ms after last send
[13:14:35.417][D][uart_debug:113]: [UART-RS485] <<< 01:04:00:00:00:50:F0:36
[13:14:35.560][W][modbus:063]: Stop waiting for response from 1 269ms after last send

and with TX/RX the other way around it gives this log :

[13:20:31.411][C][mdns:230]: mDNS:
[13:20:31.411][C][mdns:230]:   Hostname: rs548-kwh-meter-pv
[13:21:24.792][I][safe_mode:142]: Boot seems successful; resetting boot loop counter
[13:21:26.686][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[13:21:26.705][W][modbus:219]: CRC check failed 23ms after last send
[13:21:26.705][W][modbus:417]: Clearing buffer of 5 bytes - parse failed 26ms after last send
[13:21:26.721][W][modbus:417]: Clearing buffer of 3 bytes - timeout after partial response 45ms after last send
[13:21:26.806][D][uart_debug:113]: [UART-RS485] <<< 01:04:00:00:00:50:F0:36
[13:21:26.949][W][modbus:063]: Stop waiting for response from 1 270ms after last send
[13:21:28.302][D][preferences:148]: Writing 1 items: 0 cached, 1 written, 0 failed
[13:22:26.692][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[13:22:26.706][W][modbus:219]: CRC check failed 23ms after last send
[13:22:26.710][W][modbus:417]: Clearing buffer of 5 bytes - parse failed 27ms after last send
[13:22:26.725][W][modbus:417]: Clearing buffer of 3 bytes - timeout after partial response 46ms after last send
[13:22:26.811][D][uart_debug:113]: [UART-RS485] <<< 01:04:00:00:00:50:F0:36
[13:22:26.953][W][modbus:063]: Stop waiting for response from 1 271ms after last send
[13:23:26.688][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[13:23:26.702][W][modbus:219]: CRC check failed 23ms after last send
[13:23:26.707][W][modbus:417]: Clearing buffer of 5 bytes - parse failed 26ms after last send
[13:23:26.721][W][modbus:417]: Clearing buffer of 3 bytes - timeout after partial response 44ms after last send
[13:23:26.807][D][uart_debug:113]: [UART-RS485] <<< 01:04:00:00:00:50:F0:36
[13:23:26.955][W][modbus:063]: Stop waiting for response from 1 269ms after last send
[13:24:26.685][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[13:24:26.699][W][modbus:219]: CRC check failed 23ms after last send
[13:24:26.706][W][modbus:417]: Clearing buffer of 5 bytes - parse failed 26ms after last send
[13:24:26.720][W][modbus:417]: Clearing buffer of 3 bytes - timeout after partial response 44ms after last send
[13:24:26.804][D][uart_debug:113]: [UART-RS485] <<< 01:04:00:00:00:50:F0:36
[13:24:26.946][W][modbus:063]: Stop waiting for response from 1 269ms after last send

I noticed a difference between the two; one has the line : "[13:11:35.077][D][preferences:148]: Writing 1 items: 0 cached, 1 written, 0 failed". Does this say anything about the TX/RX connection?

In that case, this might give you the information you are looking for:

You don't need to guess, third time: rx to rx, tx to tx.

Inspect your soldering. If you have multimeter, test continuity, especially for short between rx and tx.

I'm not guessing how to connect TX/RX I'm trying to find the problem and since a swap of rx/tx is easily done in software and gives different results I thought it was worth posting. And maybe someone can tell me what the difference means and if either one is better than the other

By the way I checked for continuity; non of the wires is connected to any other wire. I checked every connection (A-A, GND-GND, etc.) for continuity by measuring from one pcb to the other pcb in such a way that the solderings / terminalblocks are in the measurement. From pcb to meter is done by measuring from pcb to screw.
Result : no connection between the wires and no resistance from end-to-end.

Since it doesn't work I'm trying everything I can try without breaking it and check which result is the best. Since I don't have a clue if the UART connection is working, it can be anywhere in the chain.
The only thing I know is it isn't working and the hardware things I did measure right. So I expect either a fault in software or a fault in hardware (for instance the labels TX/RX written at wrong terminal).

I just connected the UART-RS485 module to the 3,3V output on the ESP (and offcorse measured that connection and found 3,31V on the UART-RS485 module). That made things different; no lights on the RS485 module anymore. The log shows this:

[15:14:16.679][C][mdns:230]: mDNS:
[15:14:16.679][C][mdns:230]:   Hostname: rs548-kwh-meter-pv
[15:15:11.036][I][safe_mode:142]: Boot seems successful; resetting boot loop counter
[15:15:12.168][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[15:15:12.327][W][modbus:063]: Stop waiting for response from 1 271ms after last send
[15:15:15.158][D][preferences:148]: Writing 1 items: 0 cached, 1 written, 0 failed
[15:16:12.166][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[15:16:12.324][W][modbus:063]: Stop waiting for response from 1 272ms after last send
[15:17:12.167][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[15:17:12.324][W][modbus:063]: Stop waiting for response from 1 271ms after last send
[15:18:12.164][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[15:18:12.323][W][modbus:063]: Stop waiting for response from 1 271ms after last send

And I'm not insisting for fun. Your link from Analog describes correctly how uart works, rx to tx, tx to rx.
But this is not the case with most of these converter modules. They are not considered as device that does uart communication, but as translator in the middle and thereon have opposite wiring scheme: rx to rx and tx to tx.

So you measured that all wires have solid continuity between esp and converter and no shorts between each other. Good.
The output of your last log looks better in my opinion, at least you don't receive back what you sent.
You didn't answer if you tried to swap A/B, many devices mark them against the RS485 standard where A is - and B is +.

Thanks for insisting. I have swapped them around several times with no difference and let them like you said (even before your last post).

Thats correct.

Putting A and B doesn't make any difference.

Swapping them back, giving it another powercycle, flashing again and watching the log surprises me.... Somehow there is data. :face_with_raised_eyebrow:
With UART side connected : Tx-Tx and Rx-Rx :+1: Like you said @Karosm

[17:29:37.915][C][mdns:230]: mDNS:
[17:29:37.915][C][mdns:230]:   Hostname: rs548-kwh-meter-pv
[17:29:47.286][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[17:29:47.460][D][uart_debug:113]: [UART-RS485] <<< 01:04:A0:43:5E:E6:66:00:00:00:00:00:00:00:00:3F:C3:F7:CF:00:00:00:00:00:00:00:00:C3:A5:00:00:00:00:00:00:00:00:00:00:43:A7:6E:2B:00:00:00:00:00:00:00:00:C2:5B:33:33:00:00:00:00:00:00:00:00:BF:7C:9F:5B:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:42:47:CC:CD:41:89:8F
[17:29:47.480][D][sdm_meter:039]: SDMMeter Phase A: V=222.900 V, I=1.531 A, Active P=-330.000 W, Apparent P=334.861 VA, Reactive P=-54.800 var, PF=-0.987, PA=0.000 °
[17:29:47.491][D][sdm_meter:067]: SDMMeter: F=49.950 Hz, Im.A.E=17.195 Wh, Ex.A.E=865.263 Wh, Im.R.E=0.029 VARh, Ex.R.E=248.928 VARh, T.P=0.000 W
[17:29:47.596][D][uart_debug:113]: [UART-RS485] <<< 5C:44:58:50:D5:3C:ED:91:68:43:78:ED:91:B7:54
[17:29:47.606][S][sensor]: 'SDM230M Voltage' >> 222.90 V
[17:29:47.607][S][sensor]: 'SDM230M Current' >> 1.531 A
[17:29:47.607][S][sensor]: 'SDM230M Power' >> -330.00 W
[17:29:47.607][S][sensor]: 'SDM230M Apparent Power' >> 334.86 VA
[17:29:47.607][S][sensor]: 'SDM230M Reactive Power' >> -54.80 var
[17:29:47.609][S][sensor]: 'SDM230M Power Factor' >> -0.987 
[17:29:47.609][S][sensor]: 'SDM230M Phase Angle' >> 0.000 °
[17:29:47.609][S][sensor]: 'SDM230M Total Power' >> 0.00 W
[17:29:47.609][S][sensor]: 'SDM230M Frequency' >> 49.950 Hz
[17:29:47.610][S][sensor]: 'SDM230M Import Active Energy' >> 17.19 kWh
[17:29:47.610][S][sensor]: 'SDM230M Export Active Energy' >> 865.26 kWh
[17:29:47.611][S][sensor]: 'SDM230M Import Reactive Energy' >> 0.03 kvarh
[17:29:47.611][S][sensor]: 'SDM230M Export Reactive Energy' >> 248.93 kvarh
[17:29:57.283][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[17:29:57.453][D][uart_debug:113]: [UART-RS485] <<< 01:04:A0:43:5F:19:9A:00:00:00:00:00:00:00:00:3F:C4:7A:E1:00:00:00:00:00:00:00:00:C3:A7:19:9A:00:00:00:00:00:00:00:00:43:A7:D9:66:00:00:00:00:00:00:00:00:C2:5D:99:9A:00:00:00:00:00:00:00:00:BF:7C:97:AE:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:42:48:00:00:41:89:8F
[17:29:57.476][D][sdm_meter:039]: SDMMeter Phase A: V=223.100 V, I=1.535 A, Active P=-334.200 W, Apparent P=335.698 VA, Reactive P=-55.400 var, PF=-0.987, PA=0.000 °
[17:29:57.477][D][sdm_meter:067]: SDMMeter: F=50.000 Hz, Im.A.E=17.195 Wh, Ex.A.E=865.264 Wh, Im.R.E=0.029 VARh, Ex.R.E=248.929 VARh, T.P=0.000 W
[17:29:57.598][D][uart_debug:113]: [UART-RS485] <<< 5C:44:58:50:E5:3C:ED:91:68:43:78:ED:D3:23:4D
[17:29:57.599][S][sensor]: 'SDM230M Voltage' >> 223.10 V
[17:29:57.599][S][sensor]: 'SDM230M Current' >> 1.535 A
[17:29:57.599][S][sensor]: 'SDM230M Power' >> -334.20 W
[17:29:57.599][S][sensor]: 'SDM230M Apparent Power' >> 335.70 VA
[17:29:57.599][S][sensor]: 'SDM230M Reactive Power' >> -55.40 var
[17:29:57.602][S][sensor]: 'SDM230M Power Factor' >> -0.987 
[17:29:57.603][S][sensor]: 'SDM230M Phase Angle' >> 0.000 °
[17:29:57.603][S][sensor]: 'SDM230M Total Power' >> 0.00 W
[17:29:57.603][S][sensor]: 'SDM230M Frequency' >> 50.000 Hz
[17:29:57.603][S][sensor]: 'SDM230M Import Active Energy' >> 17.19 kWh
[17:29:57.603][S][sensor]: 'SDM230M Export Active Energy' >> 865.26 kWh
[17:29:57.603][S][sensor]: 'SDM230M Import Reactive Energy' >> 0.03 kvarh
[17:29:57.604][S][sensor]: 'SDM230M Export Reactive Energy' >> 248.93 kvarh
[17:30:07.278][D][uart_debug:113]: [UART-RS485] >>> 01:04:00:00:00:50:F0:36
[17:30:07.444][D][uart_debug:113]: [UART-RS485] <<< 01:04:A0:43:5F:19:9A:00:00:00:00:00:00:00:00:3F:C5:60:42:00:00:00:00:00:00:00:00:C3:A6:CC:CD:00:00:00:00:00:00:00:00:43:A8:D5:B8:00:00:00:00:00:00:00:00:C2:63:33:33:00:00:00:00:00:00:00:00:BF:7C:A3:24:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:42:48:00:00:41:89:8F
[17:30:07.476][D][sdm_meter:039]: SDMMeter Phase A: V=223.100 V, I=1.542 A, Active P=-333.600 W, Apparent P=337.670 VA, Reactive P=-56.800 var, PF=-0.987, PA=0.000 °
[17:30:07.476][D][sdm_meter:067]: SDMMeter: F=50.000 Hz, Im.A.E=17.195 Wh, Ex.A.E=865.265 Wh, Im.R.E=0.029 VARh, Ex.R.E=248.929 VARh, T.P=0.000 W
[17:30:07.578][D][uart_debug:113]: [UART-RS485] <<< 5C:44:58:50:F6:3C:ED:91:68:43:78:ED:D3:44:2B
[17:30:07.595][S][sensor]: 'SDM230M Voltage' >> 223.10 V
[17:30:07.595][S][sensor]: 'SDM230M Current' >> 1.542 A
[17:30:07.596][S][sensor]: 'SDM230M Power' >> -333.60 W

Thanks for your help @Karosm

I don't know what the solution was, however I'm glad we got this working like it should :smiley:

There are so many parameters that has to be perfect on this kind of setup, that randomly trying this and that likely never gets them all correct at the same time.
Nice that you made it!