HomeWizard Cloud
Async Python library for the HomeWizard Cloud API — stream your P1 meter from the cloud over WebSocket. No local device access needed.
Based on the cloud API research by Sven Serlier and the implementation in jtebbens/com.homewizard.
Install
pip install homewizard-cloud
Usage
import asyncio
from homewizard_cloud import HomeWizardCloudClient
async def main():
client = HomeWizardCloudClient(email="you@example.com", password="secret")
await client.authenticate()
# Find your P1 dongle
for device in await client.get_p1_devices():
print(device.device_id, device.name)
# Stream live data
await client.listen(
"p1dongle/5c2faf3c6a8a",
on_state=lambda device_id, state: print("state:", state["active_power_w"]),
on_realtime=lambda m: print("live wattage:", m.wattage),
)
asyncio.run(main())
How it works
- Auth —
GET api.homewizardeasyonline.com/v1/auth/account/tokenwith HTTP Basic auth (email:password) returns an access token. - Discovery —
GET homes.api.homewizard.com/locationslists your homes and P1 devices (type == "p1dongle", id likep1dongle/5c2faf3c6a8a). - State stream —
wss://energy-app-ws.homewizard.com/ws/sends ahellomessage (masquerading as the Android energy app, which the server requires), thensubscribe_device. Fullp1donglestates andjson_patchdeltas follow. - Realtime stream —
wss://tsdb-reader.homewizard.com/devices/date/nowpushes second-by-second wattage.
Both streams auto-reconnect and the token is refreshed when the server rejects it.
Development
pip install -e ".[dev]"
pytest
ruff check src tests
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file homewizard_cloud-1.0.2.tar.gz.
File metadata
- Download URL: homewizard_cloud-1.0.2.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c87408a49ec84ec36f181447d54e92cccfb07afe02b76b30b5bb854736e9e459
|
|
| MD5 |
38954c427200b23498e508c0d0df29ea
|
|
| BLAKE2b-256 |
0dde42357c80ffc80a20c8bb7af4676a5dbab0a53d898e3055797f46f60bf57b
|
Provenance
The following attestation bundles were made for homewizard_cloud-1.0.2.tar.gz:
Publisher:
publish.yml on MauroDruwel/homewizard-cloud
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
homewizard_cloud-1.0.2.tar.gz -
Subject digest:
c87408a49ec84ec36f181447d54e92cccfb07afe02b76b30b5bb854736e9e459 - Sigstore transparency entry: 2498400717
- Sigstore integration time:
-
Permalink:
MauroDruwel/homewizard-cloud@aaaacb474d9e7a19580cfdaa51be8272394cf193 -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/MauroDruwel
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@aaaacb474d9e7a19580cfdaa51be8272394cf193 -
Trigger Event:
push
-
Statement type:
File details
Details for the file homewizard_cloud-1.0.2-py3-none-any.whl.
File metadata
- Download URL: homewizard_cloud-1.0.2-py3-none-any.whl
- Upload date:
- Size: 10.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de27140ab51353c8235c75f59fbb0a7f1b6f5893d7e8dcaad3caad0ac2d92e5e
|
|
| MD5 |
6f6bed0441e4bdc30bf45813946e701c
|
|
| BLAKE2b-256 |
b22a0b5f30aff18629fba83efe7fbafa7fed5f819c1eca8602ca5d0907c46b9d
|
Provenance
The following attestation bundles were made for homewizard_cloud-1.0.2-py3-none-any.whl:
Publisher:
publish.yml on MauroDruwel/homewizard-cloud
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
homewizard_cloud-1.0.2-py3-none-any.whl -
Subject digest:
de27140ab51353c8235c75f59fbb0a7f1b6f5893d7e8dcaad3caad0ac2d92e5e - Sigstore transparency entry: 2498400727
- Sigstore integration time:
-
Permalink:
MauroDruwel/homewizard-cloud@aaaacb474d9e7a19580cfdaa51be8272394cf193 -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/MauroDruwel
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@aaaacb474d9e7a19580cfdaa51be8272394cf193 -
Trigger Event:
push
-
Statement type: