Page 1 of 1
[523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 17 May 2015 1:31
by Itschi
Hi, not sure whether I understood the posting rules while posting a tracker first. Appologies if I'm doing wrong!
I was stunned reading about the SolarEdge Support in this forum. Beside a SolarEdge Inverter I'm also running a SolarMax Inverter that comes with a simple LAN UDP-Interface. I've done an implementation in Delphi. All you need to do is sending a UDP request string to the inverters IP on a specific port (12345 in my case). The inverters respons string sends the values of the requested data fields in ascii. This is a example:
Send: '{FB;01;1E|64:KDY;KT0;PAC|0672}'
Receive: 'KDY=A3;KT0=1689;PAC=570'
The values are in hex.
KDY=energy today in Wh
KT0=energy total (energy produced since installation or reset

)
PAC=AC current power
There are a lot more parameters that can be requested, however these are the ones that really matter to me. At
http://blog.dest-unreach.be/2009/04/15/ ... ent-page-2 a more detailed discussion on the protocoll can be found. I'd be hayppy to do any testing on experimental code or could even expose my SolarMax to the internet for testing purposes. Unfortunatly it's only responding during power production. So no chance to test at night

.
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 17 May 2015 9:29
by gizmocuz
Could it be that in the forum they talk about TCP ? (Not UDP)
you might be able to write a small bash file that reads the values,
and then send it to domoticz via the json interface
It might also be possible that SBFSpot supports this inverter? We do have an SBFSpot implementation in domoticz
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 17 May 2015 9:42
by Itschi
gizmocuz wrote:Could it be that in the forum they talk about TCP ? (Not UDP)
you might be able to write a small bash file that reads the values,
and then send it to domoticz via the json interface
It might also be possible that SBFSpot supports this inverter? We do have an SBFSpot implementation in domoticz
You're right, it's TCP. I already wrote a small program that updates domoticz via the json interface. However I'd find it great to have a native support for that. SBFSpot seems to support SMA inverters only.
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 17 May 2015 9:43
by gizmocuz
Could you upload your script file ?
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 17 May 2015 9:52
by Itschi
gizmocuz wrote:Could you upload your script file ?
Shure. It's not a script but part of a Delphi program I wrote my own small home automation with:
Code: Select all
procedure TMain.SolarSocketWrite(Sender: TObject;
Socket: TCustomWinSocket);
begin
Socket.SendText('{FB;01;1E|64:KDY;KT0;PAC|0672}');
end;
procedure TMain.SolarSocketRead(Sender: TObject; Socket: TCustomWinSocket);
var Data : string;
FUNCTION TMain.GetStrComponent(Comp : BYTE; Separator : CHAR; Line : STRING) : STRING;
VAR CharCount : BYTE;
Count : BYTE;
BEGIN
CharCount := 1;
WHILE (CharCount <= Length(Line)) AND (Comp > 1) DO
BEGIN
IF Line[CharCount] = Separator THEN
BEGIN
Dec(Comp);
END;
Inc(CharCount);
END;
Count := System.Pos(Separator, Copy(Line, CharCount, Length(Line)));
IF Count = 0 THEN
Count := Length(Line)
ELSE
Dec(Count);
GetStrComponent := Copy(Line, CharCount, Count);
END;
FUNCTION HexStrToInt(InStr : STRING) : Integer;
VAR Count : Integer;
Res : Integer;
BEGIN
Res := 0;
FOR Count := 0 TO Length(InStr)-1 DO
BEGIN
IF UpCase(InStr[Length(InStr)-Count]) IN ['A'..'F'] THEN
Res := Res + Round(Power(16, Count)) * (Ord(UpCase(InStr[Length(InStr)-Count]))-ORD('A')+10);
IF InStr[Length(InStr)-Count] IN ['0'..'9'] THEN
Res := Res + Round(Power(16, Count)) * (Ord(InStr[Length(InStr)-Count])-Ord('0'));
END;
HexStrToInt := Res;
END;
function GetValue(Ident, Data : string) : Integer;
begin
Data := Copy(Data, System.Pos(Ident, Data)+Length(Ident), Length(Data));
if System.Pos(';', Data) > 0 then
Data := Copy(Data, 1, System.Pos(';', Data)-1);
Result := HexStrToInt(Data);
end;
begin
Data := Socket.ReceiveText;
Data := GetStrComponent(2, '|', Data);
Data := GetStrComponent(2, ':', Data);
Data := GetStrComponent(1, '|', Data);
edPVPAC.Text := FloatToStrF(GetValue('PAC=', Data)/2, ffGeneral, 7, 1);
PVPACLast := edPVPAC.Text;
edPVDay.Text := FloatToStrF(GetValue('KDY=', Data)/10, ffGeneral, 7, 1);
PVYearLast := IntToStr(GetValue('KT0=', Data));
try
UpdateDomoticz(DOMOTICZ_URL+'type=command¶m=udevice&idx=10&nvalue=0&svalue='+edPVPAC.Text+';'+FloatToStrF(GetValue('KDY=', Data)*100, ffGeneral, 7, 1));
except
end;
if (edPVPACmax.text = '') or (edPVPACmax.text = '-') then
edPVPACmax.text := PVPACLast
else
if (edPVPACmax.text <> '') and (edPVPACmax.text <> '-') and (PVPACLast <> '') and (PVPACLast <> '-') then
if StrToFloat(edPVPACmax.text) < StrToFloat(PVPACLast) then
edPVPACmax.text := edPVPAC.Text;
edPVYear.Text := PVYearLast;
SolarSocket.Close;
end;
TMain.SolarSocketWrite is call periodically by a timer, TMain.SolarSocketRead is triggerd by the TClientSocket component if data arrives on that socket.
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 17 May 2015 9:58
by gizmocuz
Send you a PM
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 17 May 2015 12:34
by gizmocuz
Send you an email, think i'm almost done
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 17 May 2015 16:02
by gizmocuz
Implemented
Re: [523] SUPPORT FOR OMNIK PV-INVERTER
Posted: Tuesday 19 May 2015 18:51
by sincze
HI gizmocuz
Would it be hard to have Omnik inverters available in the same way?
Currently it can be done using a script as described here:
http://www.domoticz.com/wiki/Omnik_Solar_Inverter
Send a magic packet and the machine will spit out the data
tnx.
Any assisstance needed, please let me know.
Sándor
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Tuesday 19 May 2015 20:48
by roblom
Same for my SamilPower inverter, I currently use this perl script described
here.
I use a RS232 to USB cable.
I'm not a programmer but maybe I can make it more easy to implement, but don't now what suits best for you?
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Thursday 25 February 2016 21:35
by FlyinGNL
Is it possible to get a more exact reading from a solarmax inverter?
Now the day readings are in 1 kWh. Would be nice when it's in 0,1kWh output if not too much trouble

- Knipsel.JPG (25.31 KiB) Viewed 5964 times
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Thursday 25 February 2016 21:41
by Derik
WOW
How many solarpanels do you have...
Pinctures???
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Thursday 25 February 2016 22:25
by FlyinGNL
numbers doesn't count

Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Saturday 12 January 2019 16:15
by guyroh
I got a Solarmax 3000S
I activate in the front panel the ethernet interface and add it to Domoticz
and nothing...

do I have to do something else?
do I have to implement something?
my Domoticz is on a raspberry Pie and update
don't I supposed to get all the drivers with?
there's 2 ethernet plug in my Solarmax 3000S and description seems to give them both as working
could U help me with this hardware please
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 29 March 2020 14:59
by Jochemvandijk
hi, before i saw the current watt and the total day kwh and total all time kwh , but after a complete new installation i dont see total of all time anymore on the dashboard or utility. the total value is visible in devices.
How can i fix this?

- 2020-03-29 14_54_10-Domoticz.png (40.28 KiB) Viewed 4057 times

- 2020-03-29 14_56_53-Domoticz.png (14.05 KiB) Viewed 4057 times
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 28 June 2020 15:47
by willybee
Hello, i have connected my solarmax TP-series to domoticz, but only recieve errors.
----------
2020-06-28 16:33:30.362 Error: solarmax hardware (3) thread seems to have ended unexpectedly
2020-06-28 16:33:44.365 Error: solarmax hardware (3) thread seems to have ended unexpectedly
2020-06-28 16:33:48.541 Error: SolarMax: TCP/IP connection closed! retrying in 30 seconds...
2020-06-28 16:33:58.368 Error: solarmax hardware (3) thread seems to have ended unexpectedly
2020-06-28 16:34:18.544 Status: SolarMax: TCP connected to: 192.168.178.42:12345
--------
anyone recognizes this and has an solution?
thnx in advance
regards,
wilfred
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Saturday 14 November 2020 12:17
by gregoinc
One of the reasons I chose Domoticz was the inbuilt support for SolarMax inverters. I connected my inverter and it works really well.
Only problem... when the sun goes down Domoticz continues to try and poll the inverter. See here...
Code: Select all
2020-11-14 22:10:26.220 Error: SolarMax: TCP could not connect to: <IPADDRESS>:12345
2020-11-14 22:10:26.221 Status: SolarMax: retrying in 30 seconds...
Is there a method of telling Domoticz to stop polling the inverter at certain times of the day, such as during the times where there is no sunshine?
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Sunday 02 April 2023 11:55
by monette999
Is this Plugin Solarmax with Lan working for SMT Series as well?
Greetings
Re: [523] SUPPORT FOR SOLARMAX PV-INVERTER
Posted: Thursday 01 February 2024 14:52
by AvdKwaak
willybee wrote: ↑Sunday 28 June 2020 15:47
Hello, i have connected my solarmax TP-series to domoticz, but only recieve errors.
----------
<<cut>>
--------
anyone recognizes this and has an solution?
thnx in advance
regards,
wilfred
I had the same issue. I changed the address in the settings of my inverter to 001
Then did "sudo service domoticz. sh restart" and then it worked.
Even though the answer is rather late, i hope it is helpful.