zeversolarlocal

zeversolarlocal


Keywords
solar, async, energy
License
MIT
Install
pip install zeversolarlocal==1.1.0

Documentation

Code style: black PyPI codecov

zeversolarlocal

Access solar energy data from your local Zeversolar inverter.

Principle

This library accesses the home.cgi endpoint which returns a bytes object, which is parsed returning current power generation and the daily generated energy. The inverter is powered by the solar energy generated by the connected solar panels. This means that some generated errors can mean different things depending on circumstances.

If the inverter cannot be reached a ZeverTimeout is raised. Which could mean:

  1. The ip-address of the inverter is wrong.
  2. The inverter is switched off (no solar power). But can be considered expected behavior.

If returning data cannot be parsed properly a ZeverError is raised. Which could mean:

  1. The returned data is wrong and is indeed an error.
  2. Sometimes some other data is returned (which meaning is currently unknown), which cannot be parsed, but everything else is fine.

installation

pip install zeversolarlocal

usage

import asyncio
import zeversolarlocal

loop = asyncio.get_event_loop()

def get():

    address = "192.168.1.12"  # ip address of your zeversolar inverter.
    url = zeversolarlocal.default_url(address)
    
    solar_data = loop.run_until_complete(zeversolarlocal.solardata(url))

    print(solar_data)

CLI

from the commandline use:

python -m zeversolarlocal 192.168.1.12

Changelog

1.0.0

  • First release