AVR controlled espresso machine

ATmega32 based controller/display for my old espresso machine. It controls brew/steam temperature, pump, grinder etc.

Similar projects worth following
I have this old Isomac Brio espresso machine. I bought the machine many years ago, and I ended up chosing this model mainly because of the built-in grinder. I have never been really satisfied with it, as it is pretty hard to get any consistent results from it.

What started out as a simple descaling task ended up being a full-blown electronic project instead...

The final version of the firmware has the following features:

  • Configurable brew and steam temperature
  • Configurable grinder timer
  • Audible beep when temperature for selected mode is reached
  • Auto-flush when switching from steam to brew
  • Grinder-only mode with heater disabled
  • Config stored in EEPROM
  • Auto descaling mode

(Let me know if anyone are interested in the firmware source and I will upload it.)

  • 1 × ATmega32 Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers
  • 1 × 16 x 2 blue LCD display
  • 1 × LM35 temp sensor in TO-220 package

  • Building the controller

    Tobias Rathje02/01/2016 at 11:38 0 comments

    After I had a working prototype on breadboard the final controller was built into a small plastic project box:

    with a female D-Sub connector to match the connector on the machine:

    The final result with blue LCD and four buttons:

    Yeah, I know, it's pretty ugly and it definately won't win any design prizes, but it works :-)

  • Controller prototype

    Tobias Rathje02/01/2016 at 11:27 0 comments

    The first prototype was built on breadboard:

    The software was written in C using Eclipse C/C++ and AVR-GCC plugin.

  • Modifying the machine

    Tobias Rathje02/01/2016 at 10:46 0 comments

    While comtemplating what to do with the machine I stumbled upon this post:

    It seems like this machine wasn't really optimally designed from the beginning. By adjusting the existing over-pressure valve I managed to get much better results from the machine.

    But still those crummy mechanical bimetal thermostats were annoying me, and I needed some automation.

    At first I used a couple of cheap industrial timers and a PID controller along with some solid-state relays to control the pump, grinder motor and heater, but they were clumsy and impractical so I decided to modify the machine for an external MCU-based controller.

    I kept the solid-state relays, replaced the PID sensor with a LM35T and connected the appropriate wires to a D-Sub 9 connector on the front panel instead of the original switches.

    After testing that everything was working using the connector, I was ready to move on to building the controller...

View all 3 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates