Particle Electron Wake Early on RI_UC


A few Electrons deployed remotely are waking prematurely during sleep. For example, in one unit with a ~60min sleep cycle, the unit wakes ~45times. On wake, I publish the sleep result as one of the following strings:

String wakeupStrings[5] = {“UNKNOWN”, “BY_GPIO”, “BY_ADC”, “BY_DAC”, “BY_RTC”};

The unit wakes from BY_GPIO, not RTC. It appears to return to sleep normally.
I am using the following sleep configuration with SYSTEM_THREAD(ENABLED) and SYSTEM_MODE(AUTOMATIC) thanks to a recommendation by rickkas7 in a previous thread.

SystemSleepConfiguration config;
.gpio(RI_UC, RISING)
SystemSleepResult result = System.sleep(config);

Serial.printlnf("%d:%d:%d Sleep end. Reason = %d.",Time.hour(), Time.minute(), Time.second(), result.wakeupReason());

The issue does not arise on all Electrons running the same code. Any ideas as to why this is occurring?


Are you also enabling wake on data using AT+URING=1? If so, any data from the cloud side will wake the device, including function calls, variable requests, system requests for a describe message (firmware and Device OS configuration), and OTA requests. If you subscribe to events on the device side, published events matching the event prefix will also wake the device.

I am using AT+URING=1 to allow wake for flash or function. We are not subscribed to any events. Is it possible that these devices are picking up interference from surrounding devices?

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.