My Pump Lost Power Three Times. I Logged It as a Reboot and Moved On.

October 14, 2026 · Todd Deshane · 8 min read

In July 1997, a few days after Mars Pathfinder landed, the lander started resetting itself. A watchdog timer would notice that a critical task hadn't run, and force a total system reset. Each one cost a day of science. Hackaday retold the story this week, and the cause is the famous part: priority inversion. A low-priority weather task held a lock the high-priority data bus task needed, medium-priority work kept the low task from running, and the bus task starved until the watchdog pulled the plug. The operating system had a fix built in, priority inheritance, and the lock had been created with it switched off.

That's the part everyone teaches. The part I keep coming back to is three sentences earlier. Glenn Reeves, who led the flight software team, wrote afterward: "We did see the problem before landing but could not get it to repeat when we tried to track it down." Hackaday's summary is blunter: they chalked it up to glitches. And it quotes a rule from an old boss that I've now read four times: if you don't know why it happened, you don't know that it won't happen again.

So I went looking for the glitches I've chalked up. It took one grep.

Three reboots, zero causes

The smart plug my sump pump runs through reports a reason code every time it boots. Code 1 means POWERON: the device lost its supply and came back. Not a crash, not a watchdog, not a firmware panic. The outlet went dead and then it didn't. My monitor logs it like this:

[2026-10-05 22:24:19] PLUG REBOOTED: uptime 1721011s -> 29s — reset_reason=1 (POWERON (power-on))
[2026-10-05 22:24:49] WARNING: Plug output is OFF unexpectedly! Turning back ON.

Earlier in the year the plug rebooted constantly for firmware reasons I eventually chased down and fixed. Since the firmware settled in May, every single reboot has been a POWERON. There have been three.

WhenPlug had been upPower gone forRelay came backMonitor did
July 21, 7:37 pm24 daysUnder a minute (inside a longer connectivity mess)OnEmailed the log mailbox, recovered in 5 min
Sept 16, 12:20 am56 daysUnder a minute (one missed poll)OffTurned it back on, same second
Oct 5, 10:24 pm20 daysUnder a minute (one missed poll)OffTurned it back on at 30 s, and again at 60 s

I wrote about two of those three events at the time. The September one became a post about the plug's power-on default being wrong, which it is. The October one happened ten minutes after I finished repairing an eighteen-hour network outage, and the post was about the eighteen hours. In my own notes for that night it says "actor unknown." Three events, two write-ups, and in none of them did I ask the only question that matters about a POWERON: what cut the power?

What the log can say

Not much, but more than I'd used.

Why the safe behavior is the problem

Here is what makes this uncomfortable rather than just untidy. The plug's power-on default is "off." I confirmed that in September and still haven't changed it. So every one of these blips leaves the pump unpowered until the monitor notices and switches it back on. With the monitor healthy, that's thirty seconds, and that's exactly what happened all three times. Nothing flooded. Nothing even got wet.

But on October 5 the monitor had just spent eighteen hours unable to reach the plug. If the blip had landed inside that window instead of ten minutes after it, the pump would have sat dark for the rest of the night with a monitor that couldn't see it and a default that wouldn't restore it. The thing that kept these three events harmless was timing.

Pathfinder's reset was correct engineering. Reeves is clear about it: "We knew that if this problem occurred we would reset." The watchdog did its job, the spacecraft survived, and that is also why the bug could hide through months of testing. My thirty-second auto-restore is the same shape. It works, and because it works I have never had a reason to look at what it was restoring from.

A safety behavior that works is a mechanism for never learning why it was needed. The better your recovery, the longer your list of events with no cause.

What JPL had that I don't

They found the Pathfinder bug on a ground replica of the spacecraft, with the trace facility turned on, running the same activity sequence over and over. Reeves: "In less than 18 hours we were able to cause the problem to occur." And the hooks that let them push the fix to Mars weren't an accident. His words: the debug features were "not 'fortuitously' left enabled but remain in the software by design."

I don't have a replica of my basement, and the one instrument I do have says only "power-on." A reset reason is a category, not a cause. It tells you the power came back. It doesn't tell you why it left.

What I can do is cheap, and it's the same move as every fix on this blog: add a second measurement the first one can't predict. A second plug, any Shelly or a ten-dollar power-loss logger, on a different outlet of the same circuit. Next time the pump's plug reports a POWERON, the monitor checks the second plug's uptime in the same breath. If both reset, it was the circuit or the utility, and the fix is a UPS or a conversation with the power company. If only the pump's plug reset, it's the receptacle or the plug itself, and the fix is a screwdriver. One extra device turns "reboot" into a word that means something.

And I'll go look at the server and find out whether it's on a battery. Eight months is long enough not to know.

The audit question

If you run any kind of monitoring on equipment you depend on, you have a version of this list. Every system that recovers automatically is building one.

List every event your system self-healed in the last ninety days. For each one, write down the cause. Count the blanks.

The blanks are not failures. They're the Pathfinder glitches: things the system handled so well that nobody had to understand them. Most of them will stay harmless. The one that doesn't will be the one you already saw three times.

For the record, the pit inspection I promised yesterday is still not done. It's day 229. Thirteen millimeters of rain fell on Monday and the pump's pulses didn't change at all, which is one more number pointing at the flashlight.

How many blanks are on your list?

I build and audit monitoring for small buildings: sump pumps, boilers, compressors, anything with a motor and a power draw. The audit starts with the events your system already survived and asks which ones it understood.

See the Physical AI practice