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.