Growatt Inverter Mode Switch

Hi @kassand - where did you get stuck?

Hey martinm

Thanks for the quick reply. Its some time ago, but one of my questions was, where do i find the “device_id”:

device_id: 5c6093279048b524c3282a0040c49398

And also, how do i get the stuff on a Card inside the overview?

Also in the mjdyson/ad-growatt (github.com), there are several files, do i only have to use the 2 files that you mention?
growattServer.py and set_charge_rate.py

I will test it out again during one of the next weekends, after that i got some more questions :slight_smile:

Once again thanks :+1:

Hello ,
This project is local and I’m working on implementing it right now.

Would someone be able to walk us through this? I set up home assistant yesterday for this purpose alone but have had no luck.

Cheers.

Hello all. I’ve dropped off this thread a bit, but have a bit of time to help over the next week or two.

Would anyone be interested in co-working on a wiki page that helps simplify the setup guide and perhaps a PR to add a readme into the Growatt integration? @martinm @KasperEdw ?

@muppet3000 AppDaemon can be a little tricky to get working - there are lots of different parts to configure and needs some coding experience. Do you have any appetite to build something into the integration directly that allows control in addition to the monitoring? I’m not sure what the minimum viable solution would be. Happy to discuss via smaller group / DM if needed.

Hi @mjdyson

I’m happy to be involved and advise where I can, adding the ability to configure the inverter i.e. for charging would be possible, however I’m currently working through the backlog list of items for the integration.
I’m maintaining a prioritised list of items here: Growatt Integration - Prioritised List of Features for Implementation/Fixing once I’ve worked through all of those maybe then I’ll turn my attention to allowing for things to be configured as well.
With regards to adding documentation, I also maintain that (and have been meaning to improve it) so I’m happy to review anything that is being added.

Right now though my spare time (what little of it that I have) is going to be focussed on completing that list, I’m slowly working through it so I’ll get there eventually :slight_smile:

Hey Mark - @mjdyson

Unfortunately I cant help you, because I dont know how to make this stuff work :slight_smile:

However I am very interested in testing your setup guide. And i will probably be the right person for this, because i know very little about all the coding stuff.

I really hope you will work something out, because i really want this feature…

Thank you very much and good job.

Same for me… Looks like @mjdyson might be the guy who can make it work for us :slight_smile:

1 Like

I’ll see what I can do. I have to update my code to use the latest growatt server code. I think I was half way through something any never came back to it. Fingers crossed I can get it working again. Currently it has a compile error! I have a little bit of time over the next week or two so should be able to get to it.

3 Likes

I too am not quite up to speed to make it work myself, only just dipping my toes into HA but would be really keen to try anything out and help test. Was going to have a go at the non HA version shared by @muppet3000 above as that’s exactly the use case I wanted to get to myself. Would be nice to have it “inside” HA.

With regards to adding something into HA, if I were to finally get around to adding the ability to make configuration changes then it would be quite generic. It would then be down to each user to configure it to be ‘automated’ as they needed e.g. Target battery charging, peak & off-peak times etc.

1 Like

Agreed. Speaking of which, if the example case for getting up and running with AppDaemon, what’s the basic use case that seems most value? Switch mode grid/battery priority between time period?

Personally for me:

  1. Be able to toggle battery charging on/off
  2. Be able to set a specific time to charge
  3. Be able to charge depending on a specific “sensor” (If its called that). So If sensor.kwh-Price below “xx” Then start charging. On the Dashboard be able to define “xx” as it varies over the year. (Some months/weeks 10cents/kwh is cheap and other months/weeks 25cents/kwh is cheap.
1 Like

Hi Karsten,

device_id: 5c6093279048b524c3282a0040c49398 is just an example of a context how I use the logic for setting the battery charge rate (that device is a solar production forecast - Forecast.Solar - Home Assistant (home-assistant.io)); highly recommended. This is the important which calls the python script:

- service: script.set_charge_rate
  data:
    stop_battery_soc: 30

Yes, you need only growattServer.py and set_charge_rate.py.

Martin

Hi @mjdyson,
Yes, happy to help with the wiki page. Though not a real developer myself, I can share my experience with the config part.

Can anyone explain how you “configure AppDaemon to listen to the HA instance”?

Hi @kassand, I assume there are multiple ways how to run both HA and AppDaemon alongside each other and talking to each other. I’m not great wizard at either. But in my situation - both running in Docker on my Synology NAS - these instructions worked for me: AppDaemon with Docker — AppDaemon 4.2.1 documentation

Thanks @martinm :slight_smile:

And what code do you use to make it visible on the dashboard?

Hopefully I’ll make it work sometime soon :slight_smile:

Morning all,

I’ve updated my code with something that works. If you’re able to test without much explanation, you can get on your way. mjdyson/ad-growatt (github.com)

Each file needs to be refreshed. Note, i’ve also removed a few additional files.
The HA helpers also need to be renamed to align with the input_button listeners.

Also, the wiki page has started to take shape. I’ll eat away at this over the coming days to get more in. Hopefully it explains what is going on better.

Edit: I’ve added some screenshots in the various steps to point you in the right direction until I can write more info in.

2 Likes

In my example, you’ll see how AppDaemon works with HA. Whilst I think you might be able to call the functions via a service call, my code has some listeners in the initialize function that just kick off some actions when they notice the inputs changing

2 Likes