pdf-icon

AtomS3R-M12 Home Assistant 連携ガイド

このガイドでは、AtomS3R-M12 を Home Assistant に連携させる方法について説明します。

必要なもの

クイックスタート

下のボタンをクリックするだけでファームウェアの書き込みが完了します。画面の指示に従って設定を行うことで、AtomS3R-M12 の Home Assistant 連携をすぐにお試しいただけます。

ご注意

本チュートリアルでは、ファームウェアのコンパイルおよびアップロードに ESPHome 2025.12.5 を使用しています。コンパイル/アップロードに問題が発生した場合は、ESPHome のバージョンを切り替えることをご検討ください。

デバイスの追加

  1. 右下の緑色のボタンをクリックしてデバイスを作成します。
  1. CONTINUE をクリックします。
  1. New Device Setup をクリックします。
  1. デバイス名を入力し、NEXT をクリックします。
  1. ESP32-S3 をクリックします。
  1. SKIP をクリックします。
  1. EDIT をクリックします。YAML ファイルを使用してデバイスの機能をカスタマイズできます。

設定の変更

以下はコードの核心部分です。関連する参考情報と説明を以下に示します。

基本情報と起動時の操作

on_boot コンポーネントを追加します:

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));
注意
ハードウェア回路設計の仕様により、AtomS3R-M12 は電源投入後に GPIO18 をローレベルに引き下げて、正常な I²C 通信を有効にする必要があります。I²C バスの初期化またはアクセス前に GPIO18 をローレベルに設定しないと、I²C 通信が失敗する可能性があります。そのため、GPIO18 の制御にはシステム起動の初期段階でローレベルが保証されるよう、最高優先度を割り当てる必要があります。

PSRAM 設定

PSRAM コンポーネントを追加します:

psram:
  mode: octal
  speed: 80MHz

外部コンポーネント

External Components コンポーネントを追加します:

external_components:
  - source: github://DennisGaida/m5stack-atoms3r-components/components@main
    components: [bmi270_bmm150]
注意
ESPHome にはまだ BMI270/BMM150 の公式コンポーネントが提供されていないため、本プロジェクトではコミュニティ開発者が提供するサードパーティコンポーネントライブラリを使用しています。作者の貢献に心より感謝申し上げます。

I2C バス設定

I2C コンポーネントを追加します:

i2c:
  - id: BMI270_150
    sda: GPIO45
    scl: GPIO0
  - id: camera_i2c
    sda: GPIO12
    scl: GPIO9
    frequency: 100kHz
    timeout: 10ms

センサー設定

Sensor コンポーネントを追加します:

sensor:
  - platform: bmi270_bmm150
    i2c_id: BMI270_150
    address: 0x68
    update_interval: 3s
    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"

カメラ設定

ESP32 Camera コンポーネントを追加します:

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

ファームウェアのダウンロードと書き込み

  1. 変更が完了したら、右上の SAVEINSTALL をクリックし、ポップアップウィンドウで Manual Download を選択します。
  1. Factory format(Previously Modern) を選択します。
ヒント
AtomS3R-M12 をクリックして完全なサンプル設定を確認できます。初回ビルドは、Home Assistant ホストの性能やネットワーク環境によって時間がかかる場合があります。
  1. USB Type-C データケーブルでデバイスをホストに接続します。ESPHome Web を開き、CONNECT をクリックしてデバイスに接続します。
  1. 対応するシリアルポート番号を確認します。
  1. INSTALL をクリックします。
  1. コンパイル済みのファームウェアを選択してアップロードします。
  1. ダウンロードが完了したら、デバイスを再起動します。

使い方

  1. Settings -> Device & services をクリックしてデバイスを確認します。
  1. Discover セクションで対応するデバイスを見つけることができます。
  1. デバイスを追加すると、データが正しく表示されます。
  1. 最後に、これらのエンティティをダッシュボードに追加します。以下はその表示結果です。
On This Page