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

No it’s pocket WiFi. Let’s get this working, then I will!

Well I am just wondering if they keep overriding some things they might be messing with other things through the connection.

What exactly are you signed up to? Something like that Social Energy?
Just wondering why they need to interfere, if they are doing so?

I would verify that the rj45 has the correct pinout first on the plug that goes into inverter. (blue and blue/white is on the correct location) i also had to use a 120ohm resistor in the end.

Also verify if there is any difference if you swap cablepar (whiteblue on A and blue on B)

I also tried to change the baudrate and had to perform a total powercycle (DC, AC & Battery)

It sure was a pain to get it up and running but i managed in the end.

Ok, all connections are secure, I set both to 115400 (both previously 19200).
I have a red power led, green link that occasionally turns blue for about 4 seconds and the act led shows green for the first second or so that the link is blue. If I remove the integration the lights stop, so I’ve Comms with HA I guess.
I followed the wiki and looking at the plug the wiring seems to match the PIN numbers. I presume it will do no harm to wswsp them?
Not done a power cycle before. Will need to read up on that, or do you just mean turning the isolator off and back on again?

Very strange: in my waveshare: the leds are:

  • power: red (strange colour for a power led)
  • link: continously blue (when connnected at 100Mbps, I believe I saw another color when it was connected in gigabit
  • act LED: only lights up briefly every 15 seconds, blue for send? and green for receive?

I would prefer that you stay at 19200 for the time being as this is the speed that has been tested by us.
So I believe there is something wrong with your Ethernet link. Is your waveshare on the same subnet as your HA ?

Correction:

  • My link LED is initially green for a couple of seconds, and then turns blue permanantly as soon as HA creates its connection. My previous statement was wrong (no gigabit speed I guess)
  • act LED: only lights up briefly every 15 seconds, blue for send? and green for receive?

I have enhanced the documentation in the wiki with this information

As a test, I disconnected my RS485 cable and observed following behavior:

  • no errors in the logs
  • the LINK led is normally green, but every 15 seconds, it turns blue for about 4 seconds, during which the ACT LED briefly turns green (transmit), it does not flash Blue (no receive)

So I assume that the correct behavior when the cable is reconnected is

  • The link LED is initially green for a couple of seconds, and then turns blue permanantly as soon as HA creates its connection.
  • act LED: only lights up briefly every 15 seconds (the polling interval), green for send and blue for receive. It may be difficult to distinguish boht colors, but at 19200 baud, one can still see it

I will enhance the documentation in the wiki with this information

Conclusion:

  • you see the ACT LED turn green from time to time, so we send information on the RS485 bus
  • as you do not see the ACT LED flash blue, it may mean that we do not receive information back
  • I do not understand why your LINK LED can be off. It should be on Green (no HA connection) or Blue (HA connection) all the time

OK I’ve been trying different permutations and here is what I can tell you.

  1. The outcome appears to be the same at both 115200 and 19600 baud
  2. The modbus address on the inverter needs to be altered from the default of 4 to 1 in order to establish a stable connection
  3. The led status at either baud is
    Power: solid red
    Link: solid blue
    Act: flashes twice, briefly blue and then longer green
  4. If I disconnect the RS485 cable from the inverter the Link led reverts to the long blue flash mode. To me this suggests RS485 is working?
  5. My laptop with Vircom, HA and the wave share device are all on my UniFi network, a single subnet with both Wi-Fi and a number of switches. I can see both devices on my UniFi controller.

I am still getting no data! Currently I am on 19600. So a power cycle? I’d best look at how to do that

OK, we seem to be gettring very close to a working setup.
Please note that the baudrate should be 19200, not 19600, but this is probably a typo in your message.
Otherwise, everything seems to work fine; no idea why you get no data now. I assume you have added some entities to your lovelace pages.

Do the logs reveal anything now?

Just seen this, could it be related?


Logger: zigpy.zcl
Source: /usr/local/lib/python3.9/site-packages/zigpy/zcl/__init__.py:95 
First occurred: 1 April 2022, 20:55:07 (1 occurrences) 
Last logged: 1 April 2022, 20:55:07

Unknown cluster 61184

I’m looking at the integration and all the entities it created - all state ‘unknown’

Crazy!

Don’t think this relates to solax. (ZigBee related)

I remember I once had to power cycle my home assistant system (running on a raspberry 4)

I’ve just rebooted my HA PC and still nothing. :frowning:

Can you show a screenshot of the embedded webpage of your waveshare? I assume your url is Http://192.168.1.200

Major breakthrough! My inverter serial number is visible!

sensor.solax_x1ac_series_number
(I reloaded the integration with a new prefix in case that helped)

Nothing else though

Here is my waveshare webpage

I you can see sensor.solax_x1ac_series_number then the Inverter must be talking to the adaptor.

It might be worth deleting the Integration from the Integration page and also deleting the custom_component and starting again.

Only difference with my setup is rs485 conflict time is set to 0 in my system
I do not believe this will matter but …

Just realised you are using an X1-AC and not a Hybrid.

The X3-MIC uses a baud rate of 9600, might also be worth dropping down to that for communications? 19200 might be causing the issues as mis matched data rates.

Oops, did not realize that.
Not sure at all that this is compatible with the hybrid protocol spec we used for gen4