Blog / Neato D10 Brain Transplant / Ep. 14

episode 14

The corpse in the garage fought back

Published 7 Aug 2026 · bench session 7 Aug 2026

The corpse in the garage fought back

Last session I signed off smug. The dead PC in the garage would give me a free 12 V bench supply for spinning the real wheel motor — everyone knows you jump the green wire to a black one and an ATX supply springs to life. Corpse to the rescue. Easiest win on the list.

Then I actually pulled the supply out and looked at it, and the first thing I saw was the word DELL.

That’s the tell, and I nearly ignored it. Dell’s small-form-factor machines don’t follow the ATX standard on their power connectors — the colours and pins are their own. The famous horror stories are the old ones that reversed the pinout so that jumping “green to black” shorts a rail straight to ground. So instead of grabbing a paperclip I read the label properly: B255ES-01, 255 W, and — the giveaway — an output that’s almost entirely +12V, split across two rails, with barely any 5 V or 3.3 V at all. The main connector confirmed it: not the fat 24-pin rainbow of an ATX supply, but a stubby 8-pin, mostly white and black wires with one lime-green and one purple. Proprietary through and through.

So the meter came out before the paperclip. On a proprietary connector you don’t guess — you verify. The purple wire read 12.04 V the moment I plugged the mains in, before I’d bridged anything: that’s the standby rail, and it told me two things at once — which wire was really ground, and that my read of the colours was right. The whites sat at 0 V, waiting. Then I bridged the lime-green to a black — Dell’s version of the power button — and the fan spun. Whites jumped to 12.0 V. I had my bench supply after all. It just made me earn it, and taught me that “it’s got a Dell sticker” is a stop and read sign, not a grab a paperclip one.

Between all that I had a driver board to build. The DRV8871s came with their screw terminals soldered but the logic header loose in the bag, so — solder it on. I’ll admit the soldering iron and I have a wary relationship, and sure enough the solder kept beading up and rolling off the tip like water off wax. The fix was learning what the little sponge is actually for: the tip oxidises the second it’s hot, and that dull skin won’t take solder. Wipe it clean, and — the bit nobody tells you — press fresh solder on immediately, while the flux in the core is still alive, before it burns off. Shiny tip, and suddenly the joints just flow. Four pins, a continuity check across each pair to prove I hadn’t bridged them, done.

Wiring the motor had one nice puzzle. There were no separate power leads on the wheel motor — the harness runs into the little encoder board first, and the motor’s terminals are soldered to that board. So it’s powered through the encoder. Six wires come out; two are the motor’s 12 V, four are the encoder. Rather than trust the colours I put the meter on continuity, touched a probe to a motor terminal, and buzzed each wire until two lit up: red and black. Those are the motor. The other four I taped aside for later.

And then — of course — it didn’t spin. I typed F 60. Nothing. F 120. Nothing. I did exactly what you do: started re-checking wiring, found I’d swapped two signal pins, felt clever, fixed it. Still nothing. So back to the meter, and the meter cleared the wiring instantly: 12.03 V sitting right on the driver’s motor terminals. Power was there. The board was fine. The wiring I kept re-checking was fine.

It was stiction. A stopped motor needs a real shove to break free, far more than it needs to keep turning, and 60 and 120 out of 255 just weren’t enough torque to crack it off the mark — it sat there humming below the threshold. I sent F 255.

It spun.

Then I ran the full ramp — 120, 180, 255, stop, and R to send it hard the other way — which, on a motor clamped to nothing, made it leap, and made me swear. Full speed control and direction on a real Neato wheel motor, off typed commands, through a driver actually rated for the job. The swapped pins were a red herring; the real lesson is going in the notes for the firmware — the wheels will need a kickstart: a brief full-power punch to break free, then drop to the speed I actually asked for. Otherwise every slow crawl command will just sit and buzz.

The wheel turns because I told it to. But it still has no idea it moved. That’s the four wires I taped aside — the encoder — and it’s next: powering it up, watching two signals dance as I turn the wheel by hand, and finally teaching the robot not just to move, but to know how far.