Skip to content

espresso: Updates & improvements#1

Open
raffarost wants to merge 7 commits into
mainfrom
feat/updates
Open

espresso: Updates & improvements#1
raffarost wants to merge 7 commits into
mainfrom
feat/updates

Conversation

@raffarost

@raffarost raffarost commented Apr 19, 2026

Copy link
Copy Markdown
Owner

Summary

Firmware and Espresso UI (RainMaker) updates include new controls, safety improvements, and a fix to TRIAC GPIO initialization to prevent unintended heating during boot.

Changes

UI (RainMaker)

  • Layout adjusted to better organize controls.
  • Added a Flush button.
  • Added a temperature sensor status text field to indicate sensor/machine health.
  • Added a control to monitor and reset temperature control overshoot/stall learning state.
  • System now boots with power off, so heating element will only turn on at user request (power switch ON).

Temperature Control (LOOKUP)

  • Added temperature overshoot detection and progressive fix.
  • Can be disabled in firmware if user wants to re-calibrate the lookup table instead.
  • Added warmup stall detection strategy, to add power if boiler doesn't reach setpoint
  • Improved stock calibration for reference
  • Fixed calibration issue with low power values (< 5%)

Sensor Monitoring / Safety (Firmware)

  • Detects stuck or anomalous temperature readings.
  • Heating is suspended while an anomaly is detected, preventing inappropriate control during sensor failure.

TRIAC GPIO Initialization Fix (Firmware)

  • GPIO for TRIAC control is now configured at early startup and held off by default.
  • Prevents floating input and unintended TRIAC activation during boot.
  • Fixes severe temperature overshoot caused by late GPIO configuration.

Project

  • Code split in separate subject-related files for better code organization.
  • Tasks converted to FreeRTOS type.

@raffarost raffarost force-pushed the feat/updates branch 18 times, most recently from f67bf80 to f7013f4 Compare April 26, 2026 16:51
Raffael Rostagno added 6 commits May 8, 2026 15:05
Support files included.

Signed-off-by: Raffael Rostagno <raffael.rostagno@gmail.com>
Trust MAX6675 reads before heating; hold heater on SPI/open/range/stuck.
Stuck-temp diag (>=20% duty, 3 frozen samples); LOOKUP overshoot learn
discarded when stuck latches. RainMaker Status (Okay + worst latch) and
temp line stays Ready/Low/High. LOOKUP trim scales full duty above 50%.
Version 1.6.0, project espresso; defaults-only sdkconfig policy in PR.

Signed-off-by: Raffael Rostagno <raffael.rostagno@gmail.com>
Improve the way heat buffering when water pump is on is implemented.
A heat buffer vector is implemented to allow calibrating a heat
profile following the amount of time in which the pump is on,
in order to improve temperature stability in preinfusion, brew
and flush operations.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
Update stock heat calibration for improved overshoot control.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
Files split for better organization. Rudimentary tasks converted
to FreeRTOS tasks.

Signed-off-by: Raffael Rostagno <raffael.rostagno@gmail.com>
TRIAC driver control only works with control values above a
certain value. Update calibration and add notes for better
control and temperature stability.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
@raffarost raffarost force-pushed the feat/updates branch 2 times, most recently from f4ad692 to 6c89469 Compare May 9, 2026 13:42
Update adaptive warmup strategy (adding warmup stall detector to
overshoot detector) to manage both temperature overshoot condition
or warmup stall. Tweak power dither near setpoint to improve
temperature control during warmup.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant