Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions content/components/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -511,6 +511,7 @@ Sensors are organized into categories; if a given sensor fits into more than one
{{< imgtable >}}
"APDS9960","components/sensor/apds9960","apds9960.jpg","Colour & Gesture"
"BMI160","components/sensor/bmi160","bmi160.jpg","Accelerometer & Gyroscope"
"BMI270","components/sensor/bmi270","bmi270.jpg","Accelerometer & Gyroscope"
"LD2410","components/sensor/ld2410","ld2410.jpg","Motion & Presence"
"LD2412","components/sensor/ld2412","ld2412.jpg","Motion & Presence"
"LD2420","components/sensor/ld2420","ld2420.jpg","Motion & Presence"
Expand Down
75 changes: 75 additions & 0 deletions content/components/sensor/bmi270.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
---
description: "Instructions for setting up BMI270 Accelerometer and Gyroscope sensors."
title: "BMI270 Accelerometer/Gyroscope Sensor"
params:
seo:
description: Instructions for setting up BMI270 Accelerometer and Gyroscope sensors.
image: bmi270.jpg
---

The `bmi270` sensor platform allows you to use your BMI270 Accelerometer/Gyroscope
([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
sensor to work.

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.

This component only does some basic filtering and no calibration. If you need additional configuration options
or features, please consider adding them to the component and submitting a pull request to help improve ESPHome
for everyone.

```yaml
# Example configuration entry
sensor:
- platform: bmi270
address: 0x68
update_interval: 60s
acceleration_x:
name: "BMI270 Accel X"
acceleration_y:
name: "BMI270 Accel Y"
acceleration_z:
name: "BMI270 Accel Z"
gyroscope_x:
name: "BMI270 Gyro X"
gyroscope_y:
name: "BMI270 Gyro Y"
gyroscope_z:
name: "BMI270 Gyro Z"
temperature:
name: "BMI270 Temperature"
```

## Configuration variables

- **address** (*Optional*, int): Manually specify the I²C address of the sensor. Defaults to `0x68`, may also be `0x69`.
- **acceleration_x** (*Optional*): Use the X-Axis of the Accelerometer. All options from
[Sensor](/components/sensor).

- **acceleration_y** (*Optional*): Use the Y-Axis of the Accelerometer. All options from
[Sensor](/components/sensor).

- **acceleration_z** (*Optional*): Use the Z-Axis of the Accelerometer. All options from
[Sensor](/components/sensor).

- **gyroscope_x** (*Optional*): Use the X-Axis of the Gyroscope. All options from
[Sensor](/components/sensor).

- **gyroscope_y** (*Optional*): Use the Y-Axis of the Gyroscope. All options from
[Sensor](/components/sensor).

- **gyroscope_z** (*Optional*): Use the Z-Axis of the Gyroscope. All options from
[Sensor](/components/sensor).

- **temperature** (*Optional*): Use the internal temperature of the sensor. All options from
[Sensor](/components/sensor).

- **update_interval** (*Optional*, [Time](/guides/configuration-types#time)): The interval to check the sensor. Defaults to `60s`.

- **id** (*Optional*, [ID](/guides/configuration-types#id)): Manually specify the ID used for code generation.

## See Also

- [Sensor Filters](/components/sensor#sensor-filters)
- [BMI160](/components/sensor/bmi160)
- {{< apiref "bmi270/bmi270.h" "bmi270/bmi270.h" >}}
- [Bosch BMI270 Product Page](https://www.bosch-sensortec.com/products/motion-sensors/imus/bmi270/)