This repository contains code to read data on a scheduled interval from Enphase Envoy gateways with firmware 7.x, and publish it on MQTT.
The code will request a token using your Enphase credentials and use the token to read the data locally from your gateway. The token will be automatically refreshed if it expires within 30 days.
- Copy
.env.example
to.env
- Enter the correct values in
.env
- Run
docker-compose up -d enphase-to-mqtt
- Make sure you have uv installed
- Run the code locally using
make dev
oruv run python -m enphase_to_mqtt.app
- Start the mock API server using
docker-compose up -d mock-server
- Run tests using
uv run pytest