# Navsat_transform in robot_localization gives sightly rotated gps odometry

Hi, I have been having this problem for a week or so.

I am trying to fuse the GPS position with an IMU simulated in Gazebo(hector_sensors) with the robot_localization package (with one EKF node and one navsat node ). So far it everything was OK, I rotated everything as the REP103 states and the data seems to give good covariances. However, the GPS(or the navsat node rather) has a steady drift of approximately 1~2º in the /odometry/gps & /odometry/filtered topics and after traveling a long distance , it becomes a problem. The movement is along the Y axis, but after 100 meters or so, it drifts a meter on the y axis.

It seems to be an extra rotation and I cannot retrieve the proper coordinates( i.e. getting the global reference of the robot). At first I though it should be rotated with the utm->odom transform published by navsat_transform_node but I can't figure it out how.

Do you know what my problem is?, i am almost certain that it has to be something regarding the map-utm transformation but can't get it to work.

Launchfiles: Navsat: , EKF

Yaml config parameters Navsat , EKF

Sensor model gazebo model.sdf

And a photo of the odometry results

Thanks a lot, it you need anything else let me know.

edit retag close merge delete

Can you perhaps post an image of what you're trying to say? If you are fusing/odometry/gps into the EKF, then odometry/filtered ought to track odometry/gps pretty closely.