
Maxim Integrated Page 7 of 24
1.2 Accelerometer
The MAX32664C requires accelerometer data to function properly. In particular, SpO2 calculation
requires a resting condition, and the algorithm uses accelerometer data to detect excessive
motion. In such a condition, computation is paused, and the user is informed with a motion flag.
Of course, if the accelerometer is not available, motion detection for WSpO2can be disabled (see
Table 9).
For a heart-rate monitor, an accelerometer is mandatory to be able to compensate for the user's
motion. Otherwise, the reported heart rate will not be correct during movement.
A sensor hub accelerometer can be integrated through the SPI port of the MAX32664C. In this
case, the required driver for KX122 is already included. The user only needs to follow the
reference schematics to connect the accelerometer and enable it before starting the algorithm,
as described later in this document.
Alternatively, a host-side accelerometer can be used. In this case, the host is required to use a 3-
axis accelerometer at 25Hz sampling and must periodically (e.g., once every 100ms–200ms)
provide accelerometer samples to the MAX32664C using commands shown in Table 2. Note that
this option requires strict timing synchronization between the sampled accelerometer data and
PPG samples of 40ms or less.
Table 2. Host-Side Accelerometer—Sending Data to MAX32664C
HOST COMMAND
(HEX) DESCRIPTION
RESPONSE
DESCRIPTION
Enable host accelerometer.
AA 13 00 04 Read the sensor sample size for
the accelerometer. (optional) AB 00 06
number of bytes per
The following should be executed periodically:
AA 14 00 [Sample
1 values] …
[Sample N values]
Write data to the input FIFO of
sensor hub.
Each sample is three 2-byte
integer values for X, Y, Z in milli-g.
AB 00 Success
AA 00 00 Read the sensor hub status. AB 00 00
not busy