Fermion: ICG 20660L Accel+Gyro 6-Axis IMU Module

SKU: SEN0443

The ICG-20660L is a high-precision 6-axis IMU integrating a 3-axis accelerometer, a 3-axis gyroscope, and a 16-bit ADC for stable digital output. With ±1% initial sensitivity error and low-noise performance (6.5 mdps/√Hz), it delivers excellent motion detection for stabilization applications. The built-in 512-byte FIFO, programmable interrupts, and FSYNC synchronization support enable seamless integration with camera and video systems for OIS/EIS designs. Its compact size offers flexible installation in space-constrained applications. This sensor is ideal for digital and smartphone cameras, OIS/EIS stabilization systems, DSLR mechanisms, sports wearables, and other handheld devices requiring reliable anti-shake performance.

Front of ICG-20660L 6-axis motion sensor module with I²C interface-DFRobot product sku:SEN0443 image.
  • Docs
  • Tech Specs
  • Projects
  • 1. Example Code for Arduino-Read the x, y, z data of accelerometer

    This tutorial shows how to read the accelerometer’s x, y, and z-axis data from the ICG-20660L in real time.

    2. Example Code for Arduino-Read the x, y, z data of the gyroscope

    This tutorial demonstrates how to read real-time gyroscope data (x, y, z axes) from the ICG-20660L sensor. You will learn how to prepare the hardware, set up the software environment, complete the wiring, upload the sample code, and monitor the rotational speed values output by the gyroscope.

    3. Example Code for Arduino-Read gyroscope, accelerometer and onboard temperature data

    This tutorial shows how to read gyroscope, accelerometer, and onboard temperature data from the ICG-20660L in real time.

    4. Example Code for Arduino-Read 14-byte raw data of accelerometer, temperature and gyroscope

    This tutorial shows how to read the 14-byte raw accelerometer, temperature, and gyroscope data from the ICG-20660L.

    5. Example Code for Arduino-Interrupt Function

    This tutorial shows how to configure and use the ICG-20660L interrupt function to respond to motion and data-ready events.

    6. Example Code for Arduino-Wakeup function

    This tutorial shows how to configure the ICG-20660L wake-up function and detect motion-triggered wake-up events in low-power mode.

    7. Example Code for Raspberry Pi – Read the x, y, z data of accelerometer

    This tutorial shows how to read the accelerometer’s x, y, and z-axis data from the ICG-20660L on a Raspberry Pi in real time.

    8. Example Code for Raspberry Pi – Read the x, y, z data of the gyroscope

    This tutorial shows how to read real-time x, y, and z-axis gyroscope data from the ICG-20660L on a Raspberry Pi.

    9. Example Code for Raspberry Pi – Read gyroscope, accelerometer and onboard temperature data

    This tutorial shows how to read real-time gyroscope, accelerometer, and onboard temperature data from the ICG-20660L using a Raspberry Pi.

    10. Example Code for Raspberry Pi – Read 14-byte raw data of accelerometer, temperature and gyroscope

    This tutorial shows how to read the 14-byte raw output data of the accelerometer, onboard temperature sensor, and gyroscope from the ICG-20660L on a Raspberry Pi.

    11. Example Code for Raspberry Pi – Interrupt Function

    This tutorial shows how to configure and read interrupt events from the ICG-20660L on a Raspberry Pi, including data-ready and motion-triggered interrupts.

    12. Example Code for Raspberry Pi – Wakeup Function

    This tutorial shows how to configure and use the wake-up function of the ICG-20660L on a Raspberry Pi, allowing the sensor to trigger an event when motion exceeds a defined threshold.

    Reference

    Specification

    Parameter Value
    Operating Voltage 3.3 V
    Current Consumption 0.14 mA (sleep) / 0.52 mA (accelerometer only) / 4.27 mA (gyro only) / 4.9 mA (accelerometer + gyro)
    Integrated ADC 16-bit
    Initial Sensitivity Accelerometer ±1%; Gyro ±1%
    Non-linear Sensitivity Accelerometer ±0.5%; Gyro ±0.1%
    Interface I²C / SPI (7 MHz)
    Gyro Noise 6.5 mdps/√Hz
    Selectable Acceleration Range ±2 g / ±4 g / ±8 g / ±16 g
    Gyroscope Range ±125 / ±250 / ±500 dps
    Output Data Rate 1000–8000 Hz
    Gyro Start-up Time 80 ms
    Accelerometer Start-up Time 20 ms (wake) / 30 ms (initial start)
    Operating Temperature –40 to +85 ℃
    Dimensions 22 × 15 mm / 0.87 × 0.59 in

    Pinout

    Num Label Description
    1 VCC 3.3v~5.5v power input
    2 3V3 3.3v power output/input
    3 GND GND
    4 SCL I2C Clock Line
    5 SDA I2C Data Line
    6 SCK SPI Clock Control Line
    7 SDI SPI Data Line (Input)
    8 SDO I2C Address Select Pin/ SPI Data Line (Output)
    9 CS SPI chip-select line
    10 INT Interrupt Pin
    11 FSY Synchronization Digital Input (optional)

    FSY pin function: Advanced users can combine this pin with other sensors (such as image capture modules) to achieve better linkage of the entire project.

    • Only 3.3V mainboard is supported.
    • Voltage outputs of all data are 3.3V.
    • Connecting 5V onto I2C will affect the sensor service life.

    Was this article helpful?

    TOP