feat: Add HR data visualization and CSV conversion scripts
This commit is contained in:
@ -6,11 +6,11 @@ from typing import Final, Optional
|
||||
from loguru import logger
|
||||
from anyio import create_udp_socket, create_connected_udp_socket
|
||||
|
||||
DEVICE_NAME: Final[str] = "MAX-HUB"
|
||||
DEVICE_NAME: Final[str] = "Polar Sense E4E71028"
|
||||
UDP_SERVER_HOST: Final[str] = "localhost"
|
||||
UDP_SERVER_PORT: Final[int] = 50_000
|
||||
BLE_HR_SERVICE_UUID: Final[str] = "180D"
|
||||
BLE_HR_CHARACTERISTIC_RAW_UUID: Final[str] = "ff241160-8a02-4626-b499-b1572d2b5a29"
|
||||
BLE_HR_MEASUREMENT_CHARACTERISTIC_UUID: Final[str] = "2A37"
|
||||
|
||||
|
||||
async def main():
|
||||
@ -45,16 +45,16 @@ async def main():
|
||||
raise ValueError(f"Characteristic not found: {char_uuid}")
|
||||
return char
|
||||
|
||||
hr_raw_char = await find_char(
|
||||
BLE_HR_SERVICE_UUID, BLE_HR_CHARACTERISTIC_RAW_UUID
|
||||
hr_measurement_char = await find_char(
|
||||
BLE_HR_SERVICE_UUID, BLE_HR_MEASUREMENT_CHARACTERISTIC_UUID
|
||||
)
|
||||
|
||||
async def on_hr_data(char: BleakGATTCharacteristic, data: bytearray):
|
||||
logger.info("raw={}", data.hex())
|
||||
logger.info("hr_measurement={}", data.hex())
|
||||
await udp.send(data)
|
||||
|
||||
logger.info("Starting notify")
|
||||
await client.start_notify(hr_raw_char, on_hr_data)
|
||||
await client.start_notify(hr_measurement_char, on_hr_data)
|
||||
ev = anyio.Event()
|
||||
await ev.wait()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user