Key functions and features ⚡

Power profiling examples and use cases 📈

Requirements 🔧



Secrets and authentication 🔑

There are six files under /secrets that can be updated; these contain placeholder values only. These are only required when you run docker compose and can be deleted once the container has been fully deployed. Recreate them should you need to re-deploy the container.

InfluxDB's token format is undocumented but appears to accept a base64 string (except using _ and - instead of / and +) up to 88 characters long. Keep the stock token for testing or update if running long-term. If you update the token, it must also be updated in /provisioning/datasources/influxdb.yaml.

Quick start 🚀

Check the Requirements section above and ensure that these are met before proceeding.

Clone the repository to your device:

git clone https://github.com/cjastone/tplink-powerdash.git

Update contents of /secrets if you're not deploying for short-term testing only.

Deploy the container:

docker compose up -d

Deployment time varies; should be under 30 seconds with relatively modern hardware and a fast connection to pull the images, or up to several minutes on heavily constrained hardware.

Once docker compose is finished, wait a few moments for services to start. Optionally watch for issues via docker logs -f telemetry-logger. Initial errors while services are initialising are expected; it will keep retrying until the database exists.

If all went to plan, you should be able to browse to Grafana at http://your.docker.host:3000 and log in using the credentials previously configured under /secrets. Data should be visible immediately.

Troubleshooting 🤔

Running docker logs -f telemetry-logger is your best start - this will give information on database connectivity (especially on first run) as well as device discovery and readings.

Database connectivity issues are visible in Grafana under Connections > Datasources > influxdb-v2 > Test.

Please feel free to report any issues encountered.