Files
alexei.dolgolyov 3355f0dda8 fix: harden Washing Machine remaining-time parsing for unavailable states
Treat 'unavailable'/'none'/'-'/'' remaining-time values as not-running and
parse with int(0) defaults so a partially invalid sensor value degrades to 0
instead of raising. Bump manifest to 2.14.1.
2026-06-21 21:04:41 +03:00
..

Washing Machine / Dryer Notifications Blueprint

This blueprint monitors washing machine or dryer appliances and sends notifications for various events throughout the wash/dry cycle.

Features

  • Start notification with cycle duration, estimated end time, and mode details
  • Completion notification (reminder to unload clothes) with energy report
  • "Almost done" notification (configurable minutes before end)
  • Unload reminder (configurable delay, optional repeats) — auto-cancelled when a new cycle starts or a configured door/lid sensor opens
  • Pause/Resume notifications (detect when cycle is paused or resumed)
  • Error message notifications
  • Preparation mode notification (e.g., for dryer prep)
  • Tub/drum cleaning reminder based on wash counter
  • Power consumption monitoring with energy tracking per cycle
  • Fully customizable notification messages (i18n support)
  • Debug notifications for troubleshooting

State Machine

The automation tracks the appliance through these states:

State Description
IDLE Waiting for cycle to start
RUNNING Cycle in progress (start notification sent)
PAUSED Cycle temporarily paused (pause notification sent)
FINISHING Near completion (time-to-end notification sent)
COMPLETED Cycle done (completion notification sent, state reset)

Persistent State Keys

Key Description
nass Notification About Start Sent
nart Notification About Remaining Time Sent
naps Notification About Preparation Sent
napas Notification About Pause Sent
wasp Was Paused flag
cst Cycle Start Time (ISO timestamp)
esmp Energy Samples accumulator (Wh)
lst Last Sample Time (ISO timestamp)
cct Cycle Completion Time (ISO timestamp, drives unload reminder)
urc Unload Reminder Count (number of reminders already sent)

Message Template Variables

All message templates support these placeholder variables (use single braces):

Variable Description
{appliance_name} Device name (e.g., "Washing Machine")
{remaining} Remaining time as string (e.g., "01:30:00")
{estimated_end} Estimated completion time (e.g., "14:30")
{minutes} Remaining minutes (almost-done) or elapsed minutes since completion (unload reminder)
{error} Error message text (only in error notification)
{tub_count} Tub clean counter value (only in tub clean notification)
{tub_threshold} Tub clean threshold (only in tub clean notification)
{details} Startup details from sensors (only in start notification)
{energy_kwh} Energy consumed in kWh (only in completion notification)
{energy_cost} Estimated cost (only in completion notification)

Requirements

  • Sensors for: remaining time, run state, error messages
  • input_text entity for persistent state storage
  • Notification service entity
  • (Optional) Power sensor for energy tracking

Unload Reminder

If Unload Reminder Delay is greater than 0, the automation:

  1. Records the completion timestamp (cct) when the cycle finishes — but only if every door sensor in Unload Reminder Door Sensors is currently closed (or the list is empty).
  2. Sends a reminder N minutes later (where N = delay), then optionally repeats every Unload Reminder Repeat Interval minutes up to Unload Reminder Repeat Count total.
  3. Cancels all pending reminders when:
    • A new cycle starts (start handler clears cct and urc), or
    • Any of the configured door / lid sensors transitions to on (treated as "user has unloaded").

The check runs once per minute via a time_pattern trigger. The door sensor list is optional — leave it empty to keep reminders purely time-based.

Note

Default messages are in Russian for LG ThinQ integration. Customize messages in the "Messages" section for your language.

Author

Alexei Dolgolyov (dolgolyov.alexei@gmail.com)