I noticed that the create2 does not always provide sensor data while it's moving. Am I supposed to stop the robot, request sensor data then start it again? or am I missing something? it seems to work most of the time but once in a while I get no data back. I am trying to make it move from one point to another by starting it and then reading distance to see how far it travels every .1 seconds but sometimes it I just keeping getting no data.

I noticed this using python and C code as well.

I am using the USB port with the bit rate they recommend (115200).

  • $\begingroup$ Does it have the problem when you change the serial bps from the default to a slower value (eg 19200 bps or 38400) ? $\endgroup$ May 7, 2015 at 14:58
  • $\begingroup$ I use what they recommend (115200). does it work at all at lower than this reliably? $\endgroup$
    – Jack
    May 8, 2015 at 14:31
  • $\begingroup$ Page 4 of create_2_Open_Interface_Spec.pdf lists two ways to switch from 115200 to 19200 without involving use of serial communication. Page 8 tells how to select other rates via OI opcode 129. I'm not suggesting you should change over to 19200 wholesale, just that if the problem goes away at a slower rate you could drop to 38400 or 57600. Slower rates give the Roomba more time to handle each character $\endgroup$ May 8, 2015 at 15:48
  • $\begingroup$ Are you getting data that is 0s, or actually no data? $\endgroup$
    – Ben
    May 8, 2015 at 18:49
  • 1
    $\begingroup$ can you post some simple code that demonstrates the problem? $\endgroup$
    – Ben
    May 15, 2015 at 16:40


Browse other questions tagged or ask your own question.