I am attaching a picture to show you what the debug window look like when:
1. A state is active and evaluating static reactions.
2. A transition coming out of a state is being evaluated.
If you open the debug window and you see that the transition node highlighted then that means you are stuck in the transition node.
With the firing of user event, there is no need to cache in state data, passing as input and firing the event works (since I tried it).
Another thing to check is that what mode is your statechart configured ? Asynchronous or Synchronous. If it is asynchronous are you firing events to the statechart periodically since if you are stop sending events, then the statechart will wait untill a new event is received. This will make it look like it hang inside the statechart, but actually it is only waiting for an event.
Hope this help you to get further.