Design the robot error recovery flow before the happy path

Design the robot error recovery flow before the happy path

Design the robot error recovery flow before the happy path

Leon Potgieter, robotics visual systems designer

Leon Potgieter

Leon Potgieter

Robotics HMI & Visual Systems Designer

Robotics HMI & Visual Systems Designer

Robotics HMI & Visual Systems Designer

A six-step method to map how operators notice, diagnose and recover from robot stops, with a worked example flow and a checklist you can use tomorrow.

A six-step method to map how operators notice, diagnose and recover from robot stops, with a worked example flow and a checklist you can use tomorrow.

Previous/Next Articles

Universal Robots puts one sentence in its service documentation that every HMI designer should pin above their desk: "An application which results in daily protective stops is not designed correctly and needs to be modified."

That sentence is aimed at integrators and their programs. I read it as a design brief. On a robot cell a stop is not an edge case. Every cell will stop at some point, and the screens an operator sees in the minute after a stop decide whether the cause gets found or whether someone taps "OK" until the warning goes away.

In my view, too many HMI projects start with the happy path (load job, start, monitor, finish) and leave recovery for last, as a generic modal with an error code. That order is backwards. The happy path is the flow operators repeat calmly. The recovery flow is the one they use under pressure, with a line waiting, sometimes on a shift where nobody from engineering is around. It deserves to be designed first.

This post gives you a method to map that flow, a worked example you can adapt, and a checklist to review it.

Why recovery is the journey that builds or breaks trust

A 2018 human-robot interaction literature review makes the same point. In their review in Frontiers in Psychology, Shanee Honig and Tal Oron-Gilad of Ben-Gurion University note that "more focus has been given to technical failures than interaction failures" and that few studies looked at "communicating failures". They also point out that "how a robot manages failure influences willingness to use the robot again", and that "having to rely on a professional to understand and resolve a robot's faulty behavior is a barrier to acceptance amongst untrained users."

Their model of failure handling has three parts: communicating failures, perception and comprehension of failures, and solving failures. Those three parts map neatly onto screens. Communicate is the alert. Comprehend is the diagnosis view. Solve is the guided fix and the resume. Their review focuses mostly on service and social robots, but the point carries over to cell operators. If one of the three is missing, the operator fills the gap with guesswork or a phone call.

Universal Robots says the same thing from the safety side. Its Preventive Measures page warns that faults "can be hidden from view" by "personnel simply resetting a fault without review of why the fault has happened", and states that "protective stops must never be acknowledged and reset automatically, it must always be a deliberate action by a user to resume after a protective stop." Its protective stop service note goes further: a protective stop warning "SHALL NOT be reset without a review to determine the fault's root cause."

Read those two sources together and you have the brief: make the cause visible, make the review easy, and make resuming a deliberate act. That is a flow, not a dialog.

Step 0: know which kind of stop you are designing for

Not all stops recover the same way, and a single "Error" template flattens differences the operator needs to see. The Universal Robots stop recovery tutorial is a clear public example of how different the paths are. It describes recovery through Dashboard Server commands for external control, but an operator HMI has to take the operator through an equivalent sequence:

  • Protective stop. "A stop initiated by the robot controller due to the robot state's proximity to a limit." The robot "stops playing program, while retaining power." Recovery is close the safety popup, unlock the protective stop, then play, and the program is started from where it stopped.

  • Robot emergency stop. The user "manually releases E-stop button", then the sequence adds brake release, and the program restarts from the beginning.

  • Safety fault or violation. The robot "goes to fault state and powers off robot", which is a different recovery path again.

Other vendors name and sequence these differently, so check your own controller's documentation. The design point holds everywhere: the recovery path depends on the stop type, and the operator should see which path they are on before they touch anything. "Resume from step 14" and "restart from the beginning" are very different promises.


Decision tree: from stop event to recovery path, split by stop type, power state and resume point

Figure 1. Recovery depends on the stop type. Example paths based on the Universal Robots PolyScope stop recovery tutorial; other controllers differ.

A six-step method to map a recovery flow

This is the method I recommend for mapping recovery on a cell or machine HMI. It works on a whiteboard or in FigJam, and it does not need final UI.

1. Inventory the events. Pull the real list of stops, faults and warnings from controller logs, service tickets and integrator notes. Do not start from the error code table alone. You want frequency next to each event: what actually happens every day, and what happens once a year.

