raenji-sk / Solax-X3-MIC-G2-Virtual-Smart-Meter

Smart meter emulator
0 stars 0 forks source link

General Questions #1

Open LukeTheMast3r opened 1 week ago

LukeTheMast3r commented 1 week ago

Hi raenji-sk,

does your flow work actually with your setup?

Trying to find a SmartMeter Emulator / Gateway to use my SMD72 instead of the SDM630 for my X1-Mini

Got Homeassistant working already now trying to connect NR to the Inverter.

Where can i input the Modbus Adress of the Solax inverter? Is it the unitid in each response?

Have a Modbus USB Stick here instead of the USR-W610 I assume to select this device in every Modbus-Write & Modbus-Flex-Write?

Thanks for your help

raenji-sk commented 1 week ago

Hi, yes it works fine for my inverter type. You can see a short video here: https://www.youtube.com/watch?v=p5MXRsIe0yU While it most likely does not provide all data as a true physical smart meter the export limiter seems to work fine. That was my main goal.

Also my inverter only has one modbus port. So I had to connect the USR to it and get the data from inverter to HA via WiFi dongle.

Your modbus addresses for X1-mini might be different though, it was quite difficult to check what the inverter asks for as I was fighting a bit to get the packets from the inverter.

I used a TCP listener to intercept the packets and using chatgpt managed to get a TCP to RTU packet converter. This way I could see what the inverter asks for. Second difficult part was to know what those packets mean. Like is it meter type, or current production, export etc...

Here is the NR flow for the TCP listener, maybe it will work for you. You should see the communication in the debug window of NR. Solax TCP Listener.json

Generally the inverter should first ask for meter type, after you reply with correct value it will ask for further registers.

You might find this useful: Straga X1 Mini Discussion X1 Mini This is what partially inspired me as I saw it was possible. So maybe you can find working modbus addresses for your inverter there.

Have a Modbus USB Stick here instead of the USR-W610 I assume to select this device in every Modbus-Write & Modbus-Flex-Write?

Yes, that is how I have it. In the write nodes I tell it to use the address of the USR, which then forwards it to the inverter. Modbus Flex Server has unit-id 1, as the inverter expects the smart meter to have it.

To be honest both NR and modbus stuff is very new to me, so it took quite a lot of experimenting with both hardware and software to get it working and probably more luck than skill :D