Cross-platform Bluetooth Low Energy GATT client library for asynchronous BLE communication
Overall
score
97%
{
"context": "This criteria evaluates how effectively the engineer uses the bleak library to write GATT descriptor values, specifically for configuring characteristic notifications via the Client Characteristic Configuration Descriptor (CCCD).",
"type": "weighted_checklist",
"checklist": [
{
"name": "BleakClient initialization",
"description": "Creates BleakClient instance with device address for establishing connection to BLE device",
"max_score": 15
},
{
"name": "Connection management",
"description": "Uses async context manager or explicit connect/disconnect methods to manage BLE connection lifecycle",
"max_score": 15
},
{
"name": "Characteristic lookup",
"description": "Uses client.services to access the GATT service collection and retrieves the target characteristic by UUID using get_characteristic() or similar methods",
"max_score": 20
},
{
"name": "CCCD descriptor access",
"description": "Accesses the Client Characteristic Configuration Descriptor from the characteristic's descriptors, typically by finding descriptor with UUID '00002902-0000-1000-8000-00805f9b34fb'",
"max_score": 20
},
{
"name": "write_gatt_descriptor usage",
"description": "Calls write_gatt_descriptor() method with the descriptor handle or descriptor object and appropriate data payload to enable/disable notifications",
"max_score": 25
},
{
"name": "Error handling",
"description": "Handles cases where characteristic or CCCD is not found, raising appropriate errors as specified in the API",
"max_score": 5
}
]
}Install with Tessl CLI
npx tessl i tessl/pypi-bleakdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9