I have the FiveStar VL-3524M 3KW 24V inverter, from other threads seen I believe it to have the same insides as the Sunmagic PW3024. I'm not sure who the actual original manufacturer is, but I think these are clone of a clone of a clone territory.
It has been working well as a simple "UPS" type backup on a LFP bank, but I'm starting to add solar panels and I want to be able to track PV stats now but the software sucks. My end goal is to script something to push data from the serial interface to a Home Assistant MQTT broker. There is code out there that does this for most of the other inverters, these oddballs aren't supported though. Maybe someone has already been down this path?
Just a disclaimer: I mostly have no idea what I'm doing, but through persistence and key bashing I usually get somewhere.
The inverter has 2 serial interfaces, USB and RJ45>DB9 cable. I've tried both and functionality is identical. They don't work with any Voltronic compatible software. There was a CD included with WinPower 5.0.0.2 and V-Series Runtime.
WinPower looks to be software intended for UPSs rather than inverters. Very basic, no PV stats.
V-Series Runtime has the PV stats!
Now the fun begins, sniffing and trying to figure out the serial protocol...
When WinPower is talking to the inverter it looks to use a very simple Megatec/Voltronic mash up. I went through all the query commands listed in those protocols and the only ones that work are Q1 and QMD or MD.
RS232 2400BPS 8N1
Command: Q1
Response: (235.3 220.0 230.2 018 50.0 2.19 30.0 10000000)
Input voltage: 235.3V
??? maybe rated voltage: 220V
Output voltage: 230.2V
Load: 18%
Output frequency: 50hz
???: 2.19
Temp: 30 deg
8-bit status: 10000000
Command: QMD or MD (Same result)
Result: INV+M,800,1/1,220,220,2,12.0,11.5,13.8
Model: INV+M
???: 800
Input/Output Phase: 1/1
Rated Input Voltage: 220
Rated Output Voltage: 220
Number of batteries: 2
Rated battery voltage: 12V
User config???: 11.5V
User config???: 13.8V
Ok, so the point where I'm stuck at the moment is decoding how V-Series Runtime talks to the inverter, the PV stats I'm after are hiding in here somewhere! The serial command issued from V-Series is "CMSG.INV-HB" and the inverter returns a chunk that I'm yet to decipher. I've jumped around converting bytes to decimal with the hopes that an obvious number would jump out with no luck.
56 50 48 42 49 0f 00 00 00 00 00 00 00 00 01 04 VPHBI...........
1e 13 09 f4 01 0e 09 f4 01 1c 01 64 00 00 14 14 ...Ă´...Ă´...d....
00 42 05 05 02 01 01 2f 00 00 11 14 7d 7d 7d 7d .B...../....}}}}
7d 7d 02 02 01 01 64 64 8e 88 69 74 87 e6 02 01 }}....ddŽˆit‡æ..
01 01 01 02 02 01 00 02 00 73 82 06 00 c0 .........s‚..À
It has been working well as a simple "UPS" type backup on a LFP bank, but I'm starting to add solar panels and I want to be able to track PV stats now but the software sucks. My end goal is to script something to push data from the serial interface to a Home Assistant MQTT broker. There is code out there that does this for most of the other inverters, these oddballs aren't supported though. Maybe someone has already been down this path?
Just a disclaimer: I mostly have no idea what I'm doing, but through persistence and key bashing I usually get somewhere.
The inverter has 2 serial interfaces, USB and RJ45>DB9 cable. I've tried both and functionality is identical. They don't work with any Voltronic compatible software. There was a CD included with WinPower 5.0.0.2 and V-Series Runtime.
WinPower looks to be software intended for UPSs rather than inverters. Very basic, no PV stats.
V-Series Runtime has the PV stats!
Now the fun begins, sniffing and trying to figure out the serial protocol...
When WinPower is talking to the inverter it looks to use a very simple Megatec/Voltronic mash up. I went through all the query commands listed in those protocols and the only ones that work are Q1 and QMD or MD.
RS232 2400BPS 8N1
Command: Q1
Response: (235.3 220.0 230.2 018 50.0 2.19 30.0 10000000)
Input voltage: 235.3V
??? maybe rated voltage: 220V
Output voltage: 230.2V
Load: 18%
Output frequency: 50hz
???: 2.19
Temp: 30 deg
8-bit status: 10000000
Command: QMD or MD (Same result)
Result: INV+M,800,1/1,220,220,2,12.0,11.5,13.8
Model: INV+M
???: 800
Input/Output Phase: 1/1
Rated Input Voltage: 220
Rated Output Voltage: 220
Number of batteries: 2
Rated battery voltage: 12V
User config???: 11.5V
User config???: 13.8V
Ok, so the point where I'm stuck at the moment is decoding how V-Series Runtime talks to the inverter, the PV stats I'm after are hiding in here somewhere! The serial command issued from V-Series is "CMSG.INV-HB" and the inverter returns a chunk that I'm yet to decipher. I've jumped around converting bytes to decimal with the hopes that an obvious number would jump out with no luck.
56 50 48 42 49 0f 00 00 00 00 00 00 00 00 01 04 VPHBI...........
1e 13 09 f4 01 0e 09 f4 01 1c 01 64 00 00 14 14 ...Ă´...Ă´...d....
00 42 05 05 02 01 01 2f 00 00 11 14 7d 7d 7d 7d .B...../....}}}}
7d 7d 02 02 01 01 64 64 8e 88 69 74 87 e6 02 01 }}....ddŽˆit‡æ..
01 01 01 02 02 01 00 02 00 73 82 06 00 c0 .........s‚..À
