An async implementation of PyAcaia
Project description
pyacaia_async
Async implementation of pyacaia, based on asyncio
and bleak
Usage
import asyncio
from pyacaia_async import AcaiaScale
from pyacaia_async.helpers import find_acaia_devices
async def main()
addresses = await find_acaia_devices()
address = addresses[0]
scale = await AcaiaScale.create(mac=address, is_new_style_scale=False)
await scale.tare()
await scale.startStopTimer()
await scale.resetTimer()
asyncio.run(main())
Callback
Weight and settings are available, if you pass a callback function to the constructor.
In that callback you will either receive objects of type Message
or Settings
. A sample notification handler can look like this and can also be found in decode.py
def notification_handler(sender, data) -> None:
msg = decode(data)[0]
if isinstance(msg, Settings):
print(f"Battery: {msg.battery}")
print(f"Unit: {msg.units}")
elif isinstance(msg, Message):
print(f"Weight: {msg.value}")
scale = await AcaiaScale.create(mac=address, callback=notification_handler)
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
pyacaia_async-0.1.2.tar.gz
(20.5 kB
view details)
Built Distribution
File details
Details for the file pyacaia_async-0.1.2.tar.gz
.
File metadata
- Download URL: pyacaia_async-0.1.2.tar.gz
- Upload date:
- Size: 20.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4708804a7ea60fa061641ca81d5a9a087ee4a1584de70428ac6da5e75c0501c2 |
|
MD5 | ac36358e0e09f292905d5f04015b0de3 |
|
BLAKE2b-256 | 182f465cfa246f73598e8094a58cd6cc84e0148812e0aa9d3b03f822ca2d8e8e |
File details
Details for the file pyacaia_async-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: pyacaia_async-0.1.2-py3-none-any.whl
- Upload date:
- Size: 21.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff5305a6f9fc66925952b5ca1b5fc60c87731ceecd47a6695c5cfd8930a10f3e |
|
MD5 | c9c2a135ae426e6d3139e999e57809c8 |
|
BLAKE2b-256 | a627d09e2b66b0a2933e1e9fd83e557d4f64ff0a9ac3b05ebfcbf2147d77cdc1 |