How does it work?
6DOF IMU 18 Click is based on the ICM-42605, a 6-axis motion tracking device that combines a 3-axis gyroscope and a 3-axis accelerometer from TDK InvenSense. It features a 2K-byte FIFO that can lower the traffic on the selected serial bus interface and reduce power consumption by allowing the system processor to burst read sensor data and then go into a low-power mode. With its 6-axis integration, the ICM-42605 guarantees optimal motion performance for customers. The IICM-42605 supports an extended operating temperature range, allowing customers to design it into various industrial IoT applications, including navigation and stabilizing industrial machinery and robots.
The gyroscope supports eight programmable full-scale range settings from ±15.625dps to ±2000dps, and the accelerometer supports four programmable full-scale range settings from ±2g to ±16g. Other industry-leading features include on-chip 16-bit ADCs, programmable digital filters, an embedded temperature sensor, and programmable interrupts. The ICM-42605 also provides high robustness by supporting 20,000g shock reliability.
This Click board™ allows using both I2C and SPI interfaces at a maximum frequency of 1MHz for I2C and 24MHz for SPI communication. Selection is made by positioning SMD jumpers marked COMM SEL to the appropriate position. All jumpers must be on the same side, or the Click board™ may become unresponsive. When the I2C interface is selected, the ICM-42605 allows the choice of its I2C slave address, using the ADDR SEL SMD jumper set to an appropriate position marked 1 or 0. In addition to communication pins, this board also possesses additional interrupt pins, routed to the INT and IT2 pins on the mikroBUS™ socket, to signal MCU that an event, such as specific tap or sample acquisition conditions, has happened. Besides the standard interrupt function, the IT2 pin can also be used as a Frame Synchronization signal for synchronization with an external digital signal.
This Click board™ can only be operated with a 3.3V logic voltage level. The board must perform appropriate logic voltage level conversion before using MCUs with different logic levels. However, the Click board™ comes equipped with a library containing functions and an example code that can be used as a reference for further development.
Specifications
Type
Motion
Applications
Can be used for applications like tilt sensing, navigation, orientation measurement, platform stabilization, robotics, and many more
On-board modules
ICM-42605 – 6-axis MotionTracking™ IMU from TDK InvenSense
Key Features
Low power consumption, digital-output X-, Y-, and Z-axis angular rate sensors with programmable full-scale range, user-programmable interrupts, 20.000g shock tolerant, and more
Interface
I2C,SPI
Feature
ClickID
Compatibility
mikroBUS™
Click board size
S (28.6 x 25.4 mm)
Input Voltage
3.3V
Pinout diagram
This table shows how the pinout on 6DOF IMU 18 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED Indicator |
JP1-JP4 | COMM SEL | Left | Communication Interface Selection SPI/I2C: Left position SPI, Right position I2C |
JP5 | ADDR SEL | Left | I2C Address Selection 0/1: Left position 0, Right position 1 |
6DOF IMU 18 Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | – | 3.3 | – | V |
Gyroscope Full-Scale Range | ±15.625 | – | ±2000 | dps |
Accelerometer Full-Scale Range | ±2 | – | ±16 | g |
Gyroscope Sensitivity | 16 | – | 2097.2 | LSB/dps |
Accelerometer Full-Scale Range | 2.048 | – | 16.384 | LSB/g |
Software Support
We provide a library for the 6DOF IMU 18 Click as well as a demo application (example), developed using Mikroe compilers. The demo can run on all the main Mikroe development boards.
Package can be downloaded/installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on Mikroe github account.
Library Description
This library contains API for 6DOF IMU 18 Click driver.
Key functions
-
c6dofimu18_set_reg_bank
6DOF IMU 18 set register bank function. -
c6dofimu18_get_int1_state
6DOF IMU 18 read INT1 pin state function. -
c6dofimu18_get_data_from_register
6DOF IMU 18 read data function.
Example Description
This library contains API for 6DOF IMU 18 Click driver. The library initializes and defines the I2C and SPI bus drivers to write and read data from registers, as well as the default
configuration for reading gyroscope and accelerator data, and temperature.
void application_task ( void )
{
if ( c6dofimu18_get_int1_state( &c6dofimu18) )
{
c6dofimu18_data_t accel_data;
c6dofimu18_data_t gyro_data;
float temp_data;
uint32_t tmst_data;
c6dofimu18_get_data_from_register( &c6dofimu18, &temp_data, &accel_data, &gyro_data, &tmst_data );
log_printf( &logger, " TEMP: %.2f rn", temp_data );
log_printf( &logger, " GYRO: x:%d y:%d z:%d rn", gyro_data.data_x,gyro_data.data_y,gyro_data.data_z );
log_printf( &logger, " ACCEL: x:%d y:%d z:%d rn", accel_data.data_x,accel_data.data_y,accel_data.data_z );
log_printf( &logger, "========================== rn" );
Delay_ms( 1000 );
}
}
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on Mikroe github account.
Other Mikroe Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.6DOFIMU18
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all Mikroe compilers.
mikroSDK
This Click board™ is supported with mikroSDK – Mikroe Software Development Kit, which needs to be downloaded from the LibStock and installed for the compiler you are using to ensure proper operation of mikroSDK compliant Click board™ demo applications.
For more information about mikroSDK, visit the official page.