the microprocessor 300 refreshes i o port directions i e whether each of the ports is to be input or output at block 478 the microprocessor 300 updates the status of the radio lockout flag if necessary the radio lockout flag prevents the microprocessor from responding to a signal from a remote transmitter a radio interrupt described below will disable the radio lockout flag and enable the remote transmitter to communicate with the receiver at block 480 the microprocessor 300 checks if the door is about to travel if not the routine skips to block 502 if the door is about to travel the microprocessor 300 checks if the limits are being trained at block 482 if they are the routine skips to block 502 if not the routine asks at block 484 if travel is up or down if down the routine refreshes the down limit from non volatile memory eeprom 302 at block 486 if up the routine refreshes the up limit from nonvolatile memory eeprom 302 at block 488 the routine updates the current operating state and position relative to the pass point in non volatile memory at block 490 this is a redundant read for stability of the system.