2. Classify each event. For each one, record the stop type, whether power is retained, where the program can resume, and the cause family. Honig and Oron-Gilad's split is a useful first cut: technical failures, "caused either by hardware errors or problems in the robot's software system", and interaction failures, which "arise from uncertainties in the interaction with the environment, other agents, and humans". On a cell, a gripper missing a part and a person stepping into a scanner field need different screens.

3. Define the operator response, or demote it. Alarm management has a rule designers should borrow. IEC 62682, as quoted in an ABB/IChemE webinar by Ian Kemble of ABB (May 2021), defines an alarm as a means of indicating "an equipment malfunction, process deviation, or abnormal condition requiring a timely response", and Kemble advises to "only present alarms that are linked to response and corrective action to resolve the alarm". By that definition, if an event has no defined operator action, it is not an alarm. Log it, show it as a status, but do not interrupt with it.

4. Write the screen sequence. For every event that survives step 3, map the same six stages: Notice, Diagnose, Make safe, Fix, Confirm, Resume. Name the screen for each stage and what it must answer. Figure 2 shows the stages as a reusable skeleton.

5. Write the copy last, against rules. Nielsen Norman Group's error-message guidelines translate well to the shop floor: "Concisely and precisely describe the issue", "Offer constructive advice", "Take a positive tone and don't blame the user", "Preserve the user's input" and "Reduce error-correction effort". On an HMI, preserving input means preserving program position, counters and the job context.

6. Test against rate, not just clarity. EEMUA Publication 191, as summarised by Control Global, treats less than one alarm per 10 minutes as "very likely to be acceptable", and less than ten alarms in the 10 minutes following an upset as "should be manageable, but may be difficult" for the operator. Those numbers come from process control rooms, not robot cells, so treat them as a sanity check rather than a target. If your inventory from step 1 shows a cell interrupting an operator far more often than that, the fix is in the application or the alarm design, not in nicer modals.


Six-stage recovery flow: Notice, Diagnose, Make safe, Fix, Confirm, Resume, each with the question the screen must answer

Figure 2. The recovery skeleton. Every alarm that needs an operator response gets all six stages. Method by Leon Potgieter; requirement notes from Universal Robots and NN/g sources.

Worked example: a protective stop on a pick-and-place cell

Here is how the six stages play out for one common event. This is an illustrative flow, not a case study. Adapt the screen names to your product.

S1. Stop banner (Notice). A persistent banner at the top of the main view, in the alarm colour of your system, with the stop type in plain words: "Protective stop. Robot holding position, power on." No modal yet. The operator can still see the cell overview underneath, because context helps diagnosis.

