demonstrate reading/writing a characteristic

This commit is contained in:
2026-02-01 16:45:53 +00:00
parent f25a539084
commit 6c4d64ce0e
3 changed files with 30 additions and 1 deletions
+28
View File
@@ -0,0 +1,28 @@
import code
import readline
import rlcompleter
import asyncio
from bleak import BleakClient,BleakScanner
readline.parse_and_bind("tab: complete")
address = "FF:E4:05:1A:8F:FF"
CURRENT_INDEX_UUID = "76be25c2-0803-44fc-a97c-bcb56c69c926"
async def main(address):
print("go")
devices = await BleakScanner.discover()
for d in devices:
print(d)
async with BleakClient(address, timeout=30) as client:
current_index = await client.read_gatt_char(CURRENT_INDEX_UUID)
print(f"Model Number: {current_index}")
current_index = ord(current_index) + 1
await client.write_gatt_char(CURRENT_INDEX_UUID, bytes([current_index]))
current_index = await client.read_gatt_char(CURRENT_INDEX_UUID)
print(f"Model Number: {current_index}")
asyncio.run(main(address))
+1 -1
View File
@@ -30,7 +30,7 @@ struct WifiProvisioningService {
#[characteristic(uuid = "76be25c2-0802-44fc-a97c-bcb56c69c926", read, notify, value = 0)]
max_network_index: u8,
#[characteristic(uuid = "76be25c2-0803-44fc-a97c-bcb56c69c926", write, value = 0)]
#[characteristic(uuid = "76be25c2-0803-44fc-a97c-bcb56c69c926", read, write, value = 0)]
current_network_index: u8,
// for arrays > 32 we must supply a default value : see
+1
View File
@@ -7,6 +7,7 @@
python = (pkgs.python3.withPackages (python-pkgs: [
python-pkgs.pynacl
python-pkgs.zeroconf
python-pkgs.bleak
]));
in
pkgs.mkShell rec {