ESPHome modbus Growatt ShineWiFi-S

It would make sense that it would be a problem like that. I tried to change some of the power sensors to U-DWORD right now, but got some astronomical values like power export of 210,980,080 kWh. Maybe I would need to change some other settings too? I did leave the filter multiply at “0.1”.

you may need to adjust the address by 1 as well, you were probably just reading the lower byte, now with dword you are reading the lower byte and the next one and joining them together. so for the registers that require dword reduce the address by 1

for my unit, looks to be very similar to yours
total output power address is 35
total energy today is 53
total energy lifetime is 55
perhaps look at some of the configs above, and also see if you can find a modbus register map for your particular model
the multiply by should stay the same

this is the only ones i can see in my config that use the dword, all the others, like current and volts are just word
also have a look at post #55 in this thread

1 Like

Thank you! That was the trick. I had to lower the address by one as you suggested as well as changing to U_DWORD. I guess I did not understand the growatt documentation correctly when first reading it. I did only use the address 36 which was the lower half of the value.

Thank you so much for the help! Now I need to find out how to delete some data from the history to make the power dashboard correct again :stuck_out_tongue:

Developer Tools → Statistics, the ramp icon next to the entity.

Thank you. This is what I found in a different thread too. I am now waiting for a backup to complete to not make the same mistake twice :laughing:

Solved. I did not realise the U_WORD and u_DWORD difference… I remember reading about it, but did not figure it out… LOL Thank you chris.huitema

Good morning Dave, I saw that you have the same inverter as me and I would like to ask you, or someone else if you want to answer. I’m also starting with the esp project and while I was checking the documentation, I noticed a note in which Growatt writes that the rs458-1 input cannot be used if the inverter uses the TA probe connected to the CT input. (This is valid only for the connection of the METER, do you use the TA probe? Do you have all 2 inputs used?)

Good question, I don’t know :sweat_smile: My ESP32 is connected via the RS232 port replacing the Shine stick. I haven’t touched the 485. I have 2 strings of panels and a 6kWh battery if that’s of any help.

Well i just see your message.
i could add a some code to retain the data till 00:00 so when it goes offline it keeps the data.
and probably add a new sensor so it will sy if the device is offline or online…

I can update my code, but however i’m using it from 29 July till today and hve 0 issue’s with it going offline.

Great work,
Was working instantly without any problems.

I just have a question about all the programming Registers you can set with the shine app or using the growatt web interface.
Is there a way to also set the growatt settings?
Like display language, time, type of Inverter and so on or isn’t it possible to add this to the esphome Firmware?

is it possible to connect 2 ESP’s ? (in my case the shinewifi-s) I want to keep the original and a ESPhome or is er a better option ?

Yes, I have the original shine wifi stick with growatt software on it combined with a wemos d1 mini and rs 485 TTL.

Works fine.

1 Like

Hi,
Anyone figure out how to set the limit for discharge soc (%) when in Load First mode?

Looks like no modbus address in the pdfs (only for the Battery First mode).

1 Like

That is really cool and well done.

I am a complete newbie and would like to do this too.

Any starting help and guidance will be really appreciated !!!

Hi! old thread, but I would like to try this. It`s a bit unclear to me if the blue and/or the black wire is connected to the Growat com-plug? Is the blue and black wire connected together? Regards, Gunnar

Thanks, @WilbertV , you made my day. I configured uart with 9600 baud, checked all modbus adresses without any output. After reading your post, I changed baud to 115200 and: well, got it :slight_smile:

Hi,
can you share how to connect the 2 esp devices?
Thanks, Gabor

1 Like

Sure, the shine wifi stick is in its regular spot, a usb-a plug with screw cap. The wemos is connected to a rs485 module which in turn is linked up to half a utp cable which i plugged into one of the 485 ports.

1 Like

Thank you, I will try it.

Those with of you with SPH 10k-TL3 BH-UP, does turning AC charing ON via modbus still work for you? I tried to enable it, I’m getting this error:

18:54:57	[D]	[switch:012]	
'Growatt AC Charging' Turning ON.
18:54:57	[D]	[switch:055]	
'Growatt AC Charging': Sending state ON
18:54:57	[D]	[modbus:119]	
Modbus error function code: 0x86 exception: 1
18:54:57	[E]	[modbus_controller:091]	
Modbus error function code: 0x6 exception: 1 
18:54:57	[E]	[modbus_controller:100]	
Modbus error - last command: function code=0x6  register address = 0x444  registers count=1 payload size=2

config:

switch:
 - platform: modbus_controller
   modbus_controller_id: growatt
   name: "${devicename} AC Charging"
   icon: mdi:battery-charging-100
   address: 1092
   register_type: holding

I can enable it from the Growatt web, the switch changes state, I can then disable it from ESPHome, but I cannot enable it locally…