# \[APP\]\[Pro\] SolarEdge + Growatt TCP modbus

**URL:** <https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487>\
**Category:** Apps\
**Tags:** app, pv-solar\
**Created:** [March 30, 2021, 10:17am UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487 "2021-03-30T10:17:23Z")\
**Posts on this page:** 20\
**Page:** 92

<div class="post-metadata">

**Author:** ![Menno\_De\_Braak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/menno_de_braak/32/171831_2.png) [@Menno\_De\_Braak](https://community.homey.app/u/Menno_De_Braak)\
**Post date:** [July 17, 2026, 11:31pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1839 "2026-07-17T23:31:46Z")

</div>

Rather than making exportlimitenabled/exportlimitpowerrate globally setable (which risks issues on TLS and other variants without a compatible Modbus meter), I added an ‘ems\_control’ checkbox to the regular Growatt driver settings. Only when the user explicitly enables this will the capabilities become writable and the registerCapabilityListener

---

<div class="post-metadata">

**Author:** ![DaneedeKruyff](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/daneedekruyff/32/964_2.png) [@DaneedeKruyff](https://community.homey.app/u/DaneedeKruyff)\
**Post date:** [July 18, 2026, 6:51am UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1840 "2026-07-18T06:51:17Z")

</div>

Ah, yeah, that’s the same I did for the Growatt TLS, must have overlooked that.

---

<div class="post-metadata">

**Author:** ![Kevin2](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kevin2/32/124036_2.png) [@Kevin2](https://community.homey.app/u/Kevin2)\
**Post date:** [July 29, 2026, 6:29am UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1841 "2026-07-29T06:29:19Z")

</div>

@Edwin_Biemond I have tested to read register 3036 with the modbus app and this works fine, could you please implement this in this app?

---

<div class="post-metadata">

**Author:** ![Edwin\_Biemond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/edwin_biemond/32/72686_2.png) [@Edwin\_Biemond](https://community.homey.app/u/Edwin_Biemond)\
**Post date:** [August 1, 2026, 6:02pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1842 "2026-08-01T18:02:52Z")

</div>

hey yes , I can add it to TL , what is this value 1 to 255 ?

---

<div class="post-metadata">

**Author:** ![Kevin2](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kevin2/32/124036_2.png) [@Kevin2](https://community.homey.app/u/Kevin2)\
**Post date:** [August 1, 2026, 6:32pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1843 "2026-08-01T18:32:44Z")

</div>

Hi, Thank you. The protocol document states it is 1-255 tho in reality I get a value in 0-100

---

<div class="post-metadata">

**Author:** ![Edwin\_Biemond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/edwin_biemond/32/72686_2.png) [@Edwin\_Biemond](https://community.homey.app/u/Edwin_Biemond)\
**Post date:** [August 2, 2026, 12:03pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1844 "2026-08-02T12:03:18Z")

</div>

yes it is hex for 100

---

<div class="post-metadata">

**Author:** ![Brenton\_Kelley](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/brenton_kelley/32/80205_2.png) [@Brenton\_Kelley](https://community.homey.app/u/Brenton_Kelley)\
**Post date:** [August 7, 2026, 2:17am UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1845 "2026-08-07T02:17:22Z")

</div>

Hi Edwin. Thanks so much for this app! Got it working with my Sungrow inverter to see solar generation. It would be great if I could also see my meter consumption too.

My setup:

Sungrow SG10RT + WiNet-S2 + SG Smart Meter (DTSU66). iSolarCloud shows consumption correctly. Modbus TCP 502 works. Sungrow String driver only shows PV power. Need SG Smart Meter registers exposed.

Is a Sungrow + Meter Homey device in the pipeline? Hope it’s an easy addition.

Thanks

---

<div class="post-metadata">

**Author:** ![N1ghtmar3](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/n1ghtmar3/32/78952_2.png) [@N1ghtmar3](https://community.homey.app/u/N1ghtmar3)\
**Post date:** [August 7, 2026, 1:24pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1846 "2026-08-07T13:24:20Z")

</div>

Dears,

i am using the app to integrate my kostla plenticore. It works perfectly. Now i want to get the values, especially the battery into the Homey Energy Diagramm. Is there a way to do so?

Many thanks in advance

---

<div class="post-metadata">

**Author:** ![Rmb](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/rmb/32/79135_2.png) [@Rmb](https://community.homey.app/u/Rmb)\
**Post date:** [August 7, 2026, 2:25pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1847 "2026-08-07T14:25:23Z")

</div>

Use the app Unreal Battery or Virtual Drivers.

---

<div class="post-metadata">

**Author:** ![Yestond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/yestond/32/9807_2.png) [@Yestond](https://community.homey.app/u/Yestond)\
**Post date:** [August 10, 2026, 10:25am UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1848 "2026-08-10T10:25:42Z")

</div>

Hi again Edwin.

A quick question. Is it possible to have a more frequent update interval rather than the 30 second interval?

I use the Modbus option, which has been working perfectly 🙂

---

<div class="post-metadata">

**Author:** ![Edwin\_Biemond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/edwin_biemond/32/72686_2.png) [@Edwin\_Biemond](https://community.homey.app/u/Edwin_Biemond)\
**Post date:** [August 10, 2026, 8:08pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1849 "2026-08-10T20:08:19Z")

</div>

can you try sungrow with battery. even when you don’t have a battery

---

<div class="post-metadata">

**Author:** ![Edwin\_Biemond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/edwin_biemond/32/72686_2.png) [@Edwin\_Biemond](https://community.homey.app/u/Edwin_Biemond)\
**Post date:** [August 10, 2026, 8:11pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1850 "2026-08-10T20:11:34Z")

</div>

not really , I have all the data but homey want to force to have 3 different devices when I have 3 in 1 . pv, meters and battery. they need to come with a new class and specify the energy caps.

few already asked homey for this.

in the mean time check how far you come with some virtual device

---

<div class="post-metadata">

**Author:** ![Edwin\_Biemond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/edwin_biemond/32/72686_2.png) [@Edwin\_Biemond](https://community.homey.app/u/Edwin_Biemond)\
**Post date:** [August 10, 2026, 8:19pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1851 "2026-08-10T20:19:28Z")

</div>

it depends what device you use , some are super slow like huawei , some are are fast like solaredge.

but why do you want faster , like always use average values like 5 min values. else you respond to fast etc.

---

<div class="post-metadata">

**Author:** ![Yestond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/yestond/32/9807_2.png) [@Yestond](https://community.homey.app/u/Yestond)\
**Post date:** [August 11, 2026, 8:11am UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1852 "2026-08-11T08:11:01Z")

</div>

I have a growatt sph3600 inverter but with the modbus set up  
The reason I want faster updates is just because I eagerly follow production and if it’s possible then it would be great 🙂

---

<div class="post-metadata">

**Author:** ![Brenton\_Kelley](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/brenton_kelley/32/80205_2.png) [@Brenton\_Kelley](https://community.homey.app/u/Brenton_Kelley)\
**Post date:** [August 13, 2026, 7:19am UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1853 "2026-08-13T07:19:17Z")

</div>

Thanks, I did try that yes. Only solar power value correctly shows. all other fields including anything relating to the meter don’t have any values.

---

<div class="post-metadata">

**Author:** ![Kevin2](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kevin2/32/124036_2.png) [@Kevin2](https://community.homey.app/u/Kevin2)\
**Post date:** [August 14, 2026, 11:54am UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1854 "2026-08-14T11:54:52Z")

</div>

Don’t really understand what you mean here, but the write function is already implemented. Maybe you could check how it’s handled there?

---

<div class="post-metadata">

**Author:** ![Edwin\_Biemond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/edwin_biemond/32/72686_2.png) [@Edwin\_Biemond](https://community.homey.app/u/Edwin_Biemond)\
**Post date:** [August 15, 2026, 1:21pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1855 "2026-08-15T13:21:47Z")

</div>

if you are handy you can try this and send me a pull request. this was done for solaredge

> <https://github.com/biemond/solaredge.modbus/pull/64/files>

---

<div class="post-metadata">

**Author:** ![Edwin\_Biemond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/edwin_biemond/32/72686_2.png) [@Edwin\_Biemond](https://community.homey.app/u/Edwin_Biemond)\
**Post date:** [August 15, 2026, 1:23pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1856 "2026-08-15T13:23:19Z")

</div>

did you send me a report , can add a try catch on it or make a device parameter to skip it.

---

<div class="post-metadata">

**Author:** ![Edwin\_Biemond](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/edwin_biemond/32/72686_2.png) [@Edwin\_Biemond](https://community.homey.app/u/Edwin_Biemond)\
**Post date:** [August 15, 2026, 1:36pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1857 "2026-08-15T13:36:09Z")

</div>

> [@Kevin2](#):
>
> growattwithbatt\_tl

you said growatt tl .

I see this on it [solaredge.modbus/drivers/growattwithbatt\_tl/device.ts at main · biemond/solaredge.modbus · GitHub](https://github.com/biemond/solaredge.modbus/blob/main/drivers/growattwithbatt_tl/device.ts#L278)

```auto
    const dischargeAction = this.homey.flow.getActionCard('grid_first_discharge_percentage');
    dischargeAction.registerRunListener(async (args, state) => {
      await this.updateControl('grid_first_discharge_percentage', Number(args.value));
    });

```

it is an flow action on the device , does this work for you.

```auto
  "actions": [
    {
      "id": "grid_first_discharge_percentage",
      "title": {
        "en": "Discharge powerrate, grid first"
      },
      "args": [
        {
          "type": "range",
          "name": "value",
          "title": {
            "en": "percentage",
            "de": "Prozent",
            "sv": "Procent"
          },
          "min": 1,
          "max": 100,
          "step": 1,
          "labelDecimals": 0
        }
      ]
    },

```

---

<div class="post-metadata">

**Author:** ![Kevin2](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kevin2/32/124036_2.png) [@Kevin2](https://community.homey.app/u/Kevin2)\
**Post date:** [August 15, 2026, 1:43pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/1858 "2026-08-15T13:43:31Z")

</div>

I am actually already using that flow action to change the percentage, and it works great.

However, what I am looking for is a way to **Read** the current register value into Homey. I would like Homey to know what the current grid first discharge percentage is actually set to (as a sensor / capability), rather than just sending a command to change it.

Is it possible to add a read function/capability for this specific register?"

[Previous page](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487.md?page=91)

[Next page](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487.md?page=93)
