MACRO
Trigger condition E1 ON And
Module Status On - Dummy 20-24 and
Flag Status Off - 16
End Trigger Conditions
Turn Corridor ON
Set Flags [16]
WAIT for 3 minutes
Clear Flags [16]
Turn Corridor OFF
Your macro looks correct, and I'm sure you do have HouseCode L as your monitored one for the condition.
I've never had much success with using modules in the monitored house code as conditions, I found their true state and AHP fell out of sync to easy. I use status flags for everything that I need to keep correct info about.
Because I don't use monitored house code conditions, I can't say if that is the cause of your delays. I have found that my status flag only macros seem to execute without any lag. Also, you might want to steer away from using status flag 16; I have seen this one come on and go off by itself. I believe I've read somewhere that it may be used internally by the micro-controller. I use all the other 15 without any problems. (AHP ver:3.206)
Another suggestion is to use your dummy module that is controlled by the timer (L15) to set & clear a status flag that you can use in the E1 macro condition. I use a dummy module with a timer to set a flag for indicating day & night; also as an added feature when the dummy module gets triggered in morning a WAV file of a rooster plays, and in the evening crickets. This lets us know when the lights change between auto & manual mode.