I understand this. But, IMHO, it would be much better to get out from the loop if the exposure has not started, lets say in one minute (plus the exposure time to be safe?), than looping forever. Whatever the reason is for failing to start the exposure or getting the correct status. Maybe just fixing this in my version to avoid the support nightmare?

The logical trap is there even without any MaxIm error if the script pauses (whatever reason!) for longer time than what the exposure takes (status=2 after the exposure) as my example shows.