AtomS3U は、USB メモリ形状の ESP32-S3 多機能開発ボードです。Espressif ESP32-S3 メインコントローラーと、240 MHz で動作するデュアルコア Xtensa LX7 プロセッサーを搭載し、Wi-Fi に対応しています。インターフェースは、OTG 対応 USB Type-A ポート、1 つの Grove コネクタ、4 つの GPIO を含む 6 ピン 2.54mm メスヘッダーを備えています。周辺機器として、PDM マイク、赤外線送信器、プログラム可能な RGB LED を搭載しています。本製品は、IoT のヒューマンマシンインタラクション、音声入力 / 認識 (STT)、I/O 制御などに適しています。本チュートリアルでは、ESPHome を使用して AtomS3U を Home Assistant に統合する方法を説明します。
ESPHome 2026.3.x を基準に作成されています。コンパイルエラーが発生した場合は、このバージョンに切り替えて確認してください。)
このセクションでは、二次開発、機能変更、機能追加を行うために、yaml 設定ファイルを基にプロジェクトを再コンパイルする方法を説明します。
NEW DEVICE ボタンをクリックして空の設定ファイルを作成します。
CONTINUE をクリックします。
Empty Configuration を選択します。
EDIT をクリックします。
api:
encryption:
key: "Your_Encryption_Key" encryption で生成できます。または secrets に定義したSSIDとパスワードを使用します:
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password 未指定の場合は improv_serial、BLE、APを使用してネットワーク設定できます。
SAVE と INSTALL を順にクリックし、Manual download を選択します。
この時点でコードが生成され、プロジェクトがコンパイルされます。
Factory format を選択してファームウェアをダウンロードします。
ESPHome Builder の Manual download から Factory format ファームウェアをダウンロード済みであることを確認します。
ブラウザで ESPHome Web を開きます。
AtomS3U をコンピューターに接続し、RESET ボタンを長押ししてダウンロードモードに入り、CONNECT をクリックして該当するデバイスポートを選択します。
INSTALL をクリックしてダウンロードしたファームウェアを選択し、再度 INSTALL をクリックしてデバイスに書き込みます。
Settings -> Devices & services にデバイスが表示されるはずです。
Add をクリックしてAtomS3UをHome Assistantに統合します。API Encryption Keyを設定した場合は、統合時にこのキーを入力する必要がある場合があります。AtomS3Uのダッシュボード例:
このセクションでは、設定ファイルで使用されている周辺機器について説明します。
主にI2CとI2Sのピンです:
i2c:
sda: GPIO2
scl: GPIO1
i2s_audio:
i2s_lrclk_pin: GPIO39 赤外線 LEDはGPIO12に接続されています:
remote_transmitter:
pin: GPIO12
carrier_duty_percent: 50%
non_blocking: true
rmt_symbols: 48 IR Remote Climateコンポーネントを追加してエアコン制御を実現できます。例:
# Example IR Remote Climate
climate:
- platform: coolix
name: "Default AC"
visual:
min_temperature: 18
max_temperature: 30
temperature_step: 1 RGB LEDがGPIO35のWS2812 経由で接続されています:
light:
- platform: esp32_rmt_led_strip
rgb_order: GRB
pin: GPIO35
num_leds: 1
chipset: ws2812
name: "Light"
rmt_symbols: 48 デバイスにはPDMマイクが搭載されています:
microphone:
- platform: i2s_audio
id: echo_microphone
i2s_din_pin: GPIO38
adc_type: external
pdm: true