ESP32-H2-MINI-1
Bluetoothやthread通信に対応しています(Wifiは非対応)
Wifiはできないので逆にthreadでMatter通信していることがわかるモジュールです。
使用した回路
今回このような回路を使用しましたがESP32-H2-DevKitM-1を参考にした方がいいと思います。
ESP32-H2-DevKitM-1:
環境構築
公式ドキュメントに沿って個人的に悩んだ部分の補足を追記していきます
2.1.1.1 Windows 10
Windows10上でセットアップを行ったのでwslからUSBdeviceへアクセスできるようにします
Ubuntuは22.04が良いです
windowsPowershellにてwslのアップデート
wsl --upgrade
あとは:
2.2 ESP Matter Setup
apt-getの取得元サーバーを日本のいい感じのサーバーする
sudo sed -i.bak -r 's@http://(jp\.)?archive\.ubuntu\.com/ubuntu/?@https://ftp.udx.icscoe.jp/Linux/ubuntu/@g' /etc/apt/sources.list
変更しない場合下記commandで失敗するかもしれない
sudo apt-get install git gcc g++ pkg-config libssl-dev libdbus-1-dev \
libglib2.0-dev libavahi-client-dev ninja-build python3-venv python3-dev \
python3-pip unzip libgirepository1.0-dev libcairo2-dev libreadline-dev
2.2.2 ESP Matter Component (experimental)
esp-matterの階層で実行
idf.py add-dependency "espressif/esp_matter^0.0.2"
idf_component.yml
のインデントスペースが2スペースでなければだめと怒られるので書き換える
2.2.4 Flashing the Firmware
esp-matter/exsample/どれか
の階層で実行
今回はesp-matter/examples/light
idf.py set-target esp32h2
cmakeが3.22だと↑のコマンドがうまくいかなかった
3.16をインストールする。
idf.py flash monitor
で書き込み実行します。
threadボーダールーターが必要となるのでGoogle Nest Hub
を使用します。
ESP32-H2-DevKitM-1におけるGPIOの設定
sdkconfig.defaults.esp32h2ファイルを見るとDEVKIT向けにLEDとボタンが設定されているのでLEDとスイッチをファイルにあわせて配線すると動きます。
# ESP32-H2-DevKitM-1 Settings
# Buttons
CONFIG_BSP_BUTTONS_NUM=1
CONFIG_BSP_BUTTON_1_TYPE_GPIO=y
CONFIG_BSP_BUTTON_1_GPIO=9
CONFIG_BSP_BUTTON_1_LEVEL=0
# LEDs
CONFIG_BSP_LEDS_NUM=1
CONFIG_BSP_LED_TYPE_RGB=y
CONFIG_BSP_LED_RGB_GPIO=8
CONFIG_BSP_LED_RGB_BACKEND_RMT=y
プロジェクトを立ち上げる
元々いろいろなサンプルプロジェクトがあるので自分にあうものを選択する
一からプロジェクト立ち上げる場合下記チュートリアルが参考になります。
esp-matterを使用して開発(ほぼしてない)しましたが、直接MatterのSDKを使用して開発する事も可能です。
今回のようにほぼ何も変更する予定がないのであればESP-ZeroCodeで十分です。