Page 1 of 1

How does CMX handle sensor failures?

Posted: Sun 05 Jan 2025 11:39 am
by broadstairs
Last night my Ecowitt WS80 temp/hum sensor failed for the umpteenth time and now my GW2000 is not sending any outdoor temp or hum readings but CMX is still showing the last good reading. I had expected some error to be signalled by CMX when the primary temp sensor is no longer sending any readings in the TCP API but no it just shows the last good reading which in my view is misleading. If it had continued to send the last good reading that would be fine but there is no external temp/hum in the TCP API at all. Surely it should be flagging an error somewhere?

I have now swapped to a different external sensor. My other issue is that when this happens strange things are reported by the solar sensor like 2131w/m² and UVI 13 but there seems to be no spike detection on solar. Once I can unplug the failed sensor the solar returns to normal (usually!).

Stuart

Re: How does CMX handle sensor failures?

Posted: Sun 05 Jan 2025 12:16 pm
by mcrossley
MX has no concept (on the whole - I'm slowly changing it) of null values for sensors. So it flatlines at the last recieved entry.

If all the primary sensors fail then it will flag a data stopped, alarm (if enabled), and optionally exit the program.

If one sensor stops its tricky, often different sensors are sent in different messages from the stations. It would need an acceptable time threshold defining and monitoring of every sensor against its last updated time. Some stations also "flat line", and continue to send their last recieved value for some time after losing contact, which would add to the delay in detection.

Yes, it would be better to be able to record null values for all the primary sensors, and have alarming for individual sensor data stopped, we're not there yet.

Re: How does CMX handle sensor failures?

Posted: Sun 05 Jan 2025 12:27 pm
by broadstairs
I understand but I thought as external temperature was a primary sensor then something should happen, in fact both external temp and hum were missing completely from the returned string in the TCP API not just null or 0.

Stuart