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

Sensor fusion crash on ARM based machine #9

Closed
icoderaven opened this issue Jun 11, 2013 · 0 comments
Closed

Sensor fusion crash on ARM based machine #9

icoderaven opened this issue Jun 11, 2013 · 0 comments

Comments

@icoderaven
Copy link

Hi, as mentioned in an earlier issue, I was attempting to run ssf_update on a PandaBoard ES running Ubuntu 12.04 and get a SIGBUS error before I even initialise the fusion. The backtrace is below

[ INFO] [1370922064.866466859]: interpreting measurement as sensor w.r.t. world
[ INFO] [1370922064.869182924]: using covariance from sensor
[ INFO] [1370922065.067577699]: Filter type: pose_sensor
[ INFO] [1370922065.068645814]: /pose_sensor:
subscribed to topics:
/imu/data
/ssf_core/hl_state_input
/vslam/pose
advertised topics:
/rosout
/ssf_core/state_out
/ssf_core/correction
/ssf_core/pose
/ssf_core/ext_state
/pose_sensor/parameter_descriptions
/pose_sensor/parameter_updates

Program received signal SIGBUS, Bus error.
allInOne<ros::serialization::IStream, geometry_msgs::Quaternion_<std::allocator >&> (m=..., stream=)
at /opt/ros/fuerte/include/geometry_msgs/Quaternion.h:215
215 stream.next(m.z);
(gdb) bt
#0 allInOne<ros::serialization::IStream, geometry_msgs::Quaternion_<std::allocator >&> (m=..., stream=)

at /opt/ros/fuerte/include/geometry_msgs/Quaternion.h:215

#1 read<ros::serialization::IStream, geometry_msgs::Quaternion_<std::allocator > > (t=..., stream=)

at /opt/ros/fuerte/include/geometry_msgs/Quaternion.h:219

#2 deserialize<geometry_msgs::Quaternion_<std::allocator >, ros::serialization::IStream> (t=..., stream=)

at /opt/ros/fuerte/include/ros/serialization.h:161

#3 next<geometry_msgs::Quaternion_<std::allocator > > (t=...,

this=<synthetic pointer>) at /opt/ros/fuerte/include/ros/serialization.h:716

#4 allInOne<ros::serialization::IStream, sensor_msgs::Imu_<std::allocator >&> (

m=..., stream=<synthetic pointer>) at /opt/ros/fuerte/include/sensor_msgs/Imu.h:291

#5 read<ros::serialization::IStream, sensor_msgs::Imu_<std::allocator > > (

t=..., stream=<synthetic pointer>) at /opt/ros/fuerte/include/sensor_msgs/Imu.h:299

#6 deserialize<sensor_msgs::Imu_<std::allocator >, ros::serialization::IStream> (

t=..., stream=<synthetic pointer>)
at /opt/ros/fuerte/include/ros/serialization.h:161

#7 ros::SubscriptionCallbackHelperTboost::shared_ptr<sensor_msgs::Imu_<std::allocator const> const&, void>::deserialize (this=, params=...)

at /opt/ros/fuerte/include/ros/subscription_callback_helper.h:172

#8 0xb6f84d30 in ros::MessageDeserializer::deserialize() ()

from /opt/ros/fuerte/lib/libroscpp.so
#9 0xb6f802bc in ros::SubscriptionQueue::call() ()

from /opt/ros/fuerte/lib/libroscpp.so
#10 0xb6f2d4ae in ros::CallbackQueue::callOneCB(ros::CallbackQueue::TLS*) ()

from /opt/ros/fuerte/lib/libroscpp.so
#11 0xb6f2d074 in ros::CallbackQueue::callAvailable(ros::WallDuration) ()

from /opt/ros/fuerte/lib/libroscpp.so
#12 0xb6f82324 in ros::SingleThreadedSpinner::spin(ros::CallbackQueue*) ()

from /opt/ros/fuerte/lib/libroscpp.so
#13 0xb6f669ee in ros::spin(ros::Spinner&) () from /opt/ros/fuerte/lib/libroscpp.so
#14 0xb6f669b2 in ros::spin() () from /opt/ros/fuerte/lib/libroscpp.so
#15 0x00010b8e in main (argc=1715953599, argv=)

at /home/bird/bird_repo/cpp/external_ros_pkgs/ethzasl_sensor_fusion/ssf_updates/src/main.cpp:75

Update:

This issue was resolved by applying the ROS serialization patch required (https://code.ros.org/trac/ros/attachment/ticket/2883/serialization_memcpy_instead_of_reinterpret.diff) and rebuilding the IMU driver node, tf and geometry packages and ssf_core using rosmake --pre-clean.

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

1 participant