Python library for controlling Saleryd HRV system
Project description
pysaleryd
Python library for controlling Saleryd HRV system
Python library for controlling Saleryd HRV system using the built in websocket server used by Saleryd HRV Homeassistant integration https://github.com/bj00rn/ha-saleryd-ftx
Maintains a reconnecting websocket to the system.
Supported devices
LOKE1/Loke Basic/LS-01 using control system 4.1.5
Usage with asyncio as library
Read data
import asyncio
import aiohttp
from pysaleryd.client import Client
async def work():
async with aiohttp.ClientSession() as session:
async with Client(WEBSOCKET_URL, WEBSOCKET_PORT, session) as hrv_client:
await asyncio.sleep(2) # wait a bit for some data
print(client.data)
loop = asyncio.new_event_loop()
loop.run_until_complete(work())
Read data using callback
import asyncio
import aiohttp
from pysaleryd.client import Client
def handle_message(data: dict):
print(data)
async def work():
update_interval = 10 # call handle_message every 30 seconds
async with aiohttp.ClientSession() as session:
async with Client(WEBSOCKET_URL, WEBSOCKET_PORT, session, update_interval) as hrv_client:
hrv_client.add_handler(handle_message)
await asyncio.sleep(update_interval +1 ) # wait around a bit for data
loop = asyncio.new_event_loop()
loop.run_until_complete(work())
Send control command
Command syntax can be found by dissecting websocket messages in the built in web ui
import asyncio
import aiohttp
from pysaleryd.client import Client
async def work():
async with aiohttp.ClientSession() as session:
async with Client(WEBSOCKET_URL, WEBSOCKET_PORT, session) as hrv_client:
await hrv_client.send_command("MF", 1)
loop = asyncio.new_event_loop()
loop.run_until_complete(work())
Troubleshooting
Confirm system is connected and UI is reachable on the local network. Follow steps in the manual.
Confirm websocket port by connecting to the UI using a browser and take note of websocket port using debug console in browser. 3001 is probably default
The system HRV system can only handle a few connected clients. Shut down any additional clients/browsers sessions and try again.
Disclaimer
Use at own risk.
This project is in no way affiliated with the manufacturer.
All product names, logos, and brands are property of their respective owners. All company, product and service names used are for identification purposes only. Use of these names, logos, and brands does not imply endorsement.
Note
This project has been set up using PyScaffold 4.4. For details and usage information on PyScaffold see https://pyscaffold.org/.
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file pysaleryd-6.0.1.tar.gz
.
File metadata
- Download URL: pysaleryd-6.0.1.tar.gz
- Upload date:
- Size: 32.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bb4ab3de63631510fac93335cd568bff533f6df783c6d6a5eae0f92d20fc2c60 |
|
MD5 | f5d5793bfa2683bb07606bb542bec2a3 |
|
BLAKE2b-256 | 6ed275b9bc13f30ed9e1ac4960c9c7f6b411e3316c8208baaa8d2e381b8d7cbe |
Provenance
The following attestation bundles were made for pysaleryd-6.0.1.tar.gz
:
Publisher:
ci.yml
on bj00rn/pysaleryd
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
pysaleryd-6.0.1.tar.gz
- Subject digest:
bb4ab3de63631510fac93335cd568bff533f6df783c6d6a5eae0f92d20fc2c60
- Sigstore transparency entry: 151074236
- Sigstore integration time:
- Predicate type:
File details
Details for the file pysaleryd-6.0.1-py3-none-any.whl
.
File metadata
- Download URL: pysaleryd-6.0.1-py3-none-any.whl
- Upload date:
- Size: 12.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45541a6748c9491049e9efedc4bf30a9a759fd16487c73b28013bb26aadb590c |
|
MD5 | e334e5cac29fb0e9fbfca6eea63de459 |
|
BLAKE2b-256 | 64150fc3104fbb90325a7e3469d261fefd9a2cc57080507fd9cb50c98a4ab3ef |
Provenance
The following attestation bundles were made for pysaleryd-6.0.1-py3-none-any.whl
:
Publisher:
ci.yml
on bj00rn/pysaleryd
-
Statement type:
https://in-toto.io/Statement/v1
- Predicate type:
https://docs.pypi.org/attestations/publish/v1
- Subject name:
pysaleryd-6.0.1-py3-none-any.whl
- Subject digest:
45541a6748c9491049e9efedc4bf30a9a759fd16487c73b28013bb26aadb590c
- Sigstore transparency entry: 151074237
- Sigstore integration time:
- Predicate type: