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, DT, D-NS, XS and BP 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. Usually the ARM firmware (not inverter firmware) has to be >=13. You should ask manufacturer support to upgrade your ARM firmware to be able to communicate with 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_louigie-1.0.1.tar.gz (30.5 kB view details)

Uploaded Source

Built Distribution

goodwe_louigie-1.0.1-py3-none-any.whl (40.7 kB view details)

Uploaded Python 3

File details

Details for the file goodwe_louigie-1.0.1.tar.gz.

File metadata

  • Download URL: goodwe_louigie-1.0.1.tar.gz
  • Upload date:
  • Size: 30.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for goodwe_louigie-1.0.1.tar.gz
Algorithm Hash digest
SHA256 c2d955c0c42314721690d71097cfea81d9d13692d984006fed49836f96a2eab4
MD5 cb3d15a628e5affc3ab17e6a9cbd34cf
BLAKE2b-256 b037e3da454e3fc5be249774b70264b007f46f87d4283e49b260863eec855b34

See more details on using hashes here.

File details

Details for the file goodwe_louigie-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: goodwe_louigie-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 40.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for goodwe_louigie-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3734c0afb96e6f5624d122c6ee3601e592442316d444b4ee18f91898f6fe18c0
MD5 94c0acbe920e6b56d55bc52a1adb44d9
BLAKE2b-256 5def004a9329074f3e55999363b8add1fa91156e044a6e0a9d7190dfc5cba206

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