OHB BLE Protocol Version 1.1.0

In order to facilitate compatibility beween software, the BLE protocols used to write tests and firmwares should be indicated in their respective READMEs using a badge as follow:

Note: If not otherwise specified, each datatype is presented in Little Endian format.


Error Service

UUID: 0x1200

Characteristic UUID Buffer size Permissions
Error 0x1201 4 READ | NOTIFY

Error characteristic

Characteristic containing the current state of each sensor. The values are updated only once during initialization and should not change during runtime. Zero signify that the sensor initialization was successfull, while a non-zero value is the sign of a problem during startup.

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
IMU PPG Temp Tens

IMU Service

UUID: 0x1200

Characteristic UUID Buffer size Permissions
Acceleromter 0x1102 11 READ | NOTIFY
Gyroscope 0x1103 11 READ | NOTIFY
Magnetometer 0x1104 10 READ | NOTIFY

Accelerometer Characteristic

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
timestamp (uint32) X value (float) Y value (float) Z value (float)

Gyroscope Characteristic

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
timestamp (uint32) X value (float) Y value (float) Z value (float)

Magnetometer Characteristic

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
timestamp (uint32) X value (float) Y value (float) Z value (float)

PPG Service

UUID: 0x1300

Characteristic UUID Buffer size Permissions
PPG1 0x1305 12 READ | NOTIFY
PPG2 0x1307 12 READ | NOTIFY
SNR1 0x1313 4 READ | NOTIFY
SNR2 0x1314 4 READ | NOTIFY

PPG1 Characteristic

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
timestamp (uint32) val1 (uint32) val2 (uint32)

PPG2 Characteristic

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
timestamp (uint32) val1 (uint32) val2 (uint32)

SNR1 Characteristic

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
val (uint32)

SNR2 Characteristic

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
val (uint32)

Utils Service

UUID: 0x1400

</tr>
Characteristic UUID Buffer size Permissions
Start/Stop 0x1401 1 READ | WRITE
Led intensity 0x1402 1 READ | WRITE | NOTIFY
Sample rate 0x1403 1 READ | WRITE
Calibration trigger 0x1404 1 READ | WRITE

Start/Stop Characteristic

Writing to the first byte of this chracteristic toggles the acquisition state of the OHB. Zero will stop the acquisition while a non-zero value will start it.

Led Intensity Characteristic

Writing to the first byte of this chracteristic sets the led instensity of the PPG leds.

min value max value
1 255

This charcteristic can be monitored to track the change in intensity induced by the auto callibration process.

Sample Average Characteristic

TODO

Sample Rate Characteristic

TODO

Calibration CHaracteristic

Writing to the first byte of this characteristic triggers the auto callibration of the PPG leds. The intensity change can be monitored by subscribing to notifications of the led intensity characteristic.

Change Log

[1.1.0] - 2022-27-03

Added

  • Created Protocol