Universal Solar Inverter over Modbus RS485 / TCP custom_component (Growatt, Sofar, SolaX, Solis)

For me only an intense Nmap scan would show up port 502. A normal scan wouldn’t show it.

Do you have an RS485 port on your inverter?
It’s probably behind the lower cover.

What are the exact Models you have?

@wills106

Thanks for the quick reply, i tried an intense scan but still the same result.
I have a RS485 but nothing is connected to it.
its a x1-3.3, the other one i dont know exactly but my main focus is the x1-3.3

You will have to try a RS485 - USB cable
You can get RS485 to Ethernet boxes but they are about £50 on Amazon.

Then replace:

modbus:
  name: SolaX
  type: tcp
  host: ip_address
  port: 502

with

modbus:
  name: SolaX
  type: serial
  method: rtu
  port: /dev/ttyUSB0
  baudrate: 9600
  stopbits: 1
  bytesize: 8
  parity: N

You may have to play around with the baudrate to see what it uses.

Is threre no other way i can access the log data from the webserver?

Have you not tried the SolaX component in HA?

Yes i tried but without succes.
This is the message in HA when i reboot the system.

image

It says connection refused so there is something going on but i dont know what.

The SolaX component uses port 80 (webserver), but it isn’t open.

I don’t have a PocketLAN or PocketWiFi so can’t really offer any help.

You might have better luck with raising a ticket https://github.com/squishykid/solax

Can’t you get an Ardunino or ESP to the inverters and use the Modbus connection?
It looks like ESPHome supports ModBus looking at the source code. But I can’t find any documentation for it?

@battman

I have just uploaded a test version of my package solax_test.yaml into my experimental folder.
I believe you have an X3 model, so I am guessing you are on 3 Phase electrics?
Hopefully I have added in the extra power info for each phase.

Could you please test it out and let me know if the values look ok. I might need to change the precision around etc. So instead of 115v it might show as 11.5v etc. Just rename your old file to solax.yaml.old or move it out of the way somewhere.

@wills106

I indeed have Solax X3 Hybrid inverter and 3 T63 battery modules for total of 18.9 kWh. I installed the new solax.yaml but I do not see the 3 phase badges, and of course no data. I must be doing something wrong but what?

Are they not under Developer Tools / States?

I have not updated the lovelace example yet.

Should be something like:

sensor.inverter_phase_r_current
sensor.inverter_phase_r_frequency

etc

@Tim1739

I have inverter connected by LAN and port 502 is definitely operating. Pocket WLAN is different from LAN and it could be that there is no access to ports. Using RS485 port in the inverter could be a solution then but maybe in this case it would be better to connect just a LAN cable?

In the manual it is written that inverter communicates with the BMS using CAN protocol. BMS control batteries using RS485. Different cable arrangement is used for the CAN and RS485.

I do have CAN and RS485 box like this one

My initial idea was that I will connect it to the CAN and RS485 sides and try to see what is going on.
Not being an expert I do not know if connecting external device to those buses is fully safe. Will idea is of course much better but I wonder how it would be possible to read the status of individual battery modules.

Even without Lovelace I was able to see sensor badges for different parameters. Oh, I have forgotten that now I am getting one error badge Badges

By the way, I exchanged several mails today with Sx customer service asking about interfaces for home automation. They refuse to provide them hiding this by saying there is really no access to the internals:).

Do you manually setup Lovelace or let HA / HASSIO do it’s own thing?

You are best looking in Developer Tools / States like I mention.
Your entity Not Found is probably “SolaX Solar Energy Total” which was register 112 in my first version. I nether got a value from register 112.

I believe it’s only used on the X3 / 3 Phase inverter.

register 112 should hopefully be “Inverter phase S Power”

Yes, you wont get any help from SolaX! Even though in their earlier Inverter Manuals it mentions connecting RS485 upto a PC for monitoring etc…

Another piece of information. There is a company downunder named Batrium which offers hardware and software for people which are making their own batteries. This company company apparently has NDA with Sx and their stuff can operate with Sx inverter, maybe some useful information can be gleaned from this:

How is your lan cable connected to the inverter? Directly into the rs458 port?

On the new Hybrids you have an Ethernet port (RJ45) on the inverter Motherboard it’s self, this is under the front cover. As well as terminals and an RJ45 for RS485 (ModBus).

I am plugged directly into the Ethernet port on the motherboard.

There is also two USB ports, one for firmware upgrade and the other for PocketWiFi

Aah that explains a lot, I will look into it tomorrow.
I think my best bet is to make a request to the webserver an edit the request header so it thinks it’s getting a request from 8.8.8.5 or something. That’s the most simple way I think. Nonetheless thank you for your help so far.

@battman

Did you find the extra inverter sensors?
I have included a pic of what to look for.

If some of the values look off ie voltage is 11.5v etc send a screen shot, then I can adjust the values.

Unfortunately I got a major problem with my system. Battery is not charging and in the inverter menu, in the Work mode setting there is message DSP-COMM failure. I tried to switch off everything, switch off grid supply but no help. The batteries flash green which indicates they are healthy. The BMS after starting shows green but changes to flashing red.

There are some coincidences which give fodder for wild speculations as to why this happened. First, I changed to hourly based grid tariff, do not see how that could be related, maybe grid was off for a moment? Second, I have Raspberry Pi with Wills software running connected to the inverter, that has been switched off and on multiple times, maybe some random wrong signal was sent to the inverter? But Wills software apparently works and collects data from the inverter.