The problem may be that
void setup() {
waitFor(Time.isValid, 600000); // wait up to 10 minutes for Wi-Fi router to come back online after power failure
...
Particle.function("getRSSI", getRSSI);
Particle.variable("gallonsDown", gallonsDown);
Particle.variable("values", valuesString);
}
You should put that Particle.function()
/ Particle.variable()
(and for the same reason Particle.subscribe()
) block to the top of setup()
.
If the waitFor()
(or anything else) takes more than 5sec after cloud connection you might miss the registration window after connect.