Interface誌のRust特集で、espのstdをやっていくぜ!となったが悪戦苦闘している。
まずドライバを入れてWindows側でデバイスを認識するところからつまづいた。
Establish Serial Connection with ESP32 - ESP32 - — ESP-IDF Programming Guide latest documentation
このへんでドライバを入れていたが、デバイスを接続してデバイスマネージャーをみてもCOM portsが生えない。
ひたすら詰まってTwitterで愚痴っていたらnakabayashi先生に助けてもらった。
M5Stamp C3U Mate なら、ボタン押しながら USB 挿してみるのは試しています?(初回書き込みするまでこの儀式が必要です)
— nakabayashi: &'static EmbeddedRustacean (@tnakabayashi) 2023年4月4日
というわけでなんとかWindows側で認識するところまでいき、WSL側にattachするところまではMSの公式記事の通りにやればいった。
Connect USB devices | Microsoft Learn
あとはexampleを動かすだけだと思ったら、今度はここで詰まった。
interface202305-c3-std-rust/hello_c3$ cargo espflash --release --monitor New version of cargo-espflash is available: v2.0.0-rc.3 ✔ Use serial port '/dev/ttyACM0'? · yes Serial port: /dev/ttyACM0 Connecting... Error: espflash::serial_error × Failed to open serial port /dev/ttyACM0 ├─▶ Error while connecting to device ├─▶ IO error while using serial port: Permission denied ╰─▶ Permission denied
WSL側のカーネルのビルドが必要か?と思ったが、configですでに有効になっているはず。
$ zcat /proc/config.gz | grep CP210 CONFIG_USB_SERIAL_CP210X=y
てことはたんに権限まわりっぽいけどよくわからん。