Focus Totem
- 2 Devlogs
- 9 Total hours
A Pomodoro/study-timer macropad
A Pomodoro/study-timer macropad
Focus Totem — Devlog #2
I changed the board from a rough cluster to a proper routed PCB now, and every error i had before is pretty much cleared. Both LED-chain labels were quietly landing on the exact same point, so I re-spaced them to each own their stub, and the dangling chain-end output got a proper no-connect flag instead of sitting there as a one-pin net. The bigger job was the footprints. I built accurate ones from scratch for the XIAO (7 pads a side, 2.54mm pitch, 0.6” rows) and the SK6812 MINI-E, added a footprint library so nothing looks like its floating, and switched the switches over to the correct stock footprints. After that it routed cleanly: 70 × 72mm, two-layer, ground pour both sides, M3 corner holes, and the XIAO’s USB sat on the bottom edge ready for the case cut-out. The ratsnest is completely gone. On top of that the firmware’s now actually a timer instead of a stub. I added the set → run → pause → done plus the break presets. The encoder sets the minutes, the OLED shows FOCUS / BREAK / DONE / SET with a live mm:ss countdown, and the two LEDs do the thing I wanted from the start, amber while idle, green while running, red in the final minute, then flashing when you’re done. It’s the first time it’s felt like the actual desk totem I pictured rather than a wiring diagram.
Focus Totem — Devlog #1
I started building Focus Totem, a little Pomodoro/study-timer macropad. The idea is a small desk totem you twist to set your focus minutes, press the knob to start, and it counts down on a tiny OLED while two LEDs breathe amber → green → red so you can feel the time going from the corner of your eye. I built it because I doomscroll the second studying gets boring, so I wanted a physical thing sat on my desk that I have to deliberately start. I’ve set up the whole skeleton from scratch: the KiCad schematic fully wired (13 symbols), a rough PCB with all the parts placed, and a QMK keyboard folder that compiles. Pinout’s locked in and the schematic and firmware agree pad-for-pad: three keys on D0–D2, the encoder on D3/D6/D7, the OLED over I²C on D4/D5, and the SK6812 data line on D10. I wanted the whole thing wired and testable before I touch routing, so that if something breaks later I know it’s the layout and not the connections. Ran the first round of checks though and the PCB threw up a fair few errors when I opened. Nothing fatal, looks like footprint and outline gremlins from the skeleton stage. Next up: sorting those errors, routing the board, drawing the Edge.Cuts outline, and building the actual Pomodoro state machine with the OLED countdown and the LED breathing.