Post Go back to editing

MAX32664C with 32.09.34 becomes unresponsive when algorithm is started

Category: Software
Product Number: MAX32664
Software Version: 32.09.34
We have a board containing a MAX32664C, MAXM86161 and LIS2DS12 connected as specified in the datasheet and user guides. I've attached the schematic below. I can communicate with the sensor hub from the host microcontroller and have probed the sensor I2C and LDO_EN lines. The hub has been updated to version 32.09.34 successfully. I can configure the sensor hub and I can see that the accelerometer (LIS2DS12) and PPG frontend (MAXM86161) both communicate (ACK) commands sent by the sensor hub when commands are sent to it from the host micro.
 
When I send the sequence of commands to enable the algorithm, the sensor hub NACK's the start command with the code 0xFF, which means that there is an unknown error or the sensor hub is offline.
 
  • I notice that this version does not set LDO_EN by default when the hub is powered up or when configured, but I am setting this early on and the MAXM86161 is acknowledging the sensor hub on the sensor I2C bus

  • I have tried the command sequence suggested in the guide published along with the 32.09.34 MSBL file (MAX32664C_MAXM86161_WHRM_AEC_SCD_WSPO2_C_32.9.34.zip) AN6924_MAX32664C Quick Start Guide_for_Developers_230511 Table 9, Host commands HR, Sp02, AEC, SCD Algorithm Report, everything works as expected until I send the algorithm enable command (0x52 0x07 0x01) and then poll the status register after 500ms, at which point the hub does not respond (0xFF+NACK)

  • I have chaecked that MFIO is enabled at least 300us before sending commands or requesting a response

Schematic

Can you advise on what might be causing this? Is my schematic correct? What is the exact sequence of commands that I must send to configure and enable the algorithm in AGC mode and receive algorithm results?

  • In case anyone else comes across this issue, the MAX32662 at revision 32.09.34 does not turn on the LDO_EN line before probing the optical sensor at power on, this means that the initial probe returns a NAK, and the algorithm cannot be enabled. This can be fixed in hardware by adding a 4K7 pullup from LDO_EN to the 1V8 rail in the above circuit.

    I have to say that the documentation for this series of sensors and hubs is incredibly unclear, and software versioning seems completely random. The datasheet for the MAX32664C on the main AD site is out of date, and I only found the documentation that I was looking for in the zip file for the newest firmware version. The circuit diagrams in the DS that I found did not include this pullup and the software version changes break hardware configurations on a regular basis. Using ADI's MAX32664 hub has been a difficult experience and much precious time has been wasted trying to establish which sections of which documents are correct.

    Be warned, updating to the later versions of the hub firware may break your hardware if you do not have control of MFIO and RESET, even if version changes are "minor"