OFF
MIKROE-2073
25 g
Status:
10DOF Click is a compact add-on board for enhancing hardware prototypes with 10DOF functionality (10 degrees of freedom). This board features the BNO055, an intelligent 9-axis absolute orientation sensor from Bosch Sensortec. In addition, it also features the BMP180, a digital pressure sensor from Bosch Sensortec. These two sensors bring you three axes for measuring the acceleration and orientation, three axes for measuring the angular velocity, three axes for measuring the direction of a magnetic field around the device, and one pressure value for determining the altitude. This Click board™ makes the perfect solution for augmented reality, navigation, gaming, robotics, or industrial applications.
10DOF Click is supported by a mikroSDK compliant library, which includes functions that simplify software development. This Click board™ comes as a fully tested product, ready to be used on a system equipped with the mikroBUS™ socket.
Suggested substitutes:
This product is no longer in stock
Availability date:
10DOF Click is based on the BNO055, an intelligent 9-axis absolute orientation sensor from Bosch Sensortec. This System-in-Package (SiP) integrates a triaxial 14-bit accelerometer, a triaxial 16-bit gyroscope with a range of ±2000 degrees per second, a triaxial geomagnetic sensor, and a 32-bit cortex M0+ microcontroller running Bosch Sensortec sensor fusion software. The fusion software handles complex calculations to get the quaternion, Euler angles, rotation vector, linear acceleration, gravity, and other data. The BNO055 sensor has several operation modes: normal, suspend, low-power, standby, and deep suspend. It also generates a motion-triggered interrupt signal for any motion (slope) detection, slow or no motion recognition, and high G detection with acceleration ranges of ±2g/±4g/±8g/±16g.
The other part of this Click board™ makes the BMP180, a fully calibrated digital pressure sensor from Bosch Sensortec, capable of measuring the pressure from 300hPa up to 1100hPa. It makes a range from +9000m down to -500m relating to the sea level, making it ideal for tracking an altitude. The BMP180's data have to be compensated by the calibration data stored in the 176 bits of internal EEPROM (stored data in EEPROM are constants). The sensor has a 16 to 19-bit resolution for pressure data and 16-bit for temperature data, and the sampling rate can be increased up to 128 samples per second (standard mode) for dynamic measurement.
Both sensors on the 10DOF Click use an I2C interface to communicate with the host microcontroller over the mikroBUS™ socket. The BNO055 sensor sends generated interrupt signals to the host MCU over an INT pin and can be reset via an RST pin with active LOW. In addition to the BNO055 sensor, this Click board™ features a selectable I2C address over an ADDR SEL jumper with 0 selected by default.
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.
Type
Motion
Applications
Can be used for augmented reality, navigation, gaming, robotics, or industrial applications
On-board modules
BNO055 - intelligent 9-axis absolute orientation sensor from Bosch Sensortec
BMP180 - digital pressure sensor from Bosch Sensortec
Key Features
10DOF functionality (10 degrees of freedom), SiP with triaxial accel/gyro/geomagnetic sensors, high resolution, integrated 32-bit MCU running the BSX3.0 FusionLib software, combined with fully calibrated digital pressure sesnor, low power consumption, I2C interface, and more
Interface
I2C
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
S (28.6 x 25.4 mm)
Input Voltage
3.3V
Category
Click Boards
This table shows how the pinout on 10DOF Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Label | Name | Default | Description |
---|---|---|---|
- | PWR | - | Power LED Indicator |
J1A | ADDR SEL | Right | I2C Address Selection 1/0: Left position 1, Right position 0 |
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | - | 3.3 | - | V |
Accelerometer Range | pm2 | - | pm16 | g |
Gyroscope Range | pm125 | - | pm2000 | /s |
Magnometer Range (x,y/z) | ±1300/±2500 | μT | ||
Accelerometer Sensitivity | - | 1 | - | LSB/mg |
Gyroscope Sensitivity | - | 16 | - | LSB/°/s |
Magnometer Resolution | - | 0.3 | - | μT |
Pressure Range | 300 | - | 1100 | hPa |
We provide a library for the 10DOF 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 10DOF Click driver.
Key functions
This function writes data to the desired register.
This function reads the ID value od the BMP180 chip.
This function sets default configuration for the BMP180 sensor function.
Example Description
This is a example which demonstrates the use of 10DOF Click board. It measures temperature, humidity and pressure data from the BME180 chip sensor and accel, gyro and magnetometar coordinates values for X-axis, Y-axis and Z-axis.
void application_task ( void )
{
c10dof_read_accel( &c10dof, &accelX, &accelY, &accelZ );
Delay_ms( 10 );
c10dof_read_gyro( &c10dof, &gyroX, &gyroY, &gyroZ );
Delay_ms( 10 );
c10dof_read_mag( &c10dof, &magX, &magY, &magZ );
Delay_ms( 10 );
temperature = c10dof_get_temperature( &c10dof );
Delay_ms( 10 );
c10dof_get_measurements( &c10dof, &temperature, &pressure );
Delay_ms( 10 );
log_printf( &logger, "Accel X : %d | ", accelX );
log_printf( &logger, "Gyro X : %d | ", gyroX );
log_printf( &logger, "Mag X : %d | ", magX );
log_printf( &logger, "Temp. : %.2f C rn", temperature, deg_cel);
log_printf( &logger, "Accel Y : %d | ", accelY);
log_printf( &logger, "Gyro Y : %d | ", gyroY);
log_printf( &logger, "Mag Y : %d | rn", magY);
log_printf( &logger, "Accel Z : %d | ", accelZ);
log_printf( &logger, "Gyro Z : %d | ", gyroZ);
log_printf( &logger, "Mag Z : %d | ", magZ);
log_printf( &logger, "Press. : %.2f mbar rn", pressure);
log_printf( &logger, "--------------------------------------------------------------------rn", pressure);
Delay_ms( 500 );
}
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:
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.
This Click board™ is supported with mikroSDK - MIKROE Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.