1 BLE Profiles application for X-CUBE-BLE1, expansion for STM32Cube
1.1 Profiles application overview
1.1.1 Heart rate monitor
1.1.2 Health thermometer monitor
1.1.3 Glucose monitor
1.1.4 Blood pressure monitor
1.1.5 Find me
1.1.6 Alert notification
1.1.7 Time
1.1.8 Proximity
1.2 Software blocks
Figure 1. Profiles application SW architecture
1.2.1 Profile command interface (PCI)
1.2.2 Low Power Manager (LPM)
Figure 2. Overview of the low power manager
1.2.3 Low power manager API
1.2.4 BLE profile stack
1.2.5 BSP layer
1.3 BLE profiles application files
1.3.1 Heart rate monitor
1.3.2 Health thermometer monitor
1.3.3 Glucose monitor
1.3.4 Blood pressure monitor
1.3.5 Find me target
1.3.6 Alert notification server
1.3.7 Time server
1.3.8 Proximity reporter
1.4 BLE profile initialization
1.4.1 Generic initialization
1.4.2 BLE profile specific initialization
1.5 BLE profiles application state machine
1.5.1 HRM application state machine
Figure 3. HRM application state machine
1.5.2 HTM application state machine
Figure 4. HTM application state machine
1.5.3 GLM application state machine
Figure 5. GLM application state machine
1.5.4 BLP application state machine
Figure 6. BLP application state machine
1.5.5 FMT application state machine
Figure 7. FMT application state machine
1.5.6 ANS application state machine
Figure 8. ANS application state machine
1.5.7 Time server application state machine
Figure 9. Time server application state machine
1.5.8 PXP application state machine
Figure 10. PXP application state machine
1.6 MCU power modes
1.7 BLE profiles event handling
1.7.1 Generic events
1.7.2 Heart rate profile events
1.7.3 Health thermometer profile events
1.7.4 Glucose profile events
1.7.5 Blood pressure profile events
1.7.6 Find me profile events
1.7.7 Alert notification profile events
1.7.8 Time profile events
1.7.9 Proximity profile events
1.8 Running the BLE profiles application
1.8.1 Software setup on STM32 Nucleo
1.8.2 Starting the STM32 Nucleo and app
1.8.3 Software setup on the phone
1.8.4 Starting the phone Profiles App and connecting to central device
Figure 11. Splash screen of the profiles Android app
Figure 12. Screenshot of profiles app showing scanned HRS device
1.8.5 Reading HRM data on a smartphone
Figure 13. Screenshot of profiles app paired with HRS device
Figure 14. Screenshot of profiles app paired with HRS device and being notified
1.8.6 Reading HTM Data on smartphone
Figure 15. Screenshot of profiles app paired with HTS device
Figure 16. Screenshot of profiles app paired with HTS device and being notified
1.8.7 Reading GL Data on smartphone
Figure 17. Screenshot of profiles app paired with GL device
Figure 18. Screenshot of profiles app paired with GL device and being notified
1.8.8 Reading BLP Data on smartphone
Figure 19. Screenshot of profiles app paired with BLP device
Figure 20. Screenshot of profiles app paired with BLP device and being notified
1.8.9 Reading FMT Data on smartphone
Figure 21. Screenshot of profiles app paired with FMT device
Figure 22. Screenshot of profiles app paired with FMT device and respective actions
1.8.10 Reading ANS Data on smartphone
Figure 23. Screenshot of profiles app paired with ANS device
Figure 24. Screenshot of profiles app paired with ANS device and respective actions
1.8.11 Reading TS Data on smartphone
Figure 25. Screenshot of profiles app paired with TS device
Figure 26. Screenshot of profiles app paired with TS device and being notified
1.8.12 Reading PXP Data on smartphone
Figure 27. Screenshot of profiles app paired with PXR device
Figure 28. Screenshot of profiles app paired with PXR device and respective actions
2 System setup guide
2.1 Hardware requirements
2.1.1 STM32 Nucleo platform
Figure 29. STM32 nucleo board
2.1.2 X-NUCLEO-IDB04A1 STM32 expansion board
Figure 30. X-NUCLEO-IDB04A1 STM32 expansion board
2.1.3 Android Smartphone
2.2 Software requirements
2.2.1 Software application
2.2.2 Android app
3 Acronyms and abbreviations
Table 1. Acronyms
4 References
5 Revision history
Table 2. Document revision history