[Documentation] [TitleIndex] [WordIndex

Only released in EOL distros:  

carl_bot: carl_bringup | carl_description | carl_dynamixel | carl_interactive_manipulation | carl_phidgets | carl_teleop | carl_tools

Package Summary

ROS Support for the Phidgets Spatial 3/3/3 Devices for use with the CARL Robot


The carl_phidgets package provides a ROS wrapper for the PhidgetSpatial Precision 3/3/3 High Resolution or the PhidgetSpatial 3/3/3 Basic sensors, and nodes that support useful IMU functionality. This includes a Kalman filter for a base sensor and a top frame sensor to determine the orientation of the base and top frame, respectively.





ROS wrapper that allows data to be read from an IMU.

Published Topics

imu/data_raw (sensor_msgs/Imu) imu/mag (geometry_msgs/Vector3Stamped) imu/is_calibrated (invalid message type for MsgLink(msg/type))


imu/calibrate (std_srvs/Empty)


period (int, default: 8) frame_id (string, default: imu) angular_velocity_stdev (double, default: .000349) linear_acceleration_stdev (double, default: .002943) serial_number (int, default: -1)


Kalman filter sensor fusion for CARL's base and frame IMUs, to determine orientation.

Subscribed Topics

imu_base/data_raw (sensor_msgs/Imu) imu_top/data_raw (sensor_msgs/Imu)

Published Topics

frame_joint_states (sensor_msgs/JointState)


To install the carl_bot package, you can install from source with the following commands:

First Time Sensor Setup

To use the Phidgets IMU as a user other than root, you need to create a udev rule. Create a file called 99-phidgets.rules, with the following line:

Copy this file into the /etc/udev/rules.d directory. You may need to reboot your computer for this to take effect.


The two IMU's placed on CARL can be launched with the following launch file:

The orientation filter can be started with:

Individual IMUs can be started with by running the IMU node separately, and specifying the sensor's unique serial number.

2020-03-28 12:29