Skip to main content

Read data from GoodWe inverter via local network

Project description

GoodWe

PyPi Python Versions Build Status License

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

It has been reported to work on GoodWe ET, EH, BT, BH, ES, EM, BP, DT, MS, D-NS, and XS families of inverters. It may work on other inverters as well, as long as they listen on UDP port 8899 and respond to one of supported communication protocols.

(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 inveter via UDP.)

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
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())

or the old way (for XS inverters only), create a processor and inverter instance:

import asyncio
from goodwe import GoodWeInverter, GoodWeXSProcessor


async def get_data():
    ip_address = '192.168.200.100'
    processor = GoodWeXSProcessor()
    inverter = GoodWeInverter(inverter_address=(ip_address, 8899), processor=processor)
    data = await inverter.request_data()
    print(f'power is {data.power} at {data.date:%H:%M:%S}')


asyncio.run(get_data())

References and useful links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

goodwe-0.2.14.tar.gz (36.3 kB view details)

Uploaded Source

Built Distribution

goodwe-0.2.14-py3-none-any.whl (46.1 kB view details)

Uploaded Python 3

File details

Details for the file goodwe-0.2.14.tar.gz.

File metadata

  • Download URL: goodwe-0.2.14.tar.gz
  • Upload date:
  • Size: 36.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for goodwe-0.2.14.tar.gz
Algorithm Hash digest
SHA256 0a9a4f62aa5cc6c478e77c3bd8ff6d6eb282eddb4de40a949e00b4308674ebd0
MD5 3d162711d91160b7b01913a7c842a45d
BLAKE2b-256 d716d69386b7322ecf977b0dda4f6df092eff79b49842316149fa26a9ffc89aa

See more details on using hashes here.

File details

Details for the file goodwe-0.2.14-py3-none-any.whl.

File metadata

  • Download URL: goodwe-0.2.14-py3-none-any.whl
  • Upload date:
  • Size: 46.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for goodwe-0.2.14-py3-none-any.whl
Algorithm Hash digest
SHA256 bd3d76f8f3856dc5aba9e2412366ea191700fc0e50ef7f552fb20d7a1b713c28
MD5 5339769a0d287ce78daaca73ba9ad233
BLAKE2b-256 29a94f4e8259bb5494c7e14bfe77b7f3f96ce75142e8f6477fe1733cc8626e16

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page