CHR-6dm Attitude and Heading Reference System




This IMU from CH Robotics is an Attitude and Heading Reference System (AHRS) that combines

      1. 3- gyro axes,

      2. 3- accelerometer axes,

      3. 3- magnetic compass axes,

      4. 1- powerful 32-bit ARM Cortex on one tiny, 2.7g board.

      5. 1- on-board Extended Kalman Filter (EKF)

      6. 1-Quaternion (Only for CHR-UM6)

handles the tricky data fusion problem, reporting yaw, pitch, and roll angles at up to 300 Hz over a simple TTL serial interface. The CHR-6dm provides built-in routines for gyro bias calibration, and PC software is available for automatic soft and hard iron magnetometer calibration. The Cortex’s programming pins are exposed, and the firmware is open-source.


1. Overview

The CHR-6dm is an Attitude and Heading Reference System (AHRS) from CH Robotics that uses a powerful 32-bit STM32F103T8 ARM Cortex M3 running at 64 MHz to process data from an ADXL335 three-axis accelerometer, a LP510AL pitch/roll rate gyro, a LY510ALH yaw rate gyro, and an HMC5843 three-axis digital magnetic compass. An on-board Extended Kalman Filter (EKF) produces estimates for yaw, pitch, and roll angles and angle rates, which can be streamed at up to 300 Hz over a simple TTL (3.3V with 5V-tolerant pins) serial interface or transmitted upon request along with raw data from any of the board’s sensors. Regardless of the transmission rate, internal angle estimates are maintained at over 500 Hz to ensure long-term accuracy. A USB-to-serial adapter can be used to connect the IMU to a computer running the free AHRS Interface PC application, which can be used for data visualization, board calibration, and AHRS settings configuration.

The CHR-6dm simplifies system integration by providing a number of automatic calibration routines, including rate gyro bias calibration, magnetometer hard and soft iron calibration, and accelerometer “zeroing” to compensate for AHRS-platform misalignment. All calibration routines are triggered by sending simple commands over the serial interface.

An on-board 3.3V regulator further simplifies integration. With possible input voltages ranging from 3.3 to 12 V and with 5V-tolerant I/O pins, the CHR-6dm can easily be integrated into a wide range of systems. The board also provides a +3.3V output that can deliver up to 400 mA to peripheral devices. The board’s pins have a 0.1" spacing, so they will work with standard 0.1" headers and breadboards.

This tiny (1.0"×0.96") orientation sensor weighs just 2.7 g, making it well suited for unmanned aerial vehicle (UAV) navigation.

For a less expensive version of this board that does not include a 3-axis magnetic compass, please see the CHR-6d inertial measurement unit.




2. Features

  • On-board EKF produces Euler angle and angle rate outputs for yaw, pitch, and roll from 3  gyro axes, 3 accelerometer axes, and 3 magnetometer axes
  • Automatic gyro bias calibration
  • Data output rate adjustable from 20 to 300 Hz (data is internally sampled at over 500 Hz regardless of the broadcast frequency)
  • TTL UART communication interface (3.3V with 5V-tolerant pins) with baud rates up to 115,200 bps can stream data or provide updates on request
  • On-board 3.3V regulator simplifies integration
  • 3.3V output capable of delivering up to 400 mA for powering other peripherals (e.g. GPS)
  • 5V-tolerant I/O pins for easy integration with 5V systems
  • Open-source Cortex firmware (in C) with free development tools
  • Open-source PC software (Visual C# project) for data visualization, calibration, and AHRS configuration
  • Two UARTs and one SPI bus are brought out to header pins for custom applications

AHRS Interface PC software for the CHR-6dm AHRS IMU.


3. Specifications

  • Better than 0.5° angle accuracy under static test conditions (actual performance will vary depending on EKF configuration and environment)
  • 16-bit Euler angle outputs provide 0.0096° resolution
  • 3.3 – 12 V operating range
  • ±400°/s maximum measurable rotation rates
  • ±3 g accelerometer range
  • Weight: 2.7 grams (0.095 oz)
  • Size: 25.4 x 24.4 x 3 mm (1.00" x 0.96" x 0.1")

4. Open Source PC Application and Firmware

Both the PC application for communicating with the CHR-6dm and the CHR-6dm’s firmware are open source and available for download from the Resources tab. All of the pins needed to reprogram the STM32F103T8 ARM Cortex processor are made available to the user, as are six unused digital I/O pins that can be used for tasks such as motor control, GPS integration, pressure sensor integration, and communication with other digital devices if the firmware is modified. Pins D1 and D2 can also be configured as a second TTL UART, and pins D3 – D5 can be configured as an SPI bus. Free development tools are available.

More Videos

5. Application Examples

The CHR-6dm can be used in applications where a compact attitude and heading reference system is needed:

  • UAV navigation
  • Robotics
  • Motion tracking
  • General motion sensing
  • Platform stabilization
  • Image stabilization
  • Enhanced GPS navigation

6. File downloads
CHR-6dm AHRS datasheet (489k pdf)

   Datasheet for the CHR-6dm attitude and heading reference system (AHRS).

CHR-6dm AHRS Interface PC application (267k zip)

   Windows application for configuring the CHR-6dm AHRS over a serial port and displaying data    from the module in real-time.
Note: this software requires the latest version of DirectX.

AHRS Interface PC software for the CHR-6dm AHRS IMU.

CHR-6dm AHRS firmware v1.0
(630k zip)

    Firmware for the CHR-6dm AHRS (version 1.0). CHR-6dm firmware by CH Robotics is licensed    under a Creative Commons Attribution-Share Alike 3.0 United States License

CHR-6dm AHRS PC application source code (1MB zip)

   Source code (Visual C# project) for the AHRS PC software used to configure the CHR-6dm AHRS    and display data from it in real-time. CHR-6dm configuration software by CH Robotics is licensed    under a Creative Commons Attribution-Share Alike 3.0 United States License

LPR510AL datasheet (226k pdf)

   Datasheet for the ST LPR510AL MEMS motion sensor: dual axis pitch and roll ±100°/s analog    output gyroscope.

LY510ALH datasheet (217k pdf)

   Datasheet for the ST LY510ALH MEMS yaw-rate gyroscope.

ADXL335 datasheet (427k pdf)

   Datasheet for Analog Device’s ADXL335 3-axis accelerometer.

HMC5843 datasheet (624k pdf)

   Datasheet for the Honeywell HMC5843 3-axis digital magnetic compass.


    Datasheet and other downloads for the STM32F103T8 Cortex M3 processor.


8. Product Comparison

Product Name Sensors Estimation Other
Gyros (3x) Accels (3x) Mag (3x) Altitude Roll Pitch Yaw Quaternion Enclosure

Pololu AltIMU-10 v3

Yes Yes Yes Yes          

CHR-UM6-LT Orientation Sensor

Yes Yes Yes   Yes Yes Yes Yes  

CHR-UM6 Orientation Sensor

Yes Yes Yes


Yes Yes Yes Yes Yes

CHR-UM6 r2 Orientation Sensor

Yes Yes Yes   Yes Yes Yes Yes Yes

9. People often buy this product together with:

Pololu USB-to-Serial Adapter

Pololu USB-to-Serial Adapter

66-Channel LS20031 GPS Receiver Module

  페이지 처음으로