I've added detailed logging to a UR5e diagnostic display. Now it sometimes freezes while the log folder is busy. The actual cell controls are separate and keep working.
I'd like to find where the delay is before I hand this back to maintenance. Read call, file write, screen update. At present they're all in one loop.
I've put elapsed timings around each stage. Kept them in memory for the short test. The long gaps line up with writing, while the read call stays fairly steady.
It's a shared folder. I've made an offline test writer that delays, and the display freezes there too. So I can reproduce this without the controller connected.
What will the window show if logging falls behind? Moving writes off the display thread helps, but somebody still needs to know whether the diagnostic history is complete. Not an alarm for every slow write, just a clear state.
I'd rather see 'logging delayed' and any lost-record count, with detail available to maintenance. Queue length alone needs context before it means anything to the operator.
Agreed. I've added logging delayed to the draft display, separately from the age of the last controller read. They're different failures even if both used to look like a stuck number.
The queued writer passes the slow-disk test now. We capped the queue and made lost diagnostic records visible. Still testing recovery when the share comes back before putting this on the workshop laptop.