The probe on the dequeued command should be helpful though, when the code is running normally the indicator will be flickering away showing the cycle of states the code is going through, if the code gets stuck it will stop cycling.
Another approach might be to (temporarily) put an indicator on the dequeued command, and create a seperate execution loop in the VI that monitors the dequeued command, or some other parameter that's a good indication the code is cycling normally. If this watchdog loop sees that the main loop stop, it calls a case in a case structure that contains a breakpoint. This pops open the diagram, so you can see what's up.
Mike...