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

imu_um6 Read Pkt: BAD CHECKSUM

asked 2012-08-11 12:41:21 -0500

TJump gravatar image

updated 2012-08-11 17:25:26 -0500

When I launch imu_um6 I get the following return activity (see below). I found the document (http://mediabox.grasp.upenn.edu/roswiki/doc/api/imu_um6/html/driver_8py_source.html) that shows:

00045     CMD_BAD_CHECKSUM     = 0xFD # sent by UM6 when it receives corrupted pkt

I looked at the list of expected settings:

00009     NOTE: this driver expects a number of things to be true:
00010     1. Broadcast mode is enabled
00011     2. QUATERNION output is enabled
00012     2. EULER output is enabled
00013     2. ANGULAR VELOCITY output is enabled
00014     2. LINEAR ACCEL output is enabled

But I can't find Angular Velocity or Linear Accel to verify/change setting to see if this may be the issue.

What do I need to do to find these missing settings, and what else do I need to try to eliminate the BAD CHECKSUM error?

srv1bf537@ubuntu:~$ source ~/imu_drivers/setup.bash
srv1bf537@ubuntu:~$ roslaunch imu_um6 test.launch
... logging to /home/srv1bf537/.ros/log/808547c6-e429-11e1-a5c4-002710017b98/roslaunch-ubuntu-6629.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://ubuntu:54444/


SUMMARY
========

PARAMETERS
 * /imu_um6_node/port
 * /rosdistro
 * /rosversion

NODES
  /
    imu_pose (imu_um6/imu_pose.py)
    imu_tf (tf/static_transform_publisher)
    imu_um6_node (imu_um6/imu_um6_node.py)
    rviz (rviz/rviz)

auto-starting new master
process[master]: started with pid [6645]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 808547c6-e429-11e1-a5c4-002710017b98
process[rosout-1]: started with pid [6658]
started core service [/rosout]
process[imu_um6_node-2]: started with pid [6670]
process[imu_tf-3]: started with pid [6671]
process[imu_pose-4]: started with pid [6683]
process[rviz-5]: started with pid [6684]
[INFO] [WallTime: 1344740270.811852] serial port: /dev/ttyUSB0
[INFO] [WallTime: 1344740270.843230] Zero Gyros: True
[INFO] [WallTime: 1344740270.843485] Reset EKF: True
[INFO] [WallTime: 1344740270.843704] Set Magnetometer Reference: True
[INFO] [WallTime: 1344740270.843923] Set Accelerometer Reference: True
Read Pkt: BAD CHECKSUM
Read Pkt: BAD CHECKSUM
Read Pkt: BAD CHECKSUM
Read Pkt: BAD CHECKSUM
Read Pkt: BAD CHECKSUM
Read Pkt: BAD CHECKSUM
Read Pkt: BAD CHECKSUM
Read Pkt: BAD CHECKSUM
Read Pkt: BAD CHECKSUM
edit retag flag offensive close merge delete

Comments

Have you successfully connected to it with their Windows program?

Ryan gravatar image Ryan  ( 2012-08-12 06:46:03 -0500 )edit

Yes, all works fine under Windows.

TJump gravatar image TJump  ( 2012-08-14 13:01:30 -0500 )edit

3 Answers

Sort by ยป oldest newest most voted
1

answered 2012-08-14 16:39:10 -0500

TJump gravatar image

updated 2012-08-15 13:29:32 -0500

This is definitely a compatibility issue of the imu_um6 ros package with the latest firmware (UM2B) for the CH Robotics UM6 IMU.

In order to clear the BAD CHECKSUM error (there are actually two) there are two settings that are different in the UM2B firmware that must be changed.

Under Communication (using the CH Robotics Interface to set the UM6)

Raw Gyro Output needs to be disabled Temperature Output needs to be disabled

As per the the tutorial on setting up the imu_um6 you must also enable Quaternion Output (under the Communication Tab, same as above), but this is to get the tf to display and has nothing to do with the BAD CHECKSUM message.

Be sure to do a RAM Commit and then a FLASH Commit to get the new settings fully set in the UM6 (again, using the CH Robotics Interface).

edit flag offensive delete link more
0

answered 2012-08-24 02:33:46 -0500

cagatay gravatar image

Hello tjump what brand is your USB-Serial converter. I bought an UM6 and I don't have an usb-serial-converter.

edit flag offensive delete link more
0

answered 2012-08-30 07:32:21 -0500

Ryan gravatar image

We have a fork of this driver up at https://github.com/clearpathrobotics/imu_um6.

It automatically enables Quaternion Output and disables Raw Gyro/Temp outputs on startup, so this error doesn't occur. Note that it doesn't commit anything to RAM/FLASH.

With these change, you don't need to touch the Windows program at all when you plug in a new UM6.

edit flag offensive delete link more

Question Tools

2 followers

Stats

Asked: 2012-08-11 12:41:21 -0500

Seen: 652 times

Last updated: Aug 30 '12