これも以前にやったものとほぼ同じだが、今回は自作基板で行う
e-tipsmemo.hatenablog.com
また、ESPhomeのバージョンが更新されたことで、Wifiのパスワードなどが別のyamlファイルに記述されるようになっている(前から?)
また、シリアルモニタをつなげていることで、Wifiが接続されていることも確認できた。
プログラム
点滅させたいLEDの宣言については、
Blink. How? - #5 by stevemann - ESPHome - Home Assistant Community
ここの回答通り。
outputにはtoggleプロパティがない様子。
esphome: name: esp32-wifi friendly_name: ESP32_WIFI esp32: board: esp32dev framework: type: esp-idf # Enable logging logger: # Enable Home Assistant API api: encryption: key: "xxxxxxx" ota: - platform: esphome password: "xxxxxx" wifi: ssid: !secret wifi_ssid password: !secret wifi_password # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Esp32-Wifi Fallback Hotspot" password: "xxxxxx" captive_portal: switch: - platform: gpio pin: GPIO2 id: gpio2_led interval: - interval: 500ms then: - switch.toggle: gpio2_led
本体プログラム(ESP32_WIFI)とは別に右上のsecretsのところからwifiのSSIDとパスワードを記載する。

ビルドと書き込み

右上の「Install」の後、プログラム手法を選んで、(今回はManual download)

~~~.binがダウンロードされる。
あとはESP flasherなどで、シリアルポート経由でダウンロードする。

コンソールを開きっぱなしにしていると、WIFIの接続完了や、
switchのtoggleのログが流れてくる

またルーターの管理画面などを見てみると(ASUSのアクセスポイントの管理画面)
Androidとは別の何かしらの機器がつながっており

このマックアドレスは、Espressif Inc.のものだとわかる。

その他
以前は知らなかったが、
ESPhomeのyamlに直接C++コードを書くこともできる様子。
Lambda Magic - ESPHome - Smart Home Made Simple
簡単なことから複雑なことまでできるようになっているが
あまりにも凝りすぎるとよくわからないコードになりそう。


