adding simple reconnection, controller is going to get hairy without some care