ArduinoCloud.update() Conflicting With Working Code?

I’ve got an PT1000 + MAX31865 hooked up to an Arduino Nano 33 iOT for a super simple thermometer. Everything works great until I call ArduinoCloud.update(); which zeros out the readout.

Commenting out the update() call fixes it - temp reads perfectly. What could cause that?

#include <Adafruit_MAX31865.h>
#include "thingProperties.h"

Adafruit_MAX31865 sensor = Adafruit_MAX31865(10, 11, 12, 13);

#define RREF 4300.0
#define RNOMINAL 1000.0

void setup() {
  Serial.begin(115200);

  sensor.begin(MAX31865_3WIRE);
  
  initProperties();
  ArduinoCloud.begin(ArduinoIoTPreferredConnection);
  setDebugMessageLevel(2);
  ArduinoCloud.printDebugInfo();
}

void loop() {
  ArduinoCloud.update();
  temperature = sensor.temperature(RNOMINAL, RREF);
  Serial.println(temperature);
}

Can you try to add a small delay (ex. delay(1000); ) after ArduinoCloud.update(); and see if it works?

I tried a delay before, after, sandwiched the call between delays, up to 5000ms, and even tried a simple counter that would call it once every 1000 loops. The temperature read great until the call.

delay(5000);
ArduinoCloud.update();
delay(5000);