Repeating a command for a device that doesn't always hear it

I have a rule for my ceiling fans to run them every half hour for 5 minutes. The bedroom fan has a MR101Z with its notoriously weak radio. On occasion (like once every 100 times or so) it misses the turn off command and stays on all day, despite having 2 zigbee outlets in the room pretty close to it. I would like the rule to refresh the status and make sure it turned off. I'm not sure how to achieve that.

Here is my current rule setup:

IF (Master Bedroom Fan is off AND
Mode is Day, Away) THEN
    Set Fan Speed: Master Bedroom Fan to low
    Delay 0:05:00
    IF (Master Bedroom Fan is low) THEN
        Set Fan Speed: Master Bedroom Fan to off

I set it up to be triggered at minutes 0,30. This way if we're using the fan it will not run and leave the fan as is. And if we change the fan speed while it runs, it doesn't turn it off.

You could use a 'delay actions' for a few minutes. Then re-test if the device is still on and turn it off if it is. Or just simply issue another off command a few minutes later regardless I guess, no harm done.

That was my original method, I had a delay 0:00:10 in there and then sent the off command again. I could put that back, but I wasn't sure if there was a cleaner method to do that.

When it misses, does the device page still show it on or off? If it shows it properly, as still on, then your rule can check for that and then re-issue the off command only if needed.