Skip to content

Releases: VahaC/CoffeeRecipeManager

v0.3.20 - Error reason in activity log

Choose a tag to compare

@VahaC VahaC released this 04 Mar 22:04

Added

  • Error reason in activity log - when recipe status changes to error, the HA logbook now shows a second entry with the full failure reason (e.g. recipe 'CaffeLatte' failed at step 2: Timeout after 300s...). Implemented via a new logbook.py platform that describes the coffee_recipe_manager_recipe_failed bus event.

v0.3.19 - Brand logo images

Choose a tag to compare

@VahaC VahaC released this 04 Mar 21:54

Added

  • Brand logo images — added logo.png and logo@2x.png to the brand folder, generated from the existing integration icons to satisfy HACS branding requirements.

v0.3.18 — Fix: brew main drink before auxiliary switch actions

Choose a tag to compare

@VahaC VahaC released this 25 Feb 08:32

What's Changed

Fixed

  • Drink is now brewed before auxiliary switch actions in a combined step — Previously, when a recipe step contained both a drink and switch_counts (or switches / switch) fields, the auxiliary switch actions were executed first and only then the main drink was brewed. This caused incorrect behaviour for recipes such as CaffeLatte + Double Hotmilk, where hot-milk frothing ran before the espresso shot.

    The execution order inside _execute_step has been corrected: the drink is always brewed first (select option → set double → start → wait for completion), and only after a successful completion are the switch steps executed in sequence. Fault handling and abort support are preserved for both phases.

Upgrade Notes

No configuration changes required. Existing recipes will automatically follow the corrected execution order.

v0.3.17 - Edit Recipes button + fix drink display

Choose a tag to compare

@VahaC VahaC released this 24 Feb 17:42

What's New

Edit Recipes button

A new Edit Recipes button (button.coffee_recipe_edit_recipes) has been added to the device Controls card. Press it to receive a persistent notification with a clickable link to the integration's configuration page — add, edit or delete recipes without manually navigating away from your dashboard.

For dashboards where you prefer a single-tap action with no notification, use a Lovelace navigate card:

type: button
name: Edit Recipes
icon: mdi:pencil-box
tap_action:
  action: navigate
  navigation_path: /config/integrations/integration/coffee_recipe_manager

Fixed

  • Recipe display: drink: none no longer shown as "☕ none" — switch-only steps now render without a drink line in the View Selected Recipe notification and the get_recipe / list_recipes service output. The list_recipes service no longer raises a KeyError on switch-only steps.

v0.3.16 - Auxiliary switch repeat fix (stable)

Choose a tag to compare

@VahaC VahaC released this 24 Feb 16:06

What's New

This stable release finalises the complete fix for auxiliary switch repeat counts (switch_counts: N > 1) not working reliably. The issue was traced through six diagnostic/beta builds (v0.3.9 - v0.3.15) and all root causes are now resolved.

Fixed

Auxiliary switch repeat runs (switch_counts)

  • Race condition on momentary switches - state-change listener is now registered before urn_on is called, so fast ON?OFF cycles are never missed.
  • False immediate completion (idle-state bug) - completion tracking uses an unknown ? on ? done model. An entity that is already OFF at step start is treated as unknown, not done, so the done-signal only fires after an observed ON?OFF transition.
  • Wrong completion signal - completion is now detected by watching machine_start_switch (the machine's own end-of-cycle signal) in addition to the aux switch itself; done fires only when both have completed an ON?OFF transition.
  • Short inter-run settle pause - fixed 5-second pause between repeat activations ensures the machine is fully ready before the next urn_on command.

Changed

  • Diagnostic [CRM] log statements that were added at WARNING level (v0.3.10) have been demoted to DEBUG level. They will no longer appear in default Home Assistant logs.

Upgrade Notes

If your recipe step has an explicit imeout: value that is shorter than the machine's actual cycle time, increase it to at least the longest expected single-run duration (e.g. imeout: 120). The default timeout is 120 seconds when no explicit value is set.

v0.3.15 - 5s inter-run settle pause (beta)

Choose a tag to compare

@VahaC VahaC released this 24 Feb 15:50

Inter-run settle pause increased from 3s to 5s.

v0.3.14 - ON->OFF tracking + fixed inter-run delay (beta)

Choose a tag to compare

@VahaC VahaC released this 24 Feb 15:45

Fixes

  • done_event now fires only after observing ON->OFF transitions on both aux switch and machine_start (not idle OFF state)
  • Inter-run delay is now a fixed 3s settle pause (was max(1, timeout-elapsed) which caused 90s waits with timeout=120)
  • DEFAULT_STEP_TIMEOUT bumped to 120s

Still includes [CRM] WARNING diagnostic logs.

v0.3.13 - done only when BOTH aux+machine_start OFF (beta)

Choose a tag to compare

@VahaC VahaC released this 24 Feb 15:32

done_event now fires only when both aux switch AND machine_start are OFF simultaneously.

Logs will show: both aux and machine_start are OFF -> done

v0.3.12 - aux switch + machine_start dual completion (beta)

Choose a tag to compare

@VahaC VahaC released this 24 Feb 15:30

Changes

_run_switch_once now listens to both the aux switch and machine_start_switch for completion:

  • aux switch OFF \u2192 done
  • machine_start OFF \u2192 done
  • either within Stage 1 (5s min) = fast complete

Still includes [CRM] WARNING diagnostic logs.

v0.3.11 - Fix switch Stage 2 timeout race (beta)

Choose a tag to compare

@VahaC VahaC released this 24 Feb 13:58

Root cause (from diagnostic logs)

The switch hotwaterdispensing stays ON for the full dispense duration (~30s). With timeout: 30 in the recipe, Stage 2 waited exactly 30s for the switch to turn OFF - the machine's dispense time equals the timeout, causing a race condition where asyncio.wait fired at the same moment the switch turned off.

Fix

Stage 2 now waits timeout + 10s (silent buffer). A step with timeout: 30 will actually allow up to 40s for the switch to turn OFF. The error message still reports the user-visible timeout.

Still includes diagnostic [CRM] WARNING logs from v0.3.10.