Introduction: Pomodoro on Arduino

Picture of Pomodoro on Arduino

This is my first instructables. So don't kill me :). The scope of the project is to be a foundation for a STEM like Home Schooling.

The Pomodoro Technique is a time management method - https://en.wikipedia.org/wiki/Pomodoro_Technique

On short the techniques is to focus on only one task for 25 minutes then take a break of 5 minutes.

So I wanted to make a Pomodoro system with the following functionalities:

1. Have 2 buttons, for starting the work and one for breaking the concentration.
2. 3 leds, a green one for "working, don't disturb me", a yellow one for "now you should take a break", a red one when you should be working (break finished, or you stopped the work)
3. An RGB led to visually count how many entire work cycles I'm doing.

The tools used:
1. Arduino UNO board
2. Breadboard
3. Leds (Red,Yellow,Green and an RGB)
4. 8 resistences - 220 ohms
5. 2 buttons
6. Arduino IDE, PLUS ARDUBLOCK - www.ardublock.com I used Ardublock because it allows me to program the board using blocks - easier for children. The cool part is that it does convert its block in C code. It did have some limitation from the native C, but it gives you all the functionalities you need to control the board.

Step 1: The Details

Picture of The Details

I didn't find an easier way to draw the circuit, I believe you manage to understand easily from this graphical view.

The button on the left start the work phase and the one of the right stop the activity!

The RGB led is working like this:

- In the first 4 cycles it only lights up green - that means low performance
- between 4 and 8 it lights up green and blue - medium :)
- between 8 and 12 it lights up blue and red - and better
- over 12 cycles it only lights up red - I don't know but those are for workaholics :).

I attached both C code (ino) and block code (abp).

------------------

What I didn't like and should be corrected:
I didn't manage to combine the light to a more smoother evolution. It should allow me access functions with values (rgb(r-value,g-value,b-value)).
And more to understand why the difference between colors is so big (getting from green to blue is almost instantaneous) .

I hoped you liked now I want to change the RGB led with a alphanumeric display ;).

Comments

tomatoskins (author)2017-10-12

Excellent first instructable! Thanks for sharing!