ただしUSB接続モードになると、FlashAirの全機能が動作しません。また、Wi-Fiモードにすると、USB接続モードには切り替わらなくなります。ただし、DesktopStationSoftwareから操作すると自動でUSB接続モードに変更されます。
どのように実現するかというと、結構簡単なことをやっています。
■動作の仕組み
・電源ONまたはリセットされてから5秒以内に、USB経由で信号が来ると、USB接続モードに変更されます。
・電源ONまたはリセットされてから5秒以内に、何も起きないと、Wi-Fiモードになります。ただし、FlashAirが無いときはUSB接続モードで待機します。
→5秒以内は、FlashAirとUSB経由の命令の両方を受信可能にしています。DCCの出力が動き出すと、USBシリアルとFlashAirとのSPI通信を同時に動かすことが難しい(マイコンのRAM&演算能力不足)のです。
・DesktopStationSoftwareは、接続するときにDTR機能を使って強制的にDSair2にリセットを掛けます。よって、DSair2がWi-Fiモードで動いていようがリセットしてしまうので、リセット後5秒以内にUSB経由でPing信号を送り、強制的にUSB接続モードになります。