Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

buildRosFlatType: There was an error parsing the buffer #281

Closed
ace-at-git opened this issue Apr 30, 2020 · 4 comments
Closed

buildRosFlatType: There was an error parsing the buffer #281

ace-at-git opened this issue Apr 30, 2020 · 4 comments

Comments

@ace-at-git
Copy link

Dear PlotJuggler's,

I have PlotJuggler 2.6.3 in an Ubuntu 18.04/ROS Melodic running. Opening the attached zipped ROSbag (recorded with a small diff drive bot) with

rosrun plotjuggler PlotJuggler -d 2020-04-30-11-57-06.bag

and selecting these signals:

/ros_car/left_wheel_angle_vel: std_msgs/Float32                     
/ros_car/left_wheel_cmd: std_msgs/Float32                     
/ros_car/right_wheel_angle_vel: std_msgs/Float32                     
/ros_car/right_wheel_cmd : std_msgs/Float32                 

...brings the following error message:

...
terminate called recursively
terminate called after throwing an instance of 'std::runtime_error'
  what():  buildRosFlatType: There was an error parsing the buffer.
Size 4 != 5, while parsing [/ros_car/right_wheel_angle_vel]
Aborted
...

After "filtering" the file with:

rosbag filter 2020-04-30-11-57-06.bag 2020-04-30-11-57-06_filtered.bag "topic != '/non_existend'"

all messages are still available. Using the new file like:

rosrun plotjuggler PlotJuggler -d 2020-04-30-11-57-06_filtered.bag

I can select and plot the mentioned signals without any problem!

The messages /ros_car/[left | right]_wheel_angle_vel causing problems are coming from a NodeMCU. The signals are simple standard messages with an non complex type. Rosserial is involved, this might also have an influence...!?

If I had a clue what exactly in the data structure/stream makes PlotJuggler unhappy I may get an idea about a possible cause in the source on the NodeMCU...

In case my systems/setup produces somehow malformed ROSbags, it would be nice if PlotJuggler would still be able to handle it direct without "filtering" them first.

2020-04-30-11-57-06.bag.zip

@facontidavide
Copy link
Owner

This is a known problem I had in the past with rosserial.

I never realized why, but I think it might be a good moment to fix this ;)

facontidavide pushed a commit that referenced this issue Apr 30, 2020
@facontidavide
Copy link
Owner

fixed!

Thanks for reporting, I also found another bug you did not mention.

The application was supposed to show a nice error dialog, not to crash! Fixed that too

@ace-at-git
Copy link
Author

Whow, that was quick - thank you very much!

@facontidavide
Copy link
Owner

You are welcome

Wow, that was quick

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants