|
| 1 | +--- |
| 2 | +description: "Instructions for setting up BMI270 Accelerometer and Gyroscope sensors." |
| 3 | +title: "BMI270 Accelerometer/Gyroscope Sensor" |
| 4 | +params: |
| 5 | + seo: |
| 6 | + description: Instructions for setting up BMI270 Accelerometer and Gyroscope sensors. |
| 7 | + image: bmi270.jpg |
| 8 | +--- |
| 9 | + |
| 10 | +The `bmi270` sensor platform allows you to use your BMI270 Accelerometer/Gyroscope |
| 11 | +([datasheet](https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bmi270-ds000.pdf)) sensors with ESPHome. The [I²C Bus](/components/i2c) is required to be set up in your configuration for this |
| 12 | +sensor to work. |
| 13 | + |
| 14 | +The BMI270 is a low-power 6-axis inertial measurement unit (IMU) from Bosch Sensortec, designed for wearables and other battery-powered applications. It offers improved power efficiency and features compared to its predecessor, the BMI160. |
| 15 | + |
| 16 | +This component only does some basic filtering and no calibration. Due to the complexity of this sensor and the amount |
| 17 | +of possible configuration options, you should probably create an {{< docref "/components/external_components" "external component" >}} |
| 18 | +by copying and modifying the existing code if you want a specific new feature. Supporting all possible use cases would |
| 19 | +be quite hard. |
| 20 | + |
| 21 | +```yaml |
| 22 | +# Example configuration entry |
| 23 | +sensor: |
| 24 | + - platform: bmi270 |
| 25 | + address: 0x68 |
| 26 | + update_interval: 60s |
| 27 | + acceleration_x: |
| 28 | + name: "BMI270 Accel X" |
| 29 | + acceleration_y: |
| 30 | + name: "BMI270 Accel Y" |
| 31 | + acceleration_z: |
| 32 | + name: "BMI270 Accel Z" |
| 33 | + gyroscope_x: |
| 34 | + name: "BMI270 Gyro X" |
| 35 | + gyroscope_y: |
| 36 | + name: "BMI270 Gyro Y" |
| 37 | + gyroscope_z: |
| 38 | + name: "BMI270 Gyro Z" |
| 39 | + temperature: |
| 40 | + name: "BMI270 Temperature" |
| 41 | +``` |
| 42 | +
|
| 43 | +## Configuration variables |
| 44 | +
|
| 45 | +- **address** (*Optional*, int): Manually specify the I²C address of the sensor. Defaults to `0x68`, may also be `0x69`. |
| 46 | +- **acceleration_x** (*Optional*): Use the X-Axis of the Accelerometer. All options from |
| 47 | + [Sensor](/components/sensor). |
| 48 | + |
| 49 | +- **acceleration_y** (*Optional*): Use the Y-Axis of the Accelerometer. All options from |
| 50 | + [Sensor](/components/sensor). |
| 51 | + |
| 52 | +- **acceleration_z** (*Optional*): Use the Z-Axis of the Accelerometer. All options from |
| 53 | + [Sensor](/components/sensor). |
| 54 | + |
| 55 | +- **gyroscope_x** (*Optional*): Use the X-Axis of the Gyroscope. All options from |
| 56 | + [Sensor](/components/sensor). |
| 57 | + |
| 58 | +- **gyroscope_y** (*Optional*): Use the Y-Axis of the Gyroscope. All options from |
| 59 | + [Sensor](/components/sensor). |
| 60 | + |
| 61 | +- **gyroscope_z** (*Optional*): Use the Z-Axis of the Gyroscope. All options from |
| 62 | + [Sensor](/components/sensor). |
| 63 | + |
| 64 | +- **temperature** (*Optional*): Use the internal temperature of the sensor. All options from |
| 65 | + [Sensor](/components/sensor). |
| 66 | + |
| 67 | +- **update_interval** (*Optional*, [Time](/guides/configuration-types#time)): The interval to check the sensor. Defaults to `60s`. |
| 68 | + |
| 69 | +- **id** (*Optional*, [ID](/guides/configuration-types#id)): Manually specify the ID used for code generation. |
| 70 | + |
| 71 | +## See Also |
| 72 | + |
| 73 | +- [Sensor Filters](/components/sensor#sensor-filters) |
| 74 | +- {{< docref "bmi160/" >}} |
| 75 | +- {{< apiref "bmi270/bmi270.h" "bmi270/bmi270.h" >}} |
| 76 | +- [Bosch BMI270 Product Page](https://www.bosch-sensortec.com/products/motion-sensors/imus/bmi270/) |
0 commit comments