OK, thank you for making this clear.
However DELAY inside IF-THEN definitely a problem but WAIT is not. Is not it?
Personally I found WAIT is much easier and safer to use vs DELAY.
Uncancelled delays are if you run into re-entrant "execution," yes. This isn't an issue with waits simply because such a state is not possible (they would be cancelled before this happens), and it's nothing that can't be worked around with a delay (a "Cancel Delayed Actions" -- or re-thinking how your rule itself is written).
Back to Mavrrick's suggestion. - The Wait/Delay stuff is just a red-herring, if stuff is falling apart, when ZWJS is enabled, this sounds like a resource issue to me. - I would really love to see resource graphs of CPU & Memory, and App/Device stats after running 2-3 days on ZIP, and then the same thing running on ZWJS.
IMHO, that's where the problem lies, even with a C8Pro, resource contention can become a problem.
I would also LOVE to see a Zwave Settings -> Log view when running ZWJS, my guess is that there a "Jammed" messages all over, but that is a SWAG on my behalf. - There isn't going to be a easy fix for mesh issues that exist with the V7.18 radio FW, that are well documented, and manifest themselves on more heavily loaded Zwave mesh.
The key to resolving some of this, is numbers & logs, on a ZIP versus ZWJS stacks - the "ZWJS just breaks alot of automations isn't all that helpful" - Clearly it breaks things for you, the question is WHY - and stats/metrics can help dig into a root cause (or at least some of them)
This gets me on a soapbox, about the "black box" that is a HE, and why aren't engineering logs exposed in a RO mode to more advanced users, but I'll save that soapbox for another thread - But getting deeper into the OS and H2 Database would go along way to letting advanced users do more "self-troubleshooting"... More on that over the Christmas, when I have more time...
Do you get more than just 3 speeds?
I only get 3 speeds with bertabcd1234's driver and the speeds are nowhere NEAR smooth!
Yes. But I am using a DIMMER (not a preset speeds) for setting speed to whatever percentage I want. Sorry, I didn't know how to grab a screen on Android to show my rule.
So you are using the "lamp" output of the module to run the fan motor and not the "fan" output?
Does the fan motor hum loudly?
Triacs don't usually like inductive (motor) loads and fail.
I will see what Inovelli is using to dim the lamp. Maybe NOT a triac!
No. Fan Controller is used to control Fan speeds and Lamp Dimmer is used for dimming bulbs. Fan Driver has a Set Level option:
and I am using it to control Fan Speeds. Here is a rule:
My old ac pull chain fans responded very well and running very quite.
Thanks for the post.
You only show 3 discrete fan speeds though.... Hi/Med/Low.
This is what I was asking about.... MORE than ONLY 3 speeds.
Again, I am using Set Level option in a fan child driver (not a preset speeds). As you can see, my rule defines 4 speeds to whatever level in percentaige I want (0-100%). I did not test all 100 potential levels but tested in increment of 10%. My fans responded very well. For the rule I picked final speeds after few itterations.
But of course, not all AC Fans could be happy with this control.
What brand and model fan do you have?
I have no idea. These 2 fans was already present when I bought the apartment 6 years ago. They are 5-blades AC Fans with 3-speed pull chain speed control and 3 integrated lights.

