Introduction: The $14 Sophisticated Coffee Grinder Timer

This project is an advancement of my $7 Coffee Grinder Timer Instructable I published a few years ago. As the time goes on, so does the need for a more sophisticated coffee grinder. Similar to what I stated in the last Instructable, the aim of this project is to find a great coffee grinder with as much bang for your buck as possible and to customize it to your needs.

Total cost
I managed to build my timer for about $14 because I had a lot of stuff at home, but even if you buy everything new you could expect a total cost of about $14 to $30 depending on where you buy the parts. But all in all, these expenses are nothing against buying a new professional coffee grinder with a built-in timer.

Things to keep in mind
I am showing you how I customized my coffee grinder, I am not telling anyone that he/she should do the same with their coffee grinder! Everyone is responsible for what he/she is doing! I am not responsible if you hurt yourself, torch your house or anything that kind trying to create your own coffee grinder timer! You are doing everything at your own risk!

Also, keep in mind, that the prices of the parts change frequently - this means that the information in this Instructable could get off-track over time.

Step 1: Baseline

This time I opted for used commercial coffee grinder as a starting point. Since I found a few of them in my local area, I chose the Schärf X-Mill Protect (also called Mazzer Stark).

To be able to use this grinder at home in an economic way, I had to convert it to a single dosage mechanism. This process is straight forward and you can find a lot of great tutorials online.

Now the only thing left is to build an appropriate grinder timer to achieve consistent dosages.

Step 2: Materials

Step 3: Circuit

OLED SDA --> Arduino A4
OLED SCL --> Arduino A5
Rotary Encoder CLK --> Arduino 2
Rotary Encoder DT --> Arduino 3
Rotary Encoder SW--> Arduino 4
Start Button --> Arduino 5
SSR --> Arduino 6

If you like you can simply solder all the connections to the Arduino or you can do it the way I did with one of those cheap prototyping PCBs and some terminal blocks.


Step 4: Programming

To simplify the process of developing a reliable grinder timer firmware, I crated a the OpenGrind project on GitHub. There you can find detailed instructions on how the software works, how to use it and how to upload it onto your Arduino.

But in a Nutshell:

  1. Open the OpenGrind Folder in VSCode
  2. Choose the correct upload_port corresponding to your MCU and OS in the platformio.ini file. This can be for example COM3 on Windows or /dev/ttyUSB0 on Mac or Linux.
  3. Connect your microcontroller and hit the upload button --> enjoy 🎉

Step 5: Usage

Depending on your input, the results stated above will be executed.

Step 6: Conclusion

I think I found another useful solution to create consistent espresso results without spending a fortune on equipment.

Please feel free to adapt my idea and code to your needs. I would be very grateful to include your improvements!

If you like my work, I would really appreciate if you support my work with star on GitHub!

Thanks for your support! :)

Other Stuff
Thanks to Nathan Dumlao for the great conclusion image!

Remix Contest

Participated in the
Remix Contest