PSoC 4200 Prototyping Kit (20)

ブートローダ経由で Prototyping Kit へのフラッシュ書き込みを行なうためにホスト PC 側で実行するアプリケーションのことを、Cypress では「Bootloader Host アプリケーション」と呼んでいます。
PSoC Creator には I2C / SPI / UART / USB HID それぞれの接続に対応した多機能版の Bootloader Host が付属しています。
特定の接続方法にのみ対応する簡易版になりますが、カスタマイズ可能な Bootloader Host アプリケーションのサンプル・コードが接続の種類別に複数のアプリケーション・ノート (および付属アーカイブ・ファイル) として提供されています。
たとえば、UART Bootloader Host については

AN68272 — PSoC®3, PSoC 4, and PSoC 5LP UART Bootloader

があります。
ここしばらくの間、このカスタマイズ可能な点を利用して、「オート・リセット機能」、つまり手動でターゲット・デバイスブートローダ・モードに投入しなくても、シリアル・ポートの DTR / RTS 信号を利用してホスト・アプリケーションから自動でブートローダ・モードに移行させる機能を追加する作業をしていました。
ところが、ハードウェア・シリアル・ポート (COM1) 経由では問題がないのに、Prototyping Kit 付属の USB-シリアル・チップの CY7C65211 経由ではうまく動いたり動かなかったり、確実性が乏しくて悩んでいました。
普通は付属の CY7C65211 をそのまま使いますから、CY7C65211 でうまく動かないと実用性がありません。
いろいろググっていたら、Cypress のフォーラムに下のようなエントリを見つけ、

http://japan.cypress.com/?app=forum&id=167&rID=110180&source=shop

アドバイスされている解決法

Binding a USB-Serial Device to a Microsoft® CDC Driver — KBA91366

にしたがって、CDC ドライバを Cypress 製から Microsoft 製に差し替えると、うまく動くようになりました。
まだ 100 % 確実に動作する段階にはないのですが、おそらく近日中に公開できると思います。