We all have trouble focusing sometimes, and the Pomodoro Technique is one popular way to keep yourself from wandering off – by assuring your restless brain that it only needs to sit still for 25 minutes at a time, and then take a well-deserved break.
Pomodoro timers are popular beginner projects because they're simple and flexible. They're named for the tomato-shaped kitchen timer that the technique was based on.
Earlier this year, I realized that habits can be so pernicious because they require constant willpower to resist doing whatever you're trying to stop. A "negative action" takes much more effort than an occasional "positive action", and you don't feel like you're building anything. So I built the Habit Breaker to award myself points for every 1.5 hours I spent not playing a game. Pomodoro seems to work on a similar level, so I decided to make a Pomodoro timer that visualizes the idea of building something as you work, so you get some satisfaction from that even if your task doesn't seem to diminish.
This version uses Micropython to create a "sand" visualization: it "fills up" with lit LEDs as the timer counts up. Later on, I'd like to work in the accelerometer to make the sand really "flow". (For now, I've found that when my mind wanders, it helps to switch tasks to working on this rather than going off into the internet – so perhaps it'll happen sooner rather than later.)
All you need for this is a Micro:bit and a Micro USB cable. Later on, I will probs design an enclosure for this, but right now, it just hangs off the top of my laptop screen.
The codeUsing the Mu editor, I wrote a script that does a sand animation to "build" the 25 minutes, then a number countdown for the break. This provides a really simple, clear display.
There's also an option to run the timer at 30x speed, for testing or demos.
I didn't write this in an "intelligent" (non-blocking) way, so if you want to restart the timer, you'll need to hit the Reset button before selecting button A or B again. (Another potential future upgrade.)
Simply save the script, plug your Micro:bit into the computer, then hit "Flash" to save it to your microcontroller. Push utton B to start the
Comments
Please log in or sign up to comment.