# \[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:** 11

<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:** [February 20, 2022, 5:46pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/204 "2022-02-20T17:46:02Z")

</div>

Hey guys , I am taking over from Pieter and own him all the credits for this app.

So with this opportunity I migrated the app to homey sdk v3 and refactored some stuff. This is breaking current devices so you need to remove and add it again.

Besides some different layout also made it non blocking so you can use other modbus tools too ( I poll every 20 seconds so it can be in use, just retry until it works, or use some docker proxy)

Also with selecting some remote control option on the battery , there is no need to set remote control to controlset. Plus added some extra flow conditions.

For now I only support meter1 and battery1 but adding meter 2, 3 plus extra battery is easy now. Let me know if you wants this and I can add these capabilities.  
Here is a full list of all the registers, let me know which ones are important to add and explain why this is. [solaredge.modbus/drivers/solaredge.ts at main · biemond/solaredge.modbus · GitHub](https://github.com/biemond/solaredge.modbus/blob/main/drivers/solaredge.ts#L11)

Please try it out [SolarEdge + Growatt TCP modbus | Homey](https://homey.app/nl-nl/app/solaredge.modbus/SolarEdge/test/)

 ![Screen Shot 2022-02-20 at 18.33.19](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/e/4/e44ec65773aafb5a809157a438cf5d299ff3e784.jpeg)  
 ![Screen Shot 2022-02-20 at 18.33.39](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/e/7/e70e27d896466bf2748154b770efa46defb5c0a0.jpeg)  
 ![Screen Shot 2022-02-20 at 18.33.50](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/e/1/e1a9b18b5d289687bd9a1f54619998a476b27c0b.jpeg)

---

<div class="post-metadata">

**Author:** ![Dijker](https://avatars.discourse-cdn.com/v4/letter/d/b9bd4f/32.png) [@Dijker](https://community.homey.app/u/Dijker)\
**Post date:** [February 20, 2022, 6:10pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/205 "2022-02-20T18:10:46Z")

</div>

Hi @Edwin_Biemond  
For me the upgrade didn’t look good after pairing the solaredge again. For now reverting

a1c799e6-c8aa-4536-9009-b7858c75bb44

Wil experiment from a dev Homey first.

 ![Screenshot_20220220-190417_Homey](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/d/9/d925e6eb050fb334850b719261783ed0bc3cee12.jpeg)

---

<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:** [February 20, 2022, 6:34pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/206 "2022-02-20T18:34:01Z")

</div>

interesting, so sliding to the right does not give any values.

you can try to run this [GitHub - biemond/solaredge.modbus: Homey Solaredge modbus app](https://github.com/biemond/solaredge.modbus) and do homey app run.  
Also probably you need to restart the app or some other process is still connecting to modbus.

---

<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:** [February 20, 2022, 6:45pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/207 "2022-02-20T18:45:01Z")

</div>

I see the issue  
some dns error , let me check the invertor driver code. maybe 20 seconds is too much

```auto
[Device:d042f9ea-1285-4d7e-9c7e-2ecdee05b133] 10.10.1.13.117
{
  '$__type': 'Error',
  data: {
    message: 'getaddrinfo ENOTFOUND 10.10.1.13.117',
    code: 'ENOTFOUND',
    stack: 'Error: getaddrinfo ENOTFOUND 10.10.1.13.117\n' +
      ' at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:64:26)'
  }
}
[log] 2022-02-20 18:06:13 [ManagerDrivers] [Driver:invertorwithbatt] [Device:ba2de2d5-6716-42b6-bff2-b282a5029e0b] pollInvertor
[log] 2022-02-20 18:06:13 [ManagerDrivers] [Driver:invertorwithbatt] [Device:ba2de2d5-6716-42b6-bff2-b282a5029e0b] 10.1.13.117
Connected ...
disconnect
c_manufacturer SolarEdge xxx Manufacturer
c_model ------ xxx Model
c_version 0004.0------ xxx Version
c_serialnumber 7E1--- xxx Serial
c_deviceaddress 1 xxx Modbus ID
c_sunspec_did 103 xxx SunSpec DID
current 0 -2 Current

```

---

<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:** [February 20, 2022, 6:47pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/208 "2022-02-20T18:47:48Z")

</div>

also can you do invertor or invertor with battery only , not both unless they have different ip addresses.

double devices

```auto
[log] 2022-02-20 18:05:39 [ManagerDrivers] [Driver:invertor] [Device:d042f9ea-1285-4d7e-9c7e-2ecdee05b133] pollInvertor
[log] 2022-02-20 18:05:39 [ManagerDrivers] [Driver:invertor] [Device:d042f9ea-1285-4d7e-9c7e-2ecdee05b133] 10.10.1.13.117
{
  '$__type': 'Error',
  data: {
    message: 'getaddrinfo ENOTFOUND 10.10.1.13.117',
    code: 'ENOTFOUND',
    stack: 'Error: getaddrinfo ENOTFOUND 10.10.1.13.117\n' +
      ' at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:64:26)'
  }
}
[log] 2022-02-20 18:05:53 [ManagerDrivers] [Driver:invertorwithbatt] [Device:ba2de2d5-6716-42b6-bff2-b282a5029e0b] pollInvertor
[log] 2022-02-20 18:05:53 [ManagerDrivers] [Driver:invertorwithbatt] [Device:ba2de2d5-6716-42b6-bff2-b282a5029e0b] 10.1.13.117

```

---

<div class="post-metadata">

**Author:** ![Dijker](https://avatars.discourse-cdn.com/v4/letter/d/b9bd4f/32.png) [@Dijker](https://community.homey.app/u/Dijker)\
**Post date:** [February 20, 2022, 6:53pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/209 "2022-02-20T18:53:54Z")

</div>

Great, thanks I stopped the old one and on Dev Homey only and added with the Correct IPv4 Address (Sorry for the IPv5 😉 )  
Now it looks like it works .

But In the Web interface I see another issue.

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/0/2/023103f395750c7c4aafd318ecd383a1da860e46.jpeg)

---

<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:** [February 20, 2022, 7:02pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/210 "2022-02-20T19:02:59Z")

</div>

cool,

yes invertor status is not setable [solaredge.modbus/invertorstatus.json at main · biemond/solaredge.modbus · GitHub](https://github.com/biemond/solaredge.modbus/blob/main/.homeycompose/capabilities/invertorstatus.json#L7)

then homey is doing this. yes let me look at this again, maybe I should make it a string field and not use a picker.

---

<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:** [February 20, 2022, 7:18pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/211 "2022-02-20T19:18:21Z")

</div>

thanks for the feedback, publish a new version

---

<div class="post-metadata">

**Author:** ![Dijker](https://avatars.discourse-cdn.com/v4/letter/d/b9bd4f/32.png) [@Dijker](https://community.homey.app/u/Dijker)\
**Post date:** [February 20, 2022, 7:49pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/212 "2022-02-20T19:49:15Z")

</div>

Thanks, looks good.  
It wasn’t possible to upgrade the old devices?

---

<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:** [February 20, 2022, 8:24pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/213 "2022-02-20T20:24:56Z")

</div>

migrated from sdkv2 with javascript to sdk3 with typescript. plus make it flexible, minimal and non blocking on the 1502 socket.  
so I can maintain it for the coming years.

---

<div class="post-metadata">

**Author:** ![tsveri](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/tsveri/32/48145_2.png) [@tsveri](https://community.homey.app/u/tsveri)\
**Post date:** [February 25, 2022, 12:09pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/214 "2022-02-25T12:09:33Z")

</div>

Thank you for the new app 2….  
Now I get data from the battery an inverter and meter that this is conected to.

But I miss the possibility to set dicharge and charge power to meet my needs to sometimes charge from grid at lower watts to not exes grid company’s limits in kWh.( this cost more mint if I  
Go above)

And I am also wondring how to get my second inverter data in to homey so I can use flows based on the total Solar I produce?

---

<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:** [February 25, 2022, 2:54pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/215 "2022-02-25T14:54:38Z")

</div>

cool , will work on that ( charge/discharge) will be easy.

so every invertor /device has it own unique id ,so you can add this also and have your own control or flows on this 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:** [February 25, 2022, 2:56pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/216 "2022-02-25T14:56:31Z")

</div>

for combining devices you should be able to do this with a flow (triggered on something) with multiple AND ( flow conditions)

---

<div class="post-metadata">

**Author:** ![tsveri](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/tsveri/32/48145_2.png) [@tsveri](https://community.homey.app/u/tsveri)\
**Post date:** [February 25, 2022, 3:06pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/217 "2022-02-25T15:06:41Z")

</div>

How do i add one more inverter as i didn’t find a place to put id when ading a new unit in Homey

The inverter is set as slave to the other

---

<div class="post-metadata">

**Author:** ![tsveri](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/tsveri/32/48145_2.png) [@tsveri](https://community.homey.app/u/tsveri)\
**Post date:** [February 25, 2022, 3:10pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/218 "2022-02-25T15:10:23Z")

</div>

Now place to write id? This is the exstra inverter.

Both inverters has port sat to 502

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/5/1/5148cd289a23f954342bd8c5993872e0fc0ec963.png)  
 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/8/8/88fd44bb87311dea10e404aa83482fecca760df4.png)

---

<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:** [February 25, 2022, 3:12pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/219 "2022-02-25T15:12:41Z")

</div>

good point , will also do that. now it is always 1.

---

<div class="post-metadata">

**Author:** ![tsveri](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/tsveri/32/48145_2.png) [@tsveri](https://community.homey.app/u/tsveri)\
**Post date:** [February 25, 2022, 3:14pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/220 "2022-02-25T15:14:41Z")

</div>

Thanks! Have a nice weekend

---

<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:** [February 25, 2022, 4:59pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/221 "2022-02-25T16:59:08Z")

</div>

thanks.

can you try this version [SolarEdge + Growatt TCP modbus | Homey](https://homey.app/nl-nl/app/solaredge.modbus/SolarEdge/test/)

it has invertor id plus you can set discharge and charge

so you need to set it in some remote control and add some delay between charge and discharge else it will be in parallel executed and will get connection errors, but I will retry in that case

 ![Screen Shot 2022-02-25 at 17.56.21](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/d/6/d6d7c062489db24c0d8268dac6660e17b96dc713.jpeg)  
 ![Screen Shot 2022-02-25 at 17.56.41](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/0/4/04762be1f9e09268f738c030432b5b0ada395d03.jpeg)

---

<div class="post-metadata">

**Author:** ![tsveri](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/tsveri/32/48145_2.png) [@tsveri](https://community.homey.app/u/tsveri)\
**Post date:** [February 25, 2022, 6:35pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/222 "2022-02-25T18:35:30Z")

</div>

I have now upgraded an tester to get the new charge disagreeable I needed to remove the storedge and add it again but exept from this as i can se everything is working. I will test more and kept you updated

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/9/6/967474caa2e57e8c9319d4e58d69e944c9dc844c.jpeg)  
 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/9/a/9ac5fee4ef5db53eafbef936dba771aae1893a60.png)  
 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/e/e/ee407b033feebe747e9d9c9ae0ad2215d4cb1323.jpeg)  
 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/b/1/b18d84fa9fada3fc4fad2476c8bc97235404fdc1.png)

---

<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:** [February 25, 2022, 8:41pm UTC](https://community.homey.app/t/app-pro-solaredge-growatt-tcp-modbus/45487/223 "2022-02-25T20:41:03Z")

</div>

yes you need to remove old devices and install the new ones. plus add 2 second delay between actions. to avoid conflicts

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

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