driveUntilBump Context and Summary Summary omitted to make it a little less obvious what this does (although the name is a big hint)! Source Code Listing download source pub = rospublisher('/raw_vel'); sub_bump = rossubscriber('/bump'); msg = rosmessage(pub); % get the robot moving msg.Data = [0.1, 0.1]; send(pub, msg); while 1 % wait for the next bump message bumpMessage = receive(sub_bump); % check if any of the bump sensors are set to 1 (meaning triggered) if any(bumpMessage.Data) msg.Data = [0.0, 0.0]; send(pub, msg); break; end end