CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-bleak

Cross-platform Bluetooth Low Energy GATT client library for asynchronous BLE communication

Overall
score

97%

Overview
Eval results
Files

rubric.jsonevals/scenario-5/

{
  "context": "This criteria evaluates how effectively the engineer uses the bleak library to implement BLE notification management, with primary focus on properly stopping notifications/indications. The evaluation focuses on correct usage of bleak's notification subscription and unsubscription APIs.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "BleakClient instantiation",
      "description": "Creates and properly uses BleakClient class to manage BLE connection lifecycle",
      "max_score": 15
    },
    {
      "name": "Connection management",
      "description": "Uses BleakClient.connect() or async context manager to establish connection, and disconnect() or context manager exit to close connection",
      "max_score": 15
    },
    {
      "name": "Start notifications",
      "description": "Uses BleakClient.start_notify() method to subscribe to characteristic notifications with proper callback function",
      "max_score": 20
    },
    {
      "name": "Stop notifications",
      "description": "Uses BleakClient.stop_notify() method to unsubscribe from characteristic notifications, properly cleaning up the notification subscription",
      "max_score": 30
    },
    {
      "name": "Notification callback",
      "description": "Implements proper callback function signature that receives characteristic handle/object and byte data as parameters for processing notifications",
      "max_score": 10
    },
    {
      "name": "Multiple cycles",
      "description": "Demonstrates that stop_notify() properly terminates notifications and start_notify() can be called again on the same characteristic for multiple monitoring cycles",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/pypi-bleak

tile.json