PlotJuggler / plotjuggler-ros-plugins

Many PlotJuggler plugins for ROS and ROS2.
GNU Affero General Public License v3.0
109 stars 44 forks source link

output doesn't match ros2 topic echo #73

Closed stewpend0us closed 11 months ago

stewpend0us commented 11 months ago

When I use regular old "ros2 topic echo" I get different output then I get when using plotjuggler. In this screen shot "altitude" and "stbd_velocity" are clearly not matching up.

image

ubuntu 22.04 installed with sudo apt install ros-humble-plotjuggler ros-humble-plotjuggler-ros

facontidavide commented 11 months ago

This seems to be a custom message, ins't it? Can you kindly share a rosbag recorded as MCAP (option -s mcap) ?

stewpend0us commented 11 months ago

let me know if you need more. I confirmed this does contain the issue. "altitude" especially appears to be undefined rosbag2_2023_11_28-10_47_45.tar.gz

facontidavide commented 11 months ago

thanks

facontidavide commented 11 months ago

Not having the message type tetra_veh_interfaces it is hard for me to debug.

Can you please check if opening directly the MCAP file using PlotJuggler branch "ros_refactored" fixes the issue?

stewpend0us commented 11 months ago

Yes! that looks much better

stewpend0us commented 11 months ago

Not while running it live though...

facontidavide commented 11 months ago

please send me the code with tetra_veh_interfaces to reproduce, otherwise I can't run rosbag play

stewpend0us commented 11 months ago

here is the contents of SprintNav.msg: is this helpful or do you need more?

byte first_byte
byte second_byte
byte protoversion
uint16 message_id
uint16 message_size
byte counter
uint16 gap
byte version
float64 time_of_validity
float64 latitude_deg
float64 longitude_deg
float64 depth
float32 altitude
float32 roll_deg
float32 pitch_deg
float32 heading_deg
float32 fwd_velocity
float32 stbd_velocity
float32 down_velocity
float32 fwd_ang_rate_degps
float32 stbd_ang_rate_degps
float32 down_ang_rate_degps
float32 sound_velocity
float32 temperature_c
float32 position_quality
float32 heading_quality_deg
float32 velocity_quality
uint16 status
uint16 crc

bool status_system_error
bool status_is_hybrid_mode
bool status_heading_invalid
bool status_altitude_invalid
bool status_velocity_invalid
bool status_depth_invalid
bool status_sound_velocity_invalid
bool status_temperature_invalid
bool status_position_invalid
bool status_utc_time_invalid
facontidavide commented 11 months ago

If you give the code with the ROS package (containing package.xml, CMaeLists.txt and the .msg file), I would really appreciate

stewpend0us commented 11 months ago

Here is a stripped down version. does this work? tetra_veh_interfaces.tar.gz

facontidavide commented 11 months ago

Just tried the main branch of this repo + ros_refactored branch of PlotJuggler and seems like everything works correctly.

I will temporarily close this issue, but please try this yourself and let me know if it works for you.

I will release soon PlotJuggler 3.9 and plotjuggler_ros 2.0, that will contain these changes.

image

stewpend0us commented 11 months ago

yes that combo does seem to be working. Thank you for the quick fix!!