-
Notifications
You must be signed in to change notification settings - Fork 195
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix pendant mode switch issue #568
Fix pendant mode switch issue #568
Conversation
If the pendant mode switch is turned during the ROS motion the robot stops, but then when the playback is reenabled and the mode switch back to Remote mode, the robot moves because data in the motion queue was not cleared.
New binary version 1.9.12
I'm not sure why this is necessary. Shouldn't this line get called when switching to play? AFAICT, that's how MotoROS2 is handling the same situation. |
Not necessarily. It depends on the timing when the key switch is turned. New data coming from ROS get rejected elsewhere, but the motion in the queue ring buffer is not cleared. So when the key is switched back to Remote and Ros_Controller_IsMotionReady becomes true, the remaining motion in the ring buffer gets executed. If the key is switch while you are already passed that condition on line 1693, then the code you referred gets executed and there is not problem. You might want to restest a few times on MotoRos2. |
@ted-miller Can you also review and test on multi-robot system this PR when you get your Ros1 system running. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's hold off on incrementing the version number until #542 is also merged. I think both of these features should in the next version.
(Plus you forgot to increment APPLICATION_VERSION
in MotoROS.h)
I was able to reproduce the issue using |
We'll create new binaries under separate PR once other PR are merged in.
If the pendant mode switch is turned during the ROS motion the robot stops, but then when the playback is reenabled and the mode switch back to Remote mode, the robot moves because data in the motion queue was not cleared.
This PR fixes the issue #567 Unwanted motion when switching pendant mode