[APP][Pro] Grott

Add support for Grott via MQTT.

If you use a Growatt inverter and want to keep your data local, you can use Grott to capture the data coming from your data logger device. Grott pushes this data to a MQTT broker and this app parses that information and puts it all in a device.

You can install an MQTT broker in Homey, or use an external MQTT broker for this.

Links:
Grott Homey app: Grott App for Homey | Homey
Grott Github repository: GitHub - johanmeijer/grott: Growatt inverter monitor

2 Likes

I checked it out, it works fine, Wim. Thanks.

1 Like

No luck here… Can get the grott Application to connect to the MQTT broker, but no data is delivered in the Grott device. But ShinePhone is being updated with data from the inverter

Hey!

Thanks for your message. Can you actually see the data of Grott in your MQTT broker? I would start there.

You can use a tool like MQTT Explorer to check it out.

Hi

No data coming in to my MQTT broker from Grott - but when setting up the Grott to the MQTT it connects fine, and data is sent to Server.growatt.com. I’ve tried using a MQTT broker as a docker on my Synology NAS aswell now, and i have used the homey.

And i can see the Grott application connect to the MQTT in the log

Is there any way to configure the grott.ini or a conf file to inform what kind of Growatt inverter i have?

Hey Andre,

What I know is, for the Growatt inverter I have (MOD 8000 TL3-X) I am using the following docker ledidobe/grott:beta.

In my grott.ini, I have the following code:

[MQTT]
#nomqtt = False
ip = 10.210.100.100
topic = energy/growatt
retain = True

Make sure that #nomqtt = False has the hashtag in front of it. The IP address should be the IP for your MQTT broker.

How do you edit your grott.ini file on Homey? im sorry, but i havent connected to my homey using SSH yet

Hey Andre,

I think you might be mistaking this app to be something else than it is. This app allows a Homey to read the MQTT data that Grott pushes on your MQTT broker.

Grott should be installed somewhere else, push it’s data to your MQTT broker and this app will read it and put it in Homey.

Hope this helps!

Makes sense - i’ll configure Grott on my server, and have it send data to MQTT, and the Homey Grott application read the data. Thank you for explaning :slight_smile:

Alas - I could not get this to work. The large amount of documents, wiki’s, steps, options and possible combinations must be the most confusing set of instructions I have come across in a long long time. Everyone that got this to work must have found a one-pager somewhere with the correct steps… :frowning:
Pity that Growatt has caused all of these problems in the first place, but also disappointing that HomeyPro does not offer a single app to solve this :frowning:

But how could a homey app solve what’s caused by Growatt?
Growatt stops sending cloud data, nothing anyone can do about that?

So the data has to be fetched locally, which is quite technical.
There’s no such thing as a “just connect the damn thing” Homey app.

When I’ve the time, I’ll write a howto, how I installed Grott (which took me quite a while :sweat_smile:).

You’ll have to start to build a linux pc / laptop / thin client / Raspberry pi to make this work. I use Debian 12 OS.

Thank you for the app!

Way easier than setting up a MODTCP bridge, no need to run any extra cables.

The only difficulty is switch the server hostname/ip on the ShineWifi-X that it should report to instead of the default china servers. After finding the configuration password to set the hostname, data started flowing in to the MQTT broker and this app was easy to setup and start reading the values.

  1. Setup MQTT Broker
  2. Setup the grott from Github, I set it up running as a docker container and just the MQTT configurations
  3. Reconfigure ShineWifi-X with the ShinePhone app on your mobile, use Hotspot mode and follow the instructions.

Now I have our solarpanels visible on the new Homey Energy tab.

Noticed with the new Homey Energy tab that when there is no solar production, the last production wattage remains.

The panels have been covered by snow, so shouldn’t production be zero?
On MQTT I do see updates that it should be zero:

{
  "device": "pvserial",
  "time": "2025-01-03T15:23:36",
  "buffered": "no",
  "values": {
    "datalogserial": "datalogserial",
    "pvserial": "pvserial",
    "pvstatus": 0,
    "pvpowerin": 0,
    "pv1voltage": 0,
    "pv1current": 0,
    "pv1watt": 0,
    "pv2voltage": 0,
    "pv2current": 0,
    "pv2watt": 0,
    "pvpowerout": 0,
    "pvfrequentie": 0,
    "pvgridvoltage": 0,
    "pvgridcurrent": 0,
    "pvgridpower": 0,
    "pvgridvoltage2": 0,
    "pvgridcurrent2": 0,
    "pvgridpower2": 0,
    "pvgridvoltage3": 0,
    "pvgridcurrent3": 0,
    "pvgridpower3": 0,
    "totworktime": 6047385,
    "pvenergytoday": 0,
    "pvenergytotal": 7769,
    "epvtotal": 7477,
    "epv1today": 0,
    "epv1total": 5117,
    "epv2today": 0,
    "epv2total": 2360,
    "pvtemperature": 0,
    "pvipmtemperature": 0
  }
}