skillfed

python-openevse-http

Python wrapper for OpenEVSE HTTP API

python-openevse-http v1.5.0 73.9K downloads/30d#14,910 on PyPI7
Permissive license Apache-2.0 Active released

What it is and what it does

This package provides a Python wrapper around the OpenEVSE HTTP API, enabling asynchronous control and monitoring of electric vehicle chargers equipped with WiFi modules. It abstracts the low-level HTTP and WebSocket protocols into a high-level client interface, allowing developers to query charger status, manage charging claims and limits, toggle grid shaper features, and receive real-time updates without blocking I/O.

The library is built on aiohttp for non-blocking communication and targets Python 3.13 or later. It supports a comprehensive set of API endpoints for status, configuration, overrides, schedules, and firmware updates, though some endpoints remain unimplemented. It handles both HTTP and HTTPS connections, including optional SSL verification bypass for self-signed certificates on trusted networks.

Use it for:

  • Monitor and control home EV chargers from a Python automation or home-assistant integration.
  • Build a dashboard or mobile app backend that queries real-time charger status and sensor data.
  • Implement solar-divert or grid-shaping logic that adjusts charging claims and limits based on external conditions.
  • Automate charging schedules and limits across multiple chargers in a fleet or multi-unit setting.
  • Integrate OpenEVSE chargers into a smart-home or energy-management system via async Python APIs.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

A Python library for asynchronous communication with OpenEVSE chargers via HTTP API on ESP8266 and ESP32 WiFi modules, supporting status queries, charging control, and real-time WebSocket updates.

Yes. The package is actively maintained, has no known vulnerabilities, installs with low friction, and provides a well-structured async interface to a real device ecosystem. It is suitable for production use in home automation, fleet management, and energy-management integrations. The Python 3.13 requirement is a minor constraint but aligns with current best practice.

Install

python-openevse-http on PyPI

pip

pip install python-openevse-http

uv

uv add python-openevse-http

poetry

poetry add python-openevse-http

Installing python-openevse-http

Before you install

Low friction installation as a pure-Python wheel with a single runtime dependency on aiohttp. The package is actively maintained with recent commits and supports current Python versions.

License in practice

Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions; attribution required but no copyleft obligations.

Quickstart

pip install python_openevse_http

import asyncio
import aiohttp

async def main():
    async with aiohttp.ClientSession() as session:
        charger = python_openevse_http.OpenEVSE("192.168.1.30", session=session)
        await charger.update()
        print(f"Charger State: {charger.status}")

asyncio.run(main())

Requires Python 3.13 or later; target OpenEVSE device must be reachable on the network and running compatible ESP8266 or ESP32 firmware.

Verify before relying

  • Whether WebSocket real-time updates work reliably across all supported firmware versions and network conditions.
  • Performance characteristics when controlling multiple chargers concurrently from a single client.
  • Compatibility with OpenEVSE devices behind proxies or NAT configurations.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.13)
Install friction low — pure-Python wheel
Runtime dependencies 1 — aiohttp
Maintenance actively maintained — 52 days since the last release
Last repo commit
First released
Downloads 73,909/month — #14,910 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: python_openevse_http-1.5.0-py3-none-any.whl

Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishProgramming Language :: Python :: 3Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

openevse http api clientev charger control pythonasync evse communicationopenevse wifi module libraryelectric vehicle charger apievse status monitoringaiohttp charger control
ev-chargingiot-device-controlasync-http

More WWW/HTTP packages