Designed for Robotics &
Autonomous Systems
Seamlessly integrate DAISCH IM1R inertial modules into your stack. Official drivers for ROS 1 (Melodic/Noetic) and ROS 2 (Foxy/Humble).
ROS Native Support
Publish standard sensor_msgs/Imu and temperature out of the box. Includes custom interfaces for Euler angles and dynamic gyro bias.
Open Source C++
Full transparency and performance. Access our high-performance C++ ROS 1 & ROS 2 drivers directly on GitHub. Native implementation ensures minimal latency and CPU overhead with no external Python dependencies. git clone https://github.com/DaischSensor/im1r_ros2_driver.git
git clone .../im1r_ros2_driver.gitReady to Launch
Compile smoothly via catkin_make or colcon build. Pass serial port and baud rate configurations directly at runtime.
Published Topics
Strict adherence to ROS standards. Our driver publishes standard sensor_msgs for plug-and-play compatibility with packages like robot_localization, plus custom topics for advanced diagnostics.
Core inertial data used for navigation, state estimation, and SLAM.
-
orientationQuaternion (x, y, z, w) -
angular_velocity3-Axis Gyro (x, y, z) rad/s -
linear_acceleration3-Axis Accel (x, y, z) m/s² -
header.stampHardware synchronized time
| Variable | Type | Definition | Unit | Remarks |
|---|---|---|---|---|
| count | uint8 | Message counter | - | 0–255 cyclic increment |
| timestamp | uint64 | Timestamp of the measurement | microseconds (μs) | UNIX time |
| pitch | float64 | Pitch angle | degrees (°) | |
| roll | float64 | Roll angle | degrees (°) | |
| yaw | float64 | Yaw angle | degrees (°) | |
| imu_status | uint8 | IMU status indicator | - | See the product manual for bit definitions. |
| temperature | float64 | Temperature | degrees Celsius (°C) |
Open Source Repositories
Access the source code, open issues, and contribute directly via our official GitHub organization.
Reference Architectures
Validated configurations for popular SLAM and Odometry packages. Copy-paste ready for your launch files.
Visual-Inertial (VIO)
High-frequency IMU data (200Hz+) is critical for VINS to recover scale and handle rapid motion blur.
LiDAR-Inertial (LIO)
Provides tight-coupling for LiDAR motion de-skewing and robust localization in feature-poor environments (tunnels).
Sensor Fusion (EKF)
Fuse wheel odometry with IMU gyro/accel to prevent drift. Standard setup for AGVs and indoor mobile robots.
Quick Start Guide
Clone, build, and run the node in under 3 minutes. Our drivers are designed to be lightweight and compile cleanly in your existing workspace.
Prerequisite: Ensure you have the C++ serial package installed before building. The easiest way is using rosdep: rosdep install --from-paths src --ignore-src -r -y.
Build & Deployment Support
Authentic technical answers for robotics engineers deploying official DAISCH drivers in Linux/ROS environments.
catkin_make or colcon build, without worrying about interpreter compatibility issues.serial library. If this package is missing from the system, please install:
ROS1:
sudo apt-get install ros-$ROS_DISTRO-serial ROS2: Make sure to run
rosdep install --from-paths src --ignore-src -r -y to automatically complete the underlying serial port dependencies.sudo chmod 666 /dev/ttyUSB0. Recommended approach: Add the current user to the dialout group to obtain persistent permissions (will take effect after a reboot): sudo usermod -a -G dialout $USER- After compilation, the command
source install/setup.bashwas executed. - If you are using it in a third-party package, please add the dependency for this driver package in the
package.xml.
im1r_ros1_driver or im1r_ros2_driver). Our engineering team will regularly follow up.Power your Autonomy Stack with DAISCH Drivers
Seamlessly integrate high-precision IMU and GNSS data into your robotic software. Get immediate support for standard interfaces (like sensor_msgs/Imu) in ROS 1 and ROS 2.
