Sry for the late answer!
The thing is, if a ui-view holds the state of the controller and it is not activated (visible), it is also not in the digest loop. Therfore it will not realize the changes.
I stored the "event feeded" data in a sperate service and pull them if my view gets activated.
@pcr compared your rootscope emit eventing with rootscope broadcast and scope watch.
Rootscope emit is the fastest one. So i combined this with the channel logic.
I prepared some slides of this for one of my talks here
and the channel is here