Target repository
This example should be created in micropython-steami-sample, not in micropython-steami-lib. BLE examples are not tied to a specific driver and belong in the sample repo.
What
Create an example that broadcasts a BLE beacon advertisement containing the board's name and a sensor reading (e.g. temperature).
Why
First step in the BLE + indoor localization learning path. Teaches aioble advertising basics. The beacon is visible from any BLE scanner app (nRF Connect, LightBlue).
Suggested approach
- Initialize BLE with
bluetooth.BLE() and aioble
- Read a sensor value (temperature or distance)
- Build an advertising payload with the device name + sensor data as manufacturer-specific data
- Advertise in a loop, updating the sensor value periodically
- Display the advertised data on the OLED for visual feedback
Hardware
- STM32WB55 BLE radio
- SSD1327 OLED (for display)
- Any I2C sensor (WSEN-PADS, HTS221, VL53L1X, etc.)
References
Target repository
This example should be created in micropython-steami-sample, not in micropython-steami-lib. BLE examples are not tied to a specific driver and belong in the sample repo.
What
Create an example that broadcasts a BLE beacon advertisement containing the board's name and a sensor reading (e.g. temperature).
Why
First step in the BLE + indoor localization learning path. Teaches
aiobleadvertising basics. The beacon is visible from any BLE scanner app (nRF Connect, LightBlue).Suggested approach
bluetooth.BLE()andaiobleHardware
References
steamicc/micropython-steami-sample/BLE/aiobledocumentation: https://github.com/micropython/micropython-lib/tree/master/micropython/bluetooth/aioble