Automated Coffee Maker
A machine for iced coffee
Author: Dumitrescu Teodora Cristina
GitHub Project Link: https://github.com/UPB-PMRust-Students/acs-project-2026-t3o27-1
Description
The project is an automated coffee machine that allows the user to choose exactly how much sugar and coffee they want. The process is simple: you turn on the device with a button, select your desired quantities from the menu, and then press a start button. The system then pours the sugar, coffee, and water in the correct order and mixes them together. The result is a finished iced coffee, ready to be served.
Motivation
I chose this project because I wanted to build something functional that I can actually use at home after the course is finished. I also find it very interesting to take a common object that you can normally buy in a store and try to recreate it from scratch. This helps me understand the mechanics and logic behind everyday appliances.
Architecture
Input Consists of push-buttons used to select the desired quantities of coffee and sugar, and an LCD display that provides real-time feedback to the user.
Processing : The STM32 Nucleo acts as the central controller. It processes the signals from the buttons and coordinates the other components, managing the timing and quantities needed for the recipe.
Output : The water pump, servo dispenser and mixer work together to prepare and deliver the final mixed iced coffee.
Log
Week 5 - 11 May
Week 12 - 18 May
Week 19 - 25 May
Hardware
Detail in a few words the hardware used.
Schematics
Place your KiCAD or similar schematics here in SVG format.
Bill of Materials
| Device | Usage | Price |
|---|---|---|
| STM32 Nucleo-U545RE-Q | Main microcontroller | Provided by Lab |
| Servo SG90 (4 pieces) | Solid ingredients dispenser mechanism | 45 RON |
| LCD 1602 with I2C | User menu and status display | 23 RON |
| Tactile Buttons (3 pieces) | User input for quantity and start | 3 RON |
| 5mm LEDs (2 pieces) | System status indicators | 1 RON |
| DC Mixer Motor | Homogenizing the coffee (extracted from handheld mixer) | 18 RON |
| Water Pump 3.7V | Liquid dispensing | 20 RON |
| Water hose | The hose for the water pump | 12 RON |
| HC-SR04 Sensor | Measuring water level in the tank | 18 RON |
Software
| Library | Description | Usage |
|---|---|---|
| embassy-stm32 | Async Rust framework | Main hardware abstraction |
| embedded-graphics | 2D graphics library | Drawing UI on the LCD |
| panic-halt | Panic handler | Basic error management |