goodwe


Namegoodwe JSON
Version 0.4.8 PyPI version JSON
download
home_pagehttps://github.com/marcelblijleven/goodwe
SummaryRead data from GoodWe inverter via local network
upload_time2024-06-16 21:28:27
maintainerNone
docs_urlNone
authorMartin Letenay, Marcel Blijleven
requires_python>=3.8
licenseMIT
keywords goodwe solar panel inverter photovoltaics pv
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # GoodWe

[![PyPi](https://img.shields.io/pypi/v/goodwe.svg)](https://pypi.python.org/pypi/goodwe/)
[![Python Versions](https://img.shields.io/pypi/pyversions/goodwe.svg)](https://github.com/marcelblijleven/goodwe/)
[![Build Status](https://github.com/marcelblijleven/goodwe/actions/workflows/publish.yaml/badge.svg)](https://github.com/marcelblijleven/goodwe/actions/workflows/publish.yaml)
![License](https://img.shields.io/github/license/marcelblijleven/goodwe.svg)

Library for connecting to GoodWe inverter over local network and retrieving runtime sensor values and configuration
parameters.

It has been reported to work with GoodWe ET, EH, BT, BH, ES, EM, BP, DT, MS, D-NS, and XS families of inverters. It
should work with other inverters as well, as long as they listen on UDP port 8899 and respond to one of supported
communication protocols.
In general, if you can connect to your inverter with the official mobile app (SolarGo/PvMaster) over Wi-Fi (not
bluetooth), this library should work.

(If you can't communicate with the inverter despite your model is listed above, it is possible you have old ARM firmware
version. You should ask manufacturer support to upgrade your ARM firmware (not just inverter firmware) to be able to
communicate with the inverter via UDP.)

White-label (GoodWe manufactured) inverters may work as well, e.g. General Electric GEP (PSB, PSC) and GEH models are
know to work properly.

Since v0.4.x the library also supports standard Modbus/TCP over port 502.
This protocol is supported by the V2.0 version of LAN+WiFi communication dongle (model WLA0000-01-00P).

## Usage

1. Install this package `pip install goodwe`
2. Write down your GoodWe inverter's IP address (or invoke `goodwe.search_inverters()`)
3. Connect to inverter and read all runtime data, example below

```python
import asyncio
import goodwe


async def get_runtime_data():
    ip_address = '192.168.1.14'

    inverter = await goodwe.connect(ip_address)
    runtime_data = await inverter.read_runtime_data()

    for sensor in inverter.sensors():
        if sensor.id_ in runtime_data:
            print(f"{sensor.id_}: \t\t {sensor.name} = {runtime_data[sensor.id_]} {sensor.unit}")


asyncio.run(get_runtime_data())
```

## References and useful links

- https://github.com/mletenay/home-assistant-goodwe-inverter
- https://github.com/yasko-pv/modbus-log
- https://github.com/tkubec/GoodWe

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/marcelblijleven/goodwe",
    "name": "goodwe",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "GoodWe, Solar Panel, Inverter, Photovoltaics, PV",
    "author": "Martin Letenay, Marcel Blijleven",
    "author_email": "'marcelblijleven@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/7d/72/98b74543f041a378cf89bdebb58abff0daacda104c625a33d989d910c203/goodwe-0.4.8.tar.gz",
    "platform": null,
    "description": "# GoodWe\n\n[![PyPi](https://img.shields.io/pypi/v/goodwe.svg)](https://pypi.python.org/pypi/goodwe/)\n[![Python Versions](https://img.shields.io/pypi/pyversions/goodwe.svg)](https://github.com/marcelblijleven/goodwe/)\n[![Build Status](https://github.com/marcelblijleven/goodwe/actions/workflows/publish.yaml/badge.svg)](https://github.com/marcelblijleven/goodwe/actions/workflows/publish.yaml)\n![License](https://img.shields.io/github/license/marcelblijleven/goodwe.svg)\n\nLibrary for connecting to GoodWe inverter over local network and retrieving runtime sensor values and configuration\nparameters.\n\nIt has been reported to work with GoodWe ET, EH, BT, BH, ES, EM, BP, DT, MS, D-NS, and XS families of inverters. It\nshould work with other inverters as well, as long as they listen on UDP port 8899 and respond to one of supported\ncommunication protocols.\nIn general, if you can connect to your inverter with the official mobile app (SolarGo/PvMaster) over Wi-Fi (not\nbluetooth), this library should work.\n\n(If you can't communicate with the inverter despite your model is listed above, it is possible you have old ARM firmware\nversion. You should ask manufacturer support to upgrade your ARM firmware (not just inverter firmware) to be able to\ncommunicate with the inverter via UDP.)\n\nWhite-label (GoodWe manufactured) inverters may work as well, e.g. General Electric GEP (PSB, PSC) and GEH models are\nknow to work properly.\n\nSince v0.4.x the library also supports standard Modbus/TCP over port 502.\nThis protocol is supported by the V2.0 version of LAN+WiFi communication dongle (model WLA0000-01-00P).\n\n## Usage\n\n1. Install this package `pip install goodwe`\n2. Write down your GoodWe inverter's IP address (or invoke `goodwe.search_inverters()`)\n3. Connect to inverter and read all runtime data, example below\n\n```python\nimport asyncio\nimport goodwe\n\n\nasync def get_runtime_data():\n    ip_address = '192.168.1.14'\n\n    inverter = await goodwe.connect(ip_address)\n    runtime_data = await inverter.read_runtime_data()\n\n    for sensor in inverter.sensors():\n        if sensor.id_ in runtime_data:\n            print(f\"{sensor.id_}: \\t\\t {sensor.name} = {runtime_data[sensor.id_]} {sensor.unit}\")\n\n\nasyncio.run(get_runtime_data())\n```\n\n## References and useful links\n\n- https://github.com/mletenay/home-assistant-goodwe-inverter\n- https://github.com/yasko-pv/modbus-log\n- https://github.com/tkubec/GoodWe\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Read data from GoodWe inverter via local network",
    "version": "0.4.8",
    "project_urls": {
        "Homepage": "https://github.com/marcelblijleven/goodwe"
    },
    "split_keywords": [
        "goodwe",
        " solar panel",
        " inverter",
        " photovoltaics",
        " pv"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "21390a1760966818ed1dddf5e5ecfe0460f0e7745630a7d5312a80570c7a4209",
                "md5": "2a4d6b9af7bfb97bbbe4ad9d908d474d",
                "sha256": "571626900958d749ffc7d3138af9dce12f821635775b735d5b7d4ecd90bd7ad5"
            },
            "downloads": -1,
            "filename": "goodwe-0.4.8-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2a4d6b9af7bfb97bbbe4ad9d908d474d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 41910,
            "upload_time": "2024-06-16T21:28:25",
            "upload_time_iso_8601": "2024-06-16T21:28:25.347157Z",
            "url": "https://files.pythonhosted.org/packages/21/39/0a1760966818ed1dddf5e5ecfe0460f0e7745630a7d5312a80570c7a4209/goodwe-0.4.8-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7d7298b74543f041a378cf89bdebb58abff0daacda104c625a33d989d910c203",
                "md5": "12f532e1db7f37d72b34743958a480a2",
                "sha256": "e20d9a6ce4a603cd303a3d0246f031f08cd307da17125ec3faa75d674c55b3cc"
            },
            "downloads": -1,
            "filename": "goodwe-0.4.8.tar.gz",
            "has_sig": false,
            "md5_digest": "12f532e1db7f37d72b34743958a480a2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 54064,
            "upload_time": "2024-06-16T21:28:27",
            "upload_time_iso_8601": "2024-06-16T21:28:27.445862Z",
            "url": "https://files.pythonhosted.org/packages/7d/72/98b74543f041a378cf89bdebb58abff0daacda104c625a33d989d910c203/goodwe-0.4.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-16 21:28:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "marcelblijleven",
    "github_project": "goodwe",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "goodwe"
}
        
Elapsed time: 3.19419s