Bluetooth Low Energy (BLE) radio chips are ubiquitous from Raspberry Pi to light bulbs. BLE is an elaborate technology with a comprehensive specification, but the basics are quite accessible.
A progressive and systematic approach will lead you far in mastering this wireless communication technique, which is essential for working in low power scenarios.
In this book, you'll learn how to:
- Discover BLE devices in the neighborhood by listening to their advertisements.
- Create your own BLE devices advertising data.
- Connect to BLE devices such as heart rate monitors and proximity reporters.
- Create secure connections to BLE devices with encryption and authentication.
- Understand BLE service and profile specifications and implement them.
- Reverse engineer a BLE device with a proprietary implementation and control it with your own software.
- Make your BLE devices use as little power as possible.
This book shows you the ropes of BLE programming with Python and the Bleak library on a Raspberry Pi or PC, with C++ and NimBLE-Arduino on Espressif's ESP32 development boards, and with C on one of the development boards supported by the Zephyr real-time operating system, such as Nordic Semiconductor's nRF52 boards.
Starting with a very little amount of theory, you'll develop code right from the beginning. After you've completed this book, you'll know enough to create your own BLE applications.