
Maxim Integrated
Page 13 of 15
3.2 Algorithm Mode: Heart Rate and SpO
2
shows the list of commands to start the HR/SpO
2
algorithm.
Table 8. Host Commands—HR/SpO
2
Algorithm
#
HOST COMMAND
(HEX)
COMMAND DESCRIPTION
RESPONSE
(HEX)
ST
ART
AL
G
O
RI
TH
M
Host initializes the MAX32664A:
1.1
AA 50 02 0B
00 02 6F 60 (example for A)
FF CB 1D 12 (example for B)
00 AB F3 7B (example for C)
Set SpO
2
calibration coefficients derived from the
. Provided example for:
A = 1.5958422, B = -34.659664, C = 112.68987.
AB 00
1.2
AA 10 00 03
Set output mode to algorithm data (0x03,
streamed data will include PPG, accelerometer,
and algorithm data).
AB 00
1.3
AA 10 01 0F
Set sensor hub interrupt threshold.
AB 00
1.4
AA 52 00 01
Enable the AGC.
AB 00
1.5
AA 44 04* 01 00 (if sensor
hub accelerator is used)
AA 44 04* 01 01 (if host
accelerator is used)
Enable the accelerometer with the sensor hub or
host-side accelerometer.*
(Do not use this command if there is no
accelerometer.)
AB 00
1.6
AA 44 03* 01
Enable the AFE (e.g., the MAX30101).
AB 00
1.7
AA 52 02 01 (normal
algorithm report)
Enable the HR/SpO
2
algorithm. The format of the
samples is shown in
Table 9.
AB 00
R
EA
D
IN
G
SA
M
PL
ES
Host reads the samples upon receiving the MFIO interrupt by the MAX32664A.
2.1
AA 00 00
Read the sensor hub status byte:
Bit 0: Sensor comm error
Bits 1 and 2: Reserved
Bit 3: FIFO filled to threshold (DataRdyInt)
Bit 4: Output FIFO overflow (FifoOutOvrInt)
Bit 5: Input FIFO overflow (FifoInOverInt)
Bit 6: Sensor hub busy (DevBusy)
Bit 7: Reserved
If DataRdyInt is set, proceed to next step.
AB 00 08
2.2
AA 12 00
Get the number of samples (nn) in the FIFO.
AB 00 nn
2.3
AA 12 01
Read the data stored in the FIFO; nn samples (24
bytes each) will be read. The format of samples is
AB 00
data_for_
nn_samples
ST
O
P
Host ends the procedure:
3.1
AA 44 03* 00
Disable the AFE (e.g., the MAX30101).*
AB 00
3.2
AA 44 04* 00
Disable the accelerometer.* (Do not use this
command if there is no accelerometer.)
AB 00
3.3
AA 52 02 00
Disable the algorithm.
AB 00
*Provided indexes are example for sensors such as the MAX30101 AFE or KX122 accelerometer.