AtomS3R-M12 的 ESPHome 集成包含启动初始化、姿态传感器、PSRAM 和 OV3660 摄像头组件。
| 项目 | 信息 |
|---|---|
| 产品名称 | AtomS3R-M12 |
| SKU | C126-M12 |
| 主要功能 | 摄像头、加速度、陀螺仪和温度数据 |
| 通信接口 | I2C、摄像头并口 |
| ESPHome 组件 | bmi270_bmm150(外部组件)、psram、esp32_camera |
| ESPHome 版本要求 | / |
AtomS3R-M12 上电后必须在硬件总线初始化前将 GPIO18 拉低,否则姿态传感器通信可能失败。该操作使用较高的启动优先级执行:
esphome:
name: atoms3r-m12
friendly_name: AtomS3R-M12
on_boot:
priority: 800
then:
- lambda: |-
gpio_set_direction(GPIO_NUM_18, GPIO_MODE_OUTPUT);
gpio_set_level(GPIO_NUM_18, 0);
vTaskDelay(pdMS_TO_TICKS(1500)); 摄像头图像缓存使用 ESPHome 官方 PSRAM 组件:
psram:
mode: octal
speed: 80MHz ESPHome 当前没有适用于本设备的官方 BMI270/BMM150 驱动,因此使用社区 bmi270_bmm150 外部组件:
external_components:
- source: github://DennisGaida/m5stack-atoms3r-components@main
components: [bmi270_bmm150] 外部 Platform 提供三轴加速度、三轴陀螺仪和温度实体:
i2c:
- id: bmi270_i2c
sda: GPIO45
scl: GPIO0
sensor:
- platform: bmi270_bmm150
i2c_id: bmi270_i2c
address: 0x68
update_interval: 5s
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" OV3660 使用 ESPHome 官方 ESP32 Camera 组件:
i2c:
- id: camera_i2c
sda: GPIO12
scl: GPIO9
frequency: 100kHz
timeout: 10ms
esp32_camera:
name: "OV3660 Camera"
external_clock:
pin: GPIO21
frequency: 20MHz
i2c_id: camera_i2c
data_pins: [GPIO3, GPIO42, GPIO46, GPIO48, GPIO4, GPIO17, GPIO11, GPIO13]
vsync_pin: GPIO10
href_pin: GPIO14
pixel_clock_pin: GPIO40
resolution: 640X480
jpeg_quality: 10 完整配置请参考 atoms3r-m12-example.yaml。案例包含网络、API、GPIO18 启动时序、第三方姿态传感器、PSRAM 和摄像头配置。
添加设备时的 Home Assistant 界面:
设备添加完成后,可查看摄像头和姿态传感器实体:
Home Assistant Dashboard 示例: