Introduction
The BMI160 6-axis inertial motion sensor is a new product from DFRobot. It is based on Bosch BMI160 6-axis MEMS sensor which integrates 16-bit 3-axis accelerometer with ultra-low-power 3-axis gyroscope. Bosch BMI160 is designed for smartphones, tablets, wearable devices. It has built-in intelligent step-counting algorithms that can be read directly through registers. Built-in 3-axis acceleration and 3-axis gyroscope can detect running, fitness and other motion. Built-in LDO power management chip, supports 3.2~6V wide voltage power supply, and also has I2C level conversion circuit, compatible with Arduino 3.3V and 5V micro controller.
Application Scenarios
- Step Count
- Acceleration Detection
- Inclination Measurement
- Display Toggle Horizontal / Vertical Mode
Specifications
- Operating Voltage: 3.2V~6V
- Current Consumption: <1mA
- Interface: Gravity-IIC
- Acceleration Range: ±2g/±4g/±8g/±16g
- Gyroscopes Range: ±125°/s,±250°/s,±500°/s,±1000°/s,±2000°/s
- Acceleration Zero-g Offset: ±40mg
- Gyroscopes Zero-g Offset: ±10°/s
- Programmable Frequency: 25/32Hz~1600Hz
- 6D Detection and Location
- 16-bit Data Output
- Shock Resistance: 1000gx 200us
- 2 Independent Programmable Interrupt Generators
- In-built 1024 Byte FIFO
- Working Temperature:-40℃~ 85℃
- Dimension: 22X27mm/0.87x1.06 in
Appearance and Size Chart



Label | Name | Function |
---|---|---|
+ | VCC | 3.2~6V |
- | GND | GND |
C | SCL | I2C-SCL |
D | SDA | I2C-SDA |
INT1 | INT1 | Configurable interrupt output 1 |
INT2 | INT2 | Configurable interrupt output 2 |
SDO | SDO | Choose the address of I2C [GND: 0x68 VCC: 0x69 (Default)] |
BMI160 6-Axis IMU Sensor Pin Description
Hardware
Hardware Preparation
- 1 x BMI160 6-axis IMU
- 1 x Arduino Uno
Hardware Connection
- Connect the BMI160 6-axis IMU to Arduino board by I2C (" "can connect "3V3" or "5V")
- Connect the INT1 or INT2 to the corresponding pins on the Arduino board, as shown in the following table
Arduino board | Corresponding Pins |
---|---|
Arduino UNO | D2 |
FireBeetle-ESP32 | D13 |
FireBeetle-ESP8266 | D13 |
FireBeetle-Board328P | D2 |
Leonardo | D3 |
Connection Diagram
Examples
Step Count
Note:I2C has two addresses: 0x69 (Default, Vacant); 0x68 (Connect SDO to GND). |
---|

- Tip: The pedometer algorithm does not recognize steps until after seven consecutive steps, and then if you stop walking at a certain time for too long, the counter will reset,it is also applies to INT1, INT2.
- Note: At some point there is a discrepancy between the number of steps and the actual number of steps, due to the problem of the BMI chip itself."
Acceleration Gyroscope

- Fig2: Gravity:BMI160 6-axis IMU Acceleration Gyroscope
- Tip:The first three columns are the data of the gyroscope in the direction of the X, Y, and Z axis, and the last three are the data of the acceleration in the direction of the X, Y, and Z axis.
FAQ
For any questions, advice or cool ideas to share, please visit the DFRobot Forum. |
---|
More Documents
FAQ
For any questions, advice or cool ideas to share, please visit the DFRobot Forum.