ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Future messages when ROS nodes running in Windows

asked 2012-11-22 00:12:50 -0500

xiaowensun gravatar image

I built two ros nodes that could be running on Windows by using MinGW cross compiling environment. However, when starting roscore on Linux system, and running the two nodes on Windows, some messages seemed to be received in future. A message should not be received beforing it is sending out. Some answers on the internet say it is caused by the clock's out of sync. But after I use Chrony to make computers' clock synchronized, less future messages occure but still exist. Besides, both the nodes running on Windows, they are not machines across. Does anyone know the reason?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2012-11-22 06:59:20 -0500

dornhege gravatar image

Can you make "received in the future" more precise? Give an example of simple code + output + what you would expect.

As you describe it, I would guess you refer to timestamps. In that case it definitely is a clock sync issue. ROS itself should treat timestamps in messages as any other data and not modify it. So between sending/receiving a message nothing should change with the data. This only leaves how you get and compare the time. Using ros::Time should use the system time or simulated time depending on what you do. To force/check the system time you could also use ros::WallTime.

edit flag offensive delete link more

Question Tools


Asked: 2012-11-22 00:12:50 -0500

Seen: 94 times

Last updated: Nov 22 '12