問題の現象
VSCodeとPlatformIOを利用してプログラムをSeeed XIAO RP2040に書き込もうとした時、以下のようなエラーが出て書込みが出来ないことがあります。
CURRENT: upload_protocol = picotool
Looking for upload port...
Auto-detected: /dev/ttyS0
Forcing reset using 1200bps open/close on port /dev/ttyS0
Uploading .pio/build/seeed_xiao_rp2040/firmware.elf
rp2040load 1.0.1 - compiled with go1.15.8
.....................
*** [upload] Error 1
これはボードの方が書込み状態にうまく切り替えられなくて起こる現象のようです。
対処方法
* Switch Scienceのウェブページより引用
USBケーブルによりボードとPCが接続されている状態で、次の作業を行います。
- BOOTボタンを押した状態を維持する。
- RESETボタンを押す。
- RESETボタンを離す。
- BOOTボタンを離す。
もう一つの直し方は以下の手順です。
- USBケーブルをボードから外す。
- BOOTボタンを押した状態を維持する。
- USBケーブルでボードとPCを接続する。
- BOOTボタンを離す。
こうすることで、PCからはボードがUSBメモリのように認識されます。この状態で書込みを行うと正常に書込みが出来るようになり、以後も上記の操作なしに書込みが出来るように戻ります。