Open
Description
When using two publisher (pub_measured_joint_states_
and pub_encoders_
in the void diffbot::BaseController<TMotorController, TMotorDriver>::read()
method, the following error can occur:
[ERROR] [1642866871.814281]: Mismatched protocol version in packet (b'\xff'): lost sync or rosserial_python is from different ros release than the rosserial client
[INFO] [1642867178.756300]: Protocol version of client is Rev 0 (rosserial 0.4 and earlier), expected Rev 1 (rosserial 0.5+)
and
[INFO] [1642867191.950343]: wrong checksum for topic id and msg
Suggestions in this answer might help
- lowering baud rate
- Don't use
Serial.print
and rosserial
Possible other solutions:
- Edit
ros::NodeHandle
number of publisher, subscriber and buffer input/output sizes explained in ros wiki - Add delay between publish commands (not preferred)
- publish at different rates (not optimal, only fallback solution)