S2. Cause card (Diagnose). Tapping the banner opens a card with three blocks: what happened ("Robot stopped near a force limit during place, step 14"), the likely cause family from your inventory (for example payload or TCP settings, contact with a part or fixture, or the program running close to limits; these mirror the causes listed in UR's service note and Preventive Measures page), and how often this has happened today. Frequency is easy to leave out, and it is the part that tells an operator whether this is a one-off or a pattern.

S3. Make safe. A short state check before any action: who is in the cell, whether the guard is open, what the robot is holding. If your safety concept already handles this, the screen confirms it rather than repeating it.

S4. Fix checklist. A short, event-specific checklist: inspect the gripper, check the part seat, check the fixture. Each item has a tick. If the cause is outside operator scope, the card says so and shows who to call, with the event already packaged for them.

S5. Confirm and resume. One deliberate action, labelled with the consequence: "Resume from step 14" or "Restart program from step 1". This mirrors UR's rule that resuming must be "a deliberate action by a user", and it makes the resume point visible before the tap, not after.

S6. Recurrence log. After resume, the event is written to a readable history with the operator's checklist answers. When the same stop appears for the third time in a shift, the banner should say so and offer an escalation, because UR is explicit that daily protective stops mean the application needs changing.

In my view, a generic error modal with an OK button covers only the first of the six stages, Notice. Figure 3 shows the same stop restructured.


Before and after: a generic error modal versus a structured stop banner and cause card

Figure 3. Before and after structure for the same protective stop. Low-fidelity schematic, no vendor UI copied.

Pattern: the deliberate resume

Do:

  • Show the stop type and the power state in words, not just a colour.

  • Show where the program will resume before the operator confirms.

  • Keep the cell overview visible behind the alert.

  • Count repeats and show the count.

  • Package the event for the person who will be called.

Don't:

  • Auto-acknowledge or auto-reset protective stops. UR states this "masks fault detection" and that "no one will see the protective stop".

  • Put a single "OK" button on a stop that can restart a program from the beginning.

  • Show only a numeric error code. NN/g's guideline is "Use human-readable language".

  • Blame the operator in the copy.

  • Raise an alarm for a normal event. The ABB/IChemE webinar's example is that "pump stopped" or "valve closed" should not be presented as alarms.


AI-generated illustration of a designer mapping a flow on a whiteboard with sticky notes

Figure 4. Map recovery on a wall with the people who clear the stops, before you open Figma.

Checklist: review your recovery flow

Use this on your next HMI review. If you cannot answer yes, you have found your next design task.

  1. Inventory: Do you have a list of real stop and fault events with frequency, not just the code table?

  2. Classification: Is each event tagged with stop type, power state, resume point and cause family?

  3. Response: Does every alarm have a defined operator action? Have events without one been demoted to status or log?

  4. Six stages: Does every remaining alarm have a Notice, Diagnose, Make safe, Fix, Confirm and Resume screen or state?

  5. Plain language: Can an operator tell the stop type and what to do next in under ten seconds without a manual?

  6. Visible resume point: Is "resume from step N" or "restart from the beginning" shown before confirmation?

  7. Deliberate action: Is resuming always a conscious, labelled action, never an automatic reset?

  8. Repeat counter: Does the HMI show how often this stop has happened in the current shift?

  9. Escalation: When the fix is outside operator scope, does the screen say who to call and pass along the context?

  10. Rate check: Have you compared the real interruption rate against EEMUA 191's guidance as a sanity check?

Conclusion

The recovery flow is where your HMI tells the truth about the cell. A cell that stops often and recovers with a tap on "OK" is a cell that hides its problems from the people who could fix them. A cell that stops, explains itself, counts the repeats and asks for a deliberate resume turns every stop into information.

My position: design recovery first, then the happy path. Map it with the operators and technicians who clear stops for a living, not only with the engineers who wrote the program. Your happy path will be simpler for it, because you will already know which states the machine can be in.

Sources
  1. Universal Robots, "Stop recovery", PolyScope tutorials: https://docs.universal-robots.com/tutorials/controlling-robot-externally/stop-recovery.html

  2. Universal Robots, "Preventive Measures" (ignoring protective stops), e-Series service manual SW 5.23: https://www.universal-robots.com/manuals/EN/HTML/SW5_23/Content/prod-serv-man/E-series/serv-man-protective-stop-ignore.htm

  3. Universal Robots, "Protective Stop CB3 Service Note" (2020): https://www.universal-robots.com/articles/ur/robot-care-maintenance/protective-stop-cb3-service-note/

  4. Honig, S. and Oron-Gilad, T. (2018), "Understanding and Resolving Failures in Human-Robot Interaction: Literature Review and Model Development", Frontiers in Psychology 9:861: https://pmc.ncbi.nlm.nih.gov/articles/PMC6013580/

  5. Kemble, I. (ABB), "Alarm Management: A Practical Guide", ABB/IChemE webinar slides, 6 May 2021: https://www.icheme.org/media/16019/icheme-alarm-management-practical-guide-06_05_2021.pdf

  6. Metzger, D., "ASM Alarm Management Guidelines and ISA-18.2: How Do They Stack Up?", Control Global (2009): https://controlglobal.com/protect/safety-instrumented-systems/article/11382017/asm-alarm-management-guidelines-and-isa-182-how-do-they-stack-up

  7. Neusesser, T. and Sunwall, E., "Error-Message Guidelines", Nielsen Norman Group (2023): https://www.nngroup.com/articles/error-message-guidelines/

Previous/Next Articles

more aloud

more aloud

Leon Potgieter

Robotics Visual System Designer

AI makes HMI prototypes look finished. Make them fail instead.
AI tools can make HMI prototypes look done fast. For robot cells, the useful prototype is wired to a virtual controller and fails on command.

Leon Potgieter

Robotics Visual System Designer

AI makes HMI prototypes look finished. Make them fail instead.

AI tools can make HMI prototypes look done fast. For robot cells, the useful prototype is wired to a virtual controller and fails on command.

Leon Potgieter

Robotics Visual system Designer

Let AI read your operator interviews. Never let it be the operator.
In 2026, LLMs matched human analysts at coding interview data and still failed at inventing it. That split should decide where AI sits in HMI research.

Leon Potgieter

Robotics Visual system Designer

Let AI read your operator interviews. Never let it be the operator.

In 2026, LLMs matched human analysts at coding interview data and still failed at inventing it. That split should decide where AI sits in HMI research.

Leon Potgieter

Robotics Visual System Designer

AI Did Not Make Palletisers Smarter. It Moved the Configuration Problem Elsewhere.
Palletising is the most automated end-of-line task and the one where AI claims drift furthest from what ships. What actually changed, and who now has to decide.

Leon Potgieter

Robotics Visual System Designer

AI Did Not Make Palletisers Smarter. It Moved the Configuration Problem Elsewhere.

Palletising is the most automated end-of-line task and the one where AI claims drift furthest from what ships. What actually changed, and who now has to decide.

Leon Potgieter

Robotics Visual System Designer

The AI Tooling I Actually Use for HMI Visuals, and the Line I Do Not Cross
A working account of the generative tooling in my HMI pipeline: what it does for cell renders, motion and variants, and what it must never be allowed near.

Leon Potgieter

Robotics Visual System Designer

The AI Tooling I Actually Use for HMI Visuals, and the Line I Do Not Cross

A working account of the generative tooling in my HMI pipeline: what it does for cell renders, motion and variants, and what it must never be allowed near.

Leon Potgieter

Robotics HMI & Visual Systems Designer

AI can write the robot program. Design the screen that checks it.
Natural-language robot programming moves the risk from writing code to approving it. The review screen is now the most important flow in the HMI.

Leon Potgieter

Robotics HMI & Visual Systems Designer

AI can write the robot program. Design the screen that checks it.

Natural-language robot programming moves the risk from writing code to approving it. The review screen is now the most important flow in the HMI.

Leon Potgieter

Robotics Visual System Designer

Your AI robot render may now count as a deepfake under EU law
Since 2 August 2026, a realistic AI image of a real robot can fall under the EU deep fake rules. Here is how to keep robot visuals true.

Leon Potgieter

Robotics Visual System Designer

Your AI robot render may now count as a deepfake under EU law

Since 2 August 2026, a realistic AI image of a real robot can fall under the EU deep fake rules. Here is how to keep robot visuals true.

Leon Potgieter

Robotics Visual System Designer

HMI software updates Cyber Resilience Act
AI ships HMI features faster, the CRA wants security fixes shipped separately, and operators who get burned often stop updating. Design two tracks.

Leon Potgieter

Robotics Visual System Designer

HMI software updates Cyber Resilience Act

AI ships HMI features faster, the CRA wants security fixes shipped separately, and operators who get burned often stop updating. Design two tracks.

Leon Potgieter

Robotics Visual System Designer

The Brand System Should Start at the Panel, Not at the Fair Wall
Most brand work is built for the first ninety seconds, not for five years. The interface faces the hardest constraints, so it should set the rules.

Leon Potgieter

Robotics Visual System Designer

The Brand System Should Start at the Panel, Not at the Fair Wall

Most brand work is built for the first ninety seconds, not for five years. The interface faces the hardest constraints, so it should set the rules.

Leon Potgieter

Robotics Visual System Designer

Perception Does Not Check Its Sources
Gestalt cannot become obsolete because it describes the viewer, not the screen. Which is why it is now dangerous: it will confidently group a guess with a fact.

Leon Potgieter

Robotics Visual System Designer

Perception Does Not Check Its Sources

Gestalt cannot become obsolete because it describes the viewer, not the screen. Which is why it is now dangerous: it will confidently group a guess with a fact.

Leon Potgieter

Robotics Visual System Designer

The HMI Was a Mirror. Now It Has to Be an Argument
For forty years, the industrial HMI represented machine state. AI broke that contract. The screen's job is now accountability, and that is a different design discipline.

Leon Potgieter

Robotics Visual System Designer

The HMI Was a Mirror. Now It Has to Be an Argument

For forty years, the industrial HMI represented machine state. AI broke that contract. The screen's job is now accountability, and that is a different design discipline.

Leon Potgieter

Robotics HMI & Visual Systems Designer

Your HMI update screen is becoming a compliance feature
EU law will soon expect machine software to be patched, postponed and logged. The screen where an operator taps Install decides if that happens.

Leon Potgieter

Robotics HMI & Visual Systems Designer

Your HMI update screen is becoming a compliance feature

EU law will soon expect machine software to be patched, postponed and logged. The screen where an operator taps Install decides if that happens.

Leon Potgieter

Robotics HMI Visual Designer

The standard retired the cobot. Your HMI still says cobot mode.
ISO 10218:2025 dropped the term "collaborative robot", and the EU listed it in September. Here is why HMI labels, manuals and marketing now need to catch up.

Leon Potgieter

Robotics HMI Visual Designer

The standard retired the cobot. Your HMI still says cobot mode.

ISO 10218:2025 dropped the term "collaborative robot", and the EU listed it in September. Here is why HMI labels, manuals and marketing now need to catch up.

Leon Potgieter

Robotics Visual System Designer

Four months to the Machinery Regulation: what HMI teams must fix
The EU Machinery Regulation applies on 20 January 2027. Several of its requirements end on a screen. Here is what HMI teams should fix now.

Leon Potgieter

Robotics Visual System Designer

Four months to the Machinery Regulation: what HMI teams must fix

The EU Machinery Regulation applies on 20 January 2027. Several of its requirements end on a screen. Here is what HMI teams should fix now.

Leon Potgieter

Robotics Visual Systems Designer

Natural-language robot programming needs a proof screen, not a chat box
Typing "pick the small parts" into a robot is easy. Knowing what the robot understood is the hard part. Design the proof screen first.

Leon Potgieter

Robotics Visual Systems Designer

Natural-language robot programming needs a proof screen, not a chat box

Typing "pick the small parts" into a robot is easy. Knowing what the robot understood is the hard part. Design the proof screen first.

Leon Potgieter

Robotics Visual System Designer

Proof is the new production value in robotics content
AI-generated posts now dominate the LinkedIn feed. In robotics, the content that still earns trust is the kind that proves itself on camera.

Leon Potgieter

Robotics Visual System Designer

Proof is the new production value in robotics content

AI-generated posts now dominate the LinkedIn feed. In robotics, the content that still earns trust is the kind that proves itself on camera.

Leon Potgieter

Robotics HMI & Visual Systems Designer

Robot buyers rank vendors before they call. Content sets the order.
94% of B2B buying groups rank their shortlist before talking to sellers. How robotics vendors can win that silent phase.

Leon Potgieter

Robotics HMI & Visual Systems Designer

Robot buyers rank vendors before they call. Content sets the order.

94% of B2B buying groups rank their shortlist before talking to sellers. How robotics vendors can win that silent phase.

Leon Potgieter

Robotics Visual System Designer

Robot HMIs need a validation test borrowed from medical devices
Many medical device makers validate critical tasks with real users. Robot HMIs, in my view, rarely do. Here is how to borrow the method.

Leon Potgieter

Robotics Visual System Designer

Robot HMIs need a validation test borrowed from medical devices

Many medical device makers validate critical tasks with real users. Robot HMIs, in my view, rarely do. Here is how to borrow the method.

Leon Potgieter

Robotics Visual System Designer

Slop Is a Decision Failure: Taste, Perception and Why Plausible Is Not Correct
Slop isn't an aesthetic failure; it is output made without a cost function. What taste actually is, why perception is trainable, and where AI still loses.

Leon Potgieter

Robotics Visual System Designer

Slop Is a Decision Failure: Taste, Perception and Why Plausible Is Not Correct

Slop isn't an aesthetic failure; it is output made without a cost function. What taste actually is, why perception is trainable, and where AI still loses.

Leon Potgieter

Robotics Visual System Designer

Show the Runners-Up: UX for Machines That Decide
Automation heuristics are not hard to understand, they are invisible. A working method for exposing a machine's ranked decisions at the right depth in the HMI.

Leon Potgieter

Robotics Visual System Designer

Show the Runners-Up: UX for Machines That Decide

Automation heuristics are not hard to understand, they are invisible. A working method for exposing a machine's ranked decisions at the right depth in the HMI.

Leon Potgieter

Robotics HMI & Visual Systems Designer

Your brand colour is a false alarm on a robot HMI
On a robot HMI, colour is a safety signal before it is a brand asset. How to keep the brand on screen without spending the colours operators need.

Leon Potgieter

Robotics HMI & Visual Systems Designer

Your brand colour is a false alarm on a robot HMI

On a robot HMI, colour is a safety signal before it is a brand asset. How to keep the brand on screen without spending the colours operators need.

Robotics Visual System Designer

Leon/Potgieter

Leon/Potgieter

Robotics Visual Systems Designer; bridging the gap between how automation technology works and how the world understands it.

©2026 Leon Potgieter - All work, all rights.

Offline

Leon Potgieter
Koringberg
Western Cape

South Africa

Leon Potgieter - Koringberg, Western Cape, South Africa