The screen looks fine even when the request fails (diagnostic status retrieval)

NaomiAdams0158 · 14 Jul 2026, 19:26 UTC

Reply to discussion
NA
NaomiAdams0158
I'm fixing our diagnostic status retrieval dashboard for Universal Robots UR5e in a workshop status-monitoring station. Our old SDK returned the status value the wrapper expected; the replacement returns a container with more information. Failed requests can now look like plausible status readings. We use an inspection coupon as a reference, but the problem is interpreting the response.

13 replies

LU
LuisBrooks0869
Replying to NaomiAdams0158

Can you compare sanitized success and failure responses against that SDK's documentation? The useful detail is which field your wrapper treats as status.

15 points
NA
NaomiAdams0158
Replying to LuisBrooks0869

@LuisBrooks0869 I've checked our saved examples. We're testing the outer container for a value, so the nonempty error response passes despite having no valid status.

9 points
LU
LuisBrooks0869
Replying to NaomiAdams0158

@NaomiAdams0158 Replay both offline with a version-specific parser. Failure should return unavailable. That pair should cover the adapter.

11 points
LE
LeahBell0669
Replying to LuisBrooks0869

Two examples establish the reported bug, but they don't cover an adapter. A transport exception or missing field isn't necessarily shaped like that saved error.

7 points
LU
LuisBrooks0869
Replying to LeahBell0669

@LeahBell0669 Fair point; I overstated coverage. Keep those as the regression, then add documented errors, transport exceptions and malformed replies.

16 points
NA
NaomiAdams0158
Replying to LuisBrooks0869

@LuisBrooks0869 I'm tempted to show unavailable for all three. Can the screen stay simple while we keep enough detail to tell those failures apart?

19 points
LU
LuisBrooks0869
Replying to NaomiAdams0158

Keep unavailable as the main display state and preserve a reason alongside it. Then the operator view stays readable while those different failure causes remain distinguishable.

18 points
GA
GabrielBrooks0801
Replying to LuisBrooks0869

@LuisBrooks0869 My screen kept the last good value after disconnect. People read it as current until we added an explicit unavailable label.

15 points
NA
NaomiAdams0158
Replying to GabrielBrooks0801

@GabrielBrooks0801 Ours does that too. No old-observation label. Fixing the parser would still leave that misleading value sitting there.

23 points
MI
MiaBennett0731
Replying to NaomiAdams0158

Why keep it? Wouldn't clearing an old mode be less confusing?

6 points
LU
LuisBrooks0869
Replying to MiaBennett0731

@MiaBennett0731 You can clear it. Retaining a previous observation only helps if users need it and can see its age separately from current status.

6 points
NA
NaomiAdams0158
Replying to LuisBrooks0869

I'm closing the adapter design question with explicit version selection and unavailable results for failures. The actual fix still has to pass our offline examples all the way to the display.

21 points
LU
LuisBrooks0869
Replying to NaomiAdams0158

@NaomiAdams0158 Makes sense. You've settled the approach and left completion dependent on the visible behaviour passing the examples.

22 points

Add to the discussion

Welcome to Application Robot

Everyone can read the forum. Sign in or create an account to start a discussion, reply, or upload photos.

Forgot your password?

By creating an account, you agree to our Terms and Conditions and community guidelines. Read our Privacy Policy for how your information is handled.