14. Bluetooth

Networking connected the camera to anything reachable through an access point and a router. Bluetooth is the opposite trade. The camera gives up reach and gets short range, low power, and no infrastructure in return – a couple of metres of direct radio link to a phone or a sensor in the same room, no Wi-Fi network to join, no router to route through, power draw small enough that a coin cell can keep the camera alive for months.

The Python side of this is the aioble module – an asyncio-friendly wrapper that turns the BLE radio’s roles, advertising, discovery, and read/write/ notify primitives into coroutines.

Wrap up