Combines a working system to save force, acceleration and gyro data to an SD card in a MAX32630 with BLE_Heartrate taken from the mbed site.
Dependencies: USBMSD_BD BMI160 HX711 max32630fthr USBDevice
readme.md@83:b67e4bb6a087, 2020-06-04 (annotated)
- Committer:
- qaz
- Date:
- Thu Jun 04 10:32:19 2020 +0000
- Revision:
- 83:b67e4bb6a087
- Parent:
- 81:b8ef2a762318
Publishing
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mbed_official | 1:72c60abef7e7 | 1 | # BLE Heart Rate Monitor |
mbed_official | 1:72c60abef7e7 | 2 | |
qaz | 81:b8ef2a762318 | 3 | This application transmits a heart rate value using the [Bluetooth SIG Heart Rate Profile] |
qaz | 81:b8ef2a762318 | 4 | (https://developer.bluetooth.org/TechnologyOverview/Pages/HRP.aspx). [Ciaran: dead link! 24/10/19] |
qaz | 81:b8ef2a762318 | 5 | The heart rate value is provided by the application itself, not by a sensor, so that you don't have to get a sensor just to run the example. |
mbed_official | 1:72c60abef7e7 | 6 | |
qaz | 81:b8ef2a762318 | 7 | Technical details are better presented [in the mbed Classic equivalent of this example] [and almost impossible to relate to this version - Ciaran] |
qaz | 81:b8ef2a762318 | 8 | (https://developer.mbed.org/teams/Bluetooth-Low-Energy/code/BLE_HeartRate/). [Ciaran: that wouldn't compile for me 23/10/19] |
mbed_official | 1:72c60abef7e7 | 9 | |
mbed_official | 1:72c60abef7e7 | 10 | # Running the application |
mbed_official | 1:72c60abef7e7 | 11 | ## Requirements |
qaz | 80:caccea4da07b | 12 | To see the heart rate information on your phone, use a BLE scanner: |
mbed_official | 1:72c60abef7e7 | 13 | - [nRF Master Control Panel](https://play.google.com/store/apps/details?id=no.nordicsemi.android.mcp) for Android. |
mbed_official | 1:72c60abef7e7 | 14 | - [LightBlue](https://itunes.apple.com/gb/app/lightblue-bluetooth-low-energy/id557428110?mt=8) for iPhone. |
mbed_official | 1:72c60abef7e7 | 15 | |
mbed_official | 1:72c60abef7e7 | 16 | Hardware requirements are in the [main readme](https://github.com/ARMmbed/mbed-os-example-ble/blob/master/README.md). |
mbed_official | 1:72c60abef7e7 | 17 | |
mbed_official | 1:72c60abef7e7 | 18 | ## Building instructions |
mbed_official | 1:72c60abef7e7 | 19 | |
mbed_official | 1:72c60abef7e7 | 20 | Building instructions for all samples are in the [main readme](https://github.com/ARMmbed/mbed-os-example-ble/blob/master/README.md). |
mbed_official | 1:72c60abef7e7 | 21 | |
mbed_official | 1:72c60abef7e7 | 22 | ## Checking for success |
mbed_official | 1:72c60abef7e7 | 23 | |
qaz | 81:b8ef2a762318 | 24 | **Note:** Screens captures depicted below show what is expected from this example if the scanner used is *nRF Master Control Panel* version 4.0.5. |
qaz | 81:b8ef2a762318 | 25 | If you encounter any difficulties consider trying another scanner or another version of nRF Master Control Panel. |
qaz | 81:b8ef2a762318 | 26 | Alternative scanners may require reference to their manuals. |
mbed_official | 1:72c60abef7e7 | 27 | |
mbed_official | 1:72c60abef7e7 | 28 | 1. Build the application and install it on your board as explained in the building instructions. |
mbed_official | 1:72c60abef7e7 | 29 | 1. Open the BLE scanner on your phone. |
mbed_official | 1:72c60abef7e7 | 30 | 1. Start a scan. |
mbed_official | 1:72c60abef7e7 | 31 | |
mbed_official | 1:72c60abef7e7 | 32 | ![](img/start_scan.png) |
mbed_official | 1:72c60abef7e7 | 33 | |
qaz | 80:caccea4da07b | 34 | **figure 1** How to start scan using nRF Master Control Panel 4.0.5 |
mbed_official | 1:72c60abef7e7 | 35 | |
mbed_official | 1:72c60abef7e7 | 36 | 1. Find your device; it should be named `HRM`. |
mbed_official | 1:72c60abef7e7 | 37 | |
mbed_official | 1:72c60abef7e7 | 38 | ![](img/scan_result.png) |
mbed_official | 1:72c60abef7e7 | 39 | |
qaz | 80:caccea4da07b | 40 | **figure 2** Scan results using nRF Master Control Panel 4.0.5 |
mbed_official | 1:72c60abef7e7 | 41 | |
mbed_official | 1:72c60abef7e7 | 42 | 1. Establish a connection with your device. |
mbed_official | 1:72c60abef7e7 | 43 | |
mbed_official | 1:72c60abef7e7 | 44 | ![](img/connection.png) |
mbed_official | 1:72c60abef7e7 | 45 | |
qaz | 80:caccea4da07b | 46 | **figure 3** How to establish a connection using Master Control Panel 4.0.5 |
mbed_official | 1:72c60abef7e7 | 47 | |
mbed_official | 1:72c60abef7e7 | 48 | 1. Discover the services and the characteristics on the device. The *Heart Rate* service has the UUID `0x180D` and includes the *Heart Rate Measurement* characteristic which has the UUID `0x2A37`. |
mbed_official | 1:72c60abef7e7 | 49 | |
mbed_official | 1:72c60abef7e7 | 50 | ![](img/discovery.png) |
mbed_official | 1:72c60abef7e7 | 51 | |
qaz | 80:caccea4da07b | 52 | **figure 4** Representation of the Heart Rate service using Master Control Panel 4.0.5 |
mbed_official | 1:72c60abef7e7 | 53 | |
mbed_official | 1:72c60abef7e7 | 54 | 1. Register for the notifications sent by the *Heart Rate Measurement* characteristic. |
mbed_official | 1:72c60abef7e7 | 55 | |
mbed_official | 1:72c60abef7e7 | 56 | ![](img/register_to_notifications.png) |
mbed_official | 1:72c60abef7e7 | 57 | |
qaz | 80:caccea4da07b | 58 | **figure 5** How to register to notifications using Master Control Panel 4.0.5 |
mbed_official | 1:72c60abef7e7 | 59 | |
mbed_official | 1:72c60abef7e7 | 60 | |
qaz | 80:caccea4da07b | 61 | 1. You should see the heart rate value change every half second. It begins at 100, goes up to 175 (in steps of 1), resets to 100 and so on. |
mbed_official | 1:72c60abef7e7 | 62 | |
mbed_official | 1:72c60abef7e7 | 63 | ![](img/notifications.png) |
mbed_official | 1:72c60abef7e7 | 64 | |
qaz | 81:b8ef2a762318 | 65 | **figure 6** Notifications view using Master Control Panel 4.0.5 |