Firmware-751 Function-118

From I-CubeX Wiki
Jump to: navigation, search

BIOBEAT3D (118, 76h)

The BioBeat3D function enables output of the BioBeat3D sensor data in both host and stand-alone mode. In host mode the sensor data is output in I2C DATA messages. In stand-alone mode the sensor data is output according to the stand-alone mode settings of the input number that equals the I2C port number. There are the following methods to select, using the [[Firmware-751_Command-008 |FUNCTION command]]’s method/parameter FP:

BioBeat3D v1.0

FP Data output in host mode Data output in stand-alone mode
0 Heartbeat pulse [0, 1]; an unsigned 8-bit value, representing [no, yes] detection of a heartbeat, sent as one byte Heartbeat pulse [0, 64] or [0, 8192]; an unsigned 7-bit or 14-bit value, representing [no, yes] detection of a heartbeat, sent as one or two bytes (LSB, MSB)
Heartbeat rate [3840..64000]: an unsigned 16-bit value, representing [15..250] BPM, sent as nibbles in four bytes (MSB, LSB) Heartbeat rate [15..125] or [1920..16000]; an unsigned 7-bit or 14-bit value, representing [15..125] BPM, sent as one or two bytes (LSB, MSB)
SpO2 [0..100]: an unsigned 8-bit value, representing [0..100] %, sent as nibbles in two bytes (MSB, LSB) SpO2 [0..100] or [0..12800]; an unsigned 7-bit or 14-bit value, representing [0..100] %, sent as one or two bytes (LSB, MSB)
Temperature [0..1360]: a signed 16-bit value, representing [0..85] ºC, sent as nibbles in four bytes (MSB, LSB) Temperature [0..85] or [0..10880]; an unsigned 7-bit or 14-bit value, representing [0..85] ºC, sent as one or two bytes (LSB, MSB)
1 Heartbeat pulse [0, 1]; an unsigned 8-bit value, representing [no, yes] detection of a heartbeat, sent as one byte Heartbeat pulse [0, 64] or [0, 8192]; an unsigned 7-bit or 14-bit value, representing [no, yes] detection of a heartbeat, sent as one or two bytes (LSB, MSB)
Heartbeat rate [3840..64000]: an unsigned 16-bit value, representing [15..250] BPM, sent as nibbles in four bytes (MSB, LSB) Heartbeat rate [7..125] or [960..16000]; an unsigned 7-bit or 14-bit value, representing [15..250] BPM, sent as one or two bytes (LSB, MSB)
SpO2 [0..100]: an unsigned 8-bit value, representing [0..100] %, sent as nibbles in two bytes (MSB, LSB) SpO2 [0..100] or [0..12800]; an unsigned 7-bit or 14-bit value, representing [0..100] %, sent as one or two bytes (LSB, MSB)
Temperature [0..1360]: a signed 16-bit value, representing [0..85] ºC, sent as nibbles in four bytes (MSB, LSB) Temperature [0..85] or [0..10880]; an unsigned 7-bit or 14-bit value, representing [0..85] ºC, sent as one or two bytes (LSB, MSB)
2..124 Heartbeat pulse [0, 1]; an unsigned 8-bit value, representing [no, yes] detection of a heartbeat, sent as one byte Heartbeat pulse [0, 64] or [0, 8192]; an unsigned 7-bit or 14-bit value, representing [no, yes] detection of a heartbeat, sent as one or two bytes (LSB, MSB)
Heartbeat rate [3840..64000]: an unsigned 16-bit value, representing [15..250] BPM, sent as nibbles in four bytes (MSB, LSB) Heartbeat rate [15..125] or [1920..16000]; an unsigned 7-bit or 14-bit value, representing [15..125] BPM, sent as one or two bytes (LSB, MSB)
SpO2 [0..100]: an unsigned 8-bit value, representing [0..100] %, sent as nibbles in two bytes (MSB, LSB) SpO2 [0..100] or [0..12800]; an unsigned 7-bit or 14-bit value, representing [0..100] %, sent as one or two bytes (LSB, MSB)
Temperature [0..1360]: a signed 16-bit value, representing [0..85] ºC, sent as nibbles in four bytes (MSB, LSB) Temperature [0..85] or [0..10880]; an unsigned 7-bit or 14-bit value, representing [0..85] ºC, sent as one or two bytes (LSB, MSB)
IR LED intensity [0..65535]: an unsigned 16-bit value, representing IR LED intensity [0..100] % scaled by the method number (FP) - 1, sent as nibbles in four bytes (MSB .. LSB) IR LED intensity [0..127] or [0..16383]; an unsigned 7-bit or 14-bit value, representing IR LED intensity [0..100] % scaled by the method number (FP) - 1, sent as one or two bytes (LSB, MSB)
Red LED intensity [0..65535]: an unsigned 16-bit value, representing Red LED intensity [0..100] % scaled by the method number (FP) - 1, sent as nibbles in four bytes (MSB .. LSB) Red LED intensity [0..127] or [0..16383]; an unsigned 7-bit or 14-bit value, representing Red LED intensity [0..100] % scaled by the method number (FP) - 1, sent as one or two bytes (LSB, MSB)
125 Heartbeat pulse [0, 1]; an unsigned 8-bit value, representing [no, yes] detection of a heartbeat, sent as one byte Heartbeat pulse [0, 64] or [0, 8192]; an unsigned 7-bit or 14-bit value, representing [no, yes] detection of a heartbeat, sent as one or two bytes (LSB, MSB)
Heartbeat rate [3840..64000]: an unsigned 16-bit value, representing [15..250] BPM, sent as nibbles in four bytes (MSB, LSB) Heartbeat rate [7..125] or [960..16000]; an unsigned 7-bit or 14-bit value, representing [15..250] BPM, sent as one or two bytes (LSB, MSB)
126 SpO2 [0..100]: an unsigned 8-bit value, representing [0..100] %, sent as nibbles in two bytes (MSB, LSB) SpO2 [0..100] or [0..12800]; an unsigned 7-bit or 14-bit value, representing [0..100] %, sent as one or two bytes (LSB, MSB)
127 Temperature [0..1360]: an unsigned 16-bit value, representing [0..85] ºC, sent as nibbles in four bytes (MSB, LSB) Temperature [0..85] or [0..10880]; an unsigned 7-bit or 14-bit value, representing [0..85] ºC, sent as one or two bytes (LSB, MSB)

For all methods except method 127, temperature is measured every 1000 ms. When using method 127 the temperature is measured every time the sensor is sampled, ie. the measurement interval is the same as the digitizer's sampling interval.

Example:

In order to enable the BioBeat3D function to output the heart beats per minute (BPM) and SpO2 percentage measured by a BioBeat3D sensor with I2C device address 87 (default BioBeat3D I2C device address) connected to the 7th I2C port, the following message is sent:

240, 125, 0 {DEV}, 8 {FUNCTION}, 6 {yyy = 6}, 87 {device address}, 118 {BioBeat3D function}, 0 {BPM and SpO2 method}, 247 (F0h, 7Dh, 00h, 08h, 06h, 57h, 76h, 00h, F7h)

In host mode raw sensor data will be output immediately in an I2C DATA message. In stand-alone mode a suitable configuration has to be set using the EDIT CONFIG command before any MIDI messages will be output.

Other settings of the BioBeat3D sensor can be effectuated by using I2C commands such as I2C WRITE and I2C READ. See also the datasheet linked from the BioBeat3D v1.0 webpage.