ROBOFAULTS

FIELD NOTES · JULY 2026

Robot vacuum error codes, explained: one grammar, two dialects

Published: 2026-07-05 Updated: 2026-07-05

A robot vacuum cannot describe its problems, so it does the next best thing: it stops, and it tells you a number. Every brand wraps that number differently — a spoken sentence, a voice prompt, a red blink, a push notification — but underneath, the system is the same everywhere. A sensor or a motor reported something out of range, and the robot would rather quit than guess. Learn to read the number and most breakdowns stop being mysteries.

Two dialects of the same language

Roomba talks. When something fails, the robot speaks the error aloud along with a short instruction, older models add blink patterns on the CLEAN button, and Wi-Fi models repeat the code in the iRobot app with troubleshooting steps. The numbers stay stable across generations, which is why a code library like our Roomba index can cover machines a decade apart.

Roborock announces. An active fault gets a quickly flashing red indicator and a voice prompt that names the error number; the app then shows the same code with its fix text. The dialect differs — Roborock leans on the app for detail where Roomba leans on speech — but both brands ultimately hand you a number and expect you to know what to do with it. That's what our Roborock index is for.

Some faults never earn a number at all. A robot that won't charge, won't dock, or wanders like it's had a long lunch produces a symptom, not a code — and symptom faults follow the same tiered logic, minus the convenient label. The diagnostic sequence doesn't change: clean the relevant surfaces first, reboot second, suspect hardware last.

How to read severity

Manufacturers don't print a severity scale, but the codes sort themselves into three tiers once you look at what they point to. Tier one is housekeeping: a sensor is dirty, a brush is wrapped in hair, a bin isn't seated. The robot is healthy; it just can't see or spin. Tier two is mechanical wear: a wheel module, a brush motor, a battery reaching the end of its chemistry. Tier three is electronics: the faults that survive every cleaning and every reboot. The repair cost climbs by roughly an order of magnitude at each tier, which is why diagnosing the tier first is worth five minutes of anyone's time.

The single most useful diagnostic isn't in any manual: does the code come back after a proper cleaning and a reboot? A one-off code after a heavy session on a shag rug means nothing. The same code three runs in a row, on clean parts, means a component is failing — the number hasn't changed, but its meaning has moved up a tier.

Clean it, replace it, or call it

Clean something: the overwhelming majority. On Roomba, Error 2 (hair in the brushes), Error 6 (dusty cliff sensors) and Error 14 (bin contacts) all fall here. On Roborock, error 5 wants the main brush pulled and stripped, and error 13 usually wants nothing more than a dry cloth across the charging contacts of robot and dock.

Replace something: the code persists on clean parts, or the part visibly isn't what it used to be — bent side-brush arms, a filter that stays gray, a battery that dies mid-room, wheels that squeal. Consumables and modules are cheap and easy to fit yourself; both our Roomba and Roborock parts libraries map codes to the parts that clear them. Call it dead: repeated internal errors like Roomba's Error 15 that outlive reboots, charging faults that survive new contacts and a known good battery, or any mainboard-level fault where the repair quote passes half the price of a replacement. Robots earn retirement the same way cars do — not with one failure, but with a pattern.

Before you search a code

  1. Write down the exact number and the brand. "Error 5" alone is ambiguous; "Roomba Error 5" is a diagnosis waiting to happen.
  2. Note what the robot was doing when it stopped — carpet edge, cable zone, dark rug. Location is half the diagnosis.
  3. Do the obvious first: empty the dustbin, strip the brushes, wipe the sensors. It resolves more codes than any forum thread.
  4. Reboot once. A stuck reading sometimes clears; a real fault always comes back.
  5. Then look the code up — Roomba index, Roborock index — and check whether yours is a rag-tier, part-tier or retirement-tier number.

One habit ties it all together: treat the first appearance of any code as information, not emergency. The robot already did the hard part by stopping before damage. Your job is only to figure out which tier you're on — and nine times out of ten, the answer weighs less than a washcloth. For prevention rather than cure, our maintenance schedule keeps most of these numbers from ever being spoken.