# Controller goes from running -\> stopped, and requires UR driver restart

**URL:** <https://forum.universal-robots.com/t/controller-goes-from-running-stopped-and-requires-ur-driver-restart/26555>\
**Category:** ROS\
**Created:** [February 2, 2023, 11:44pm UTC](https://forum.universal-robots.com/t/controller-goes-from-running-stopped-and-requires-ur-driver-restart/26555 "2023-02-02T23:44:48Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![anon62777180](https://avatars.discourse-cdn.com/v4/letter/a/50afbb/32.png) [@anon62777180](https://forum.universal-robots.com/u/anon62777180)\
**Post date:** [February 2, 2023, 11:44pm UTC](https://forum.universal-robots.com/t/controller-goes-from-running-stopped-and-requires-ur-driver-restart/26555/1 "2023-02-02T23:44:48Z")

</div>

I have a robot setup with two UR5e arms running with a single ROS1 UR driver. The (repetitive) task being performed by the robot involves a set of 25 distinct actions between the two arms. Things work well for multiple iterations; at some point scaled\_pos\_joint\_trajectory\_controllers moves to stopped state, and cannot be restarted. I have tried to restart/respawn the controllers via controller\_manager but none of these succeed; only a driver restart gets the controllers working again. Is there a way to restart controllers when they go to stopped state, that doesn’t involve driver restart?

$ rosrun controller\_manager controller\_manager list \_\_ns:=left\_arm  
‘joint\_state\_controller’ - ‘hardware\_interface::JointStateInterface’ ( running )  
‘scaled\_pos\_joint\_traj\_controller’ - ‘scaled\_controllers::ScaledPositionJointInterface’ ( stopped )  
‘force\_torque\_sensor\_controller’ - ‘hardware\_interface::ForceTorqueSensorInterface’ ( running )

$ rosrun controller\_manager controller\_manager list \_\_ns:=right\_arm  
‘joint\_state\_controller’ - ‘hardware\_interface::JointStateInterface’ ( running )  
‘scaled\_pos\_joint\_traj\_controller’ - ‘scaled\_controllers::ScaledPositionJointInterface’ ( stopped )  
‘force\_torque\_sensor\_controller’ - ‘hardware\_interface::ForceTorqueSensorInterface’ ( running )

$ rosrun controller\_manager controller\_manager start scaled\_pos\_joint\_traj\_controller \_\_ns:=left\_arm  
Error when starting [‘scaled\_pos\_joint\_traj\_controller’] and stopping   
$ rosrun controller\_manager controller\_manager start scaled\_pos\_joint\_traj\_controller \_\_ns:=right\_arm  
Error when starting [‘scaled\_pos\_joint\_traj\_controller’] and stopping

$ rosrun controller\_manager controller\_manager unload scaled\_pos\_joint\_traj\_controller \_\_ns:=left\_arm  
Unloaded ‘scaled\_pos\_joint\_traj\_controller’ successfully  
$ rosrun controller\_manager controller\_manager spawn scaled\_pos\_joint\_traj\_controller \_\_ns:=left\_arm  
Loaded ‘scaled\_pos\_joint\_traj\_controller’  
Error when starting [‘scaled\_pos\_joint\_traj\_controller’] and stopping

Looking at the driver logs, the controller stops are correlated with socket send failure on reverse interface. I however don’t run the driver in a VM (unlike others who have reported this reverse interface issue); it runs in a docker container on Ubuntu 20.04. I have tried tuning TCP buffers, but this doesn’t fix the socket send failure.

Any help with resolving the controller restart issue and/or reverse interface issue is much appreciated. Please let me know if I need to provide additional information to help get to the bottom of this.

---

<div class="post-metadata">

**Author:** ![mauch](https://avatars.discourse-cdn.com/v4/letter/m/71e660/32.png) [@mauch](https://forum.universal-robots.com/u/mauch)\
**Post date:** [February 3, 2023, 10:00am UTC](https://forum.universal-robots.com/t/controller-goes-from-running-stopped-and-requires-ur-driver-restart/26555/2 "2023-02-03T10:00:34Z")

</div>

It is advised to use a PREEMPT\_RT or lowlatency kernel in conjunction with the driver. See [Universal\_Robots\_ROS\_Driver/real\_time\_benchmarking.md at 60f08359f6484d1671e12bab6e01fc49eb0fadc8 · UniversalRobots/Universal\_Robots\_ROS\_Driver · GitHub](https://github.com/UniversalRobots/Universal_Robots_ROS_Driver/blob/60f08359f6484d1671e12bab6e01fc49eb0fadc8/ur_robot_driver/doc/real_time_benchmarking.md) for details.
