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-3/

{
  "context": "This evaluation assesses the engineer's ability to use bleak's BleakScanner for filtering BLE devices by service UUIDs during discovery. The focus is on proper use of the service_uuids parameter and related scanner functionality.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "BleakScanner Import",
      "description": "Imports BleakScanner from the bleak package",
      "max_score": 10
    },
    {
      "name": "Service UUID Filter",
      "description": "Uses the service_uuids parameter in BleakScanner.discover() or passes service_uuids to BleakScanner constructor to filter devices by the Heart Rate Service UUID (0x180D or 180D)",
      "max_score": 40
    },
    {
      "name": "Async Scan Execution",
      "description": "Uses BleakScanner.discover() with proper async/await syntax or uses BleakScanner with async context manager (async with)",
      "max_score": 15
    },
    {
      "name": "Timeout Configuration",
      "description": "Configures scan duration/timeout (10 seconds as specified) using the timeout parameter in discover() or appropriate timing mechanism",
      "max_score": 10
    },
    {
      "name": "Device Properties Access",
      "description": "Accesses BLEDevice properties (name, address) from discovered devices correctly",
      "max_score": 10
    },
    {
      "name": "Advertisement RSSI Access",
      "description": "Accesses RSSI value from AdvertisementData when using scanner methods that provide advertisement data",
      "max_score": 10
    },
    {
      "name": "Device Name Handling",
      "description": "Handles cases where device name might be None, using appropriate fallback (e.g., 'Unknown')",
      "max_score": 5
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/pypi-bleak

tile.json