The string that wouldn't come back
I'll be honest: I didn't want to deal with motors. Motors mean power systems and a hundred small, critical details I knew I'd miss and then suffer for. There had to be an elegant, mechanical-only answer.
Chasing a spring
Research pointed me at the obvious cousins — tape measures and retractable dog leashes use the same retracting trick. But spooling 26 yards of tether inside my size constraints is a different problem entirely. I bought a spiral spring and hoped. Then I learned spiral springs aren't constant-force: the swimmer would feel a hard pull at the start that drops off dramatically. Constant-force springs exist, but they're expensive and would need a gear ratio I wasn't confident I could design. After enough YouTube videos on retractable string pots, I admitted the purely mechanical path was beyond me — and, conveniently, talked myself into believing a motor is actually better for the user anyway.
Learning electronics the slow way
If only a motor were as simple as an LED. Power management was the first wall: how do you deliver the right voltage to both the ESP32 and the motor without frying either one? I bought a motor driver and a USB-C breakout, wired everything together with jumper wires, and the motor didn't spin. My housemate took one look and told me my wiring was a mess and I should solder.
Soldering, it turns out, should not have been that hard — until I realized I'd been soldering components straight to wires to components like a lunatic, instead of using a protoboard. And it shouldn't have been that hard even then, until I admitted I should have drawn a schematic first. Once I did, the soldering went smoothly, and the motor finally spun. Somewhere in there I started thinking maybe I should learn proper PCB design and save myself the grief.
The bearing that saved everything
Then a new problem appeared: when the swimmer pulls the tether out, they back-drive the motor. With a high-rpm motor behind a 250:1 gearbox, that back-driving generates a serious current spike — the kind that makes you picture smoke. The fix was a one-way bearing. Spin it one direction and it free-wheels, so the swimmer pulls the line out with almost no resistance. Spin it the other and it locks, transmitting torque to spool the line back in. One inexpensive part erased the entire problem. I felt like a genius for about a day.
The rest was tolerances — endless print-and-test cycles, and a sad pile of wasted filament. The breakthrough there came from someone else's design: if I print the string guide as a separate piece and attach it afterward, I can print the main body upside-down and skip a mountain of support material. I worried the join wouldn't be strong enough until I realized a heat-press makes it solid. That one change saved a huge amount of time and plastic.