'Laundry is complete' notification

Close! The biggest problem is that your actions will get stuck in that repeat with no way to get out. You need to have some way to stop the notification that is "accessible" from within your repeat. I often refer people to this post, which has several examples of how to do exactly this, for good information:

But none of those apply 100% to your situation since you're waiting for an event and not a condition. If you normally leave the door open when the machine isn't in use (or trust yourself to have it open for more than 5 minutes--in the example above, or whatever your repeat interval is in general), then one of those examples should work. However, if you truly want to just wait for the event, I'm thinking you'll have to try something like this instead, which would replace all of your actions starting with the "Repeat every..." line and continuing to the end of your rule in my example or almost the same in the other rule except you'd need to keep that END-IF. This assumes the existence of a local (or global) boolean variable called "doorOpen," which you'd also have to create. Also, set it to false at some point early in your rule actions, e.g., when the machine starts:

IF (NOT doorOpen is true) Repeat every 0:05:00 (stopable)
  Cancel Wait* (see note)
  Set doorOpen to false
  Notify: "Take the laundry out!"
  Wait for event: CS - Washer open
  Set doorOpen to true
END-REP
Notify: "Laundry was taken out."

However, I just checked and "Cancel Wait" seems to have been removed in Rule 4.1, or at least I can no longer find it (but can in 4.0). This is somewhat understandable, as the action was often overused in the past: any trigger event firing will cancel a wait. But we aren't triggering here, just repeating, which I don't believe will cancel this wait--but it should be of minimal importance anyway since it's just getting recreated shortly afterwards, anyway (I'm just not sure how it will handle the edge case of you opening the door right when the repeat starts over but before it really gets to this action--likely just a split second).

Or, if you don't really need the event, a condition (as in the examples) would work, too, with a bit less work. :slight_smile: