Key functions and features ⚡
- Fully automated deployment using Docker Compose, real-time statistics visible immediately
- Grafana dashboard pre-configured with the following real-time and long-term metrics:
- Power Usage (W):
- Histogram plot
- Numerical readouts for last, highest, lowest, range, mean and total usage
- Voltage (V):
- Histogram plot
- Numerical readouts for last, highest, lowest, range, and mean voltage
- Running Cost ($):
- Average cost per hour/day, estimated total cost
- Power Usage (W):
- Filter data by MAC and time window, and optionally device name (as configured in Tapo app)
- Real-time and historic statistics with instant and projected costs based on trends of the selected time window
- InfluxDB v2 back-end time-series optimised database providing hugely efficient storage and indexing; low storage requirements and SQL-like querying
- Automatic device discovery, querying and logging using python-kasa and influxdb-client-python
- Set and forget with new devices appearing automatically and years of data retention, even on limited storage
- Low resource consumption means you can run it on super constrained hardware such as Raspberry Pi 3
Power profiling examples and use cases 📈
- Observe and identify specific device power consumption trends over time
- Understand duty cycles and determine efficient running modes
- Identify inefficient appliances and quantify standby power usage
- Track ongoing running costs of specific devices over short and long term
- Extrapolate hourly and daily running cost estimates from selected time window
- Monitor seasonal or time-of-day usage patterns

Requirements 🔧
-
Linux host (x86 or ARM): Including Raspberry Pi. Windows is not supported; python-kasa requires host networking mode for broadcast discovery, which isn't available under WSL.
-
Docker Engine: If not already installed, follow the platform-relevant install instructions here: https://docs.docker.com/engine/install/
-
Docker user permissions: Ensure your user is added to the docker group (log out/in for changes to take effect):
sudo groupadd docker sudo usermod -aG docker $USER
-
Ssupported TP-Link smart plug(s): One or more Tapo P110 and/or Kasa HS110. Other energy-monitoring models may work but are untested.
-
Third-Party Compatibility enabled in Tapo app: In the Tapo app, open the account (“Me”) page, navigate to “Third-Party Services”, and ensure that “Third-Party Compatibility” is enabled
Ignorant of Things



