リセットボタンを押す → デバイスの切り離し
→ ブートプログラム起動 → ブート側のCOM認識 → ユーザープログラム(キーボード)起動
ユーザープログラムが起動(今回の場合はキーボードとして認識)すると、COMポートは消えてしまうので、その間の絶妙なタイミングで書き込みを実行しないといけない。→ ブートプログラム起動 → ブート側のCOM認識 → ユーザープログラム(キーボード)起動
仕方ないので、COMを監視するアプリを組んで、書き込みタイミングを自動化することにした。
write 実行 → リセットボタン → (アプリ:Da Vinci 認識待ち → 書き込み)
失敗も多いが、無いよりマシ(たぶん)。どうしても、デバイス認識出来ない場合は、一度USBから抜いた後、差し直して再チャレンジ。M$のデバイスドライバがゴミなのか、USBの接続先を変える度に、ポートNoも変わっていくし、なんなんだ、このウンコ仕様。