究極のUSB Type-Cスイッチをご紹介します:双方向性、コンピュータ制御、オープンソース

Codethinkでは、10年以上にわたって、多くのお客様のビルド、統合、テストパイプラインの改善に取り組んできました。

その一環として、自動車のエンターテイメントシステムなど、複雑な組み込みシステムのテストの自動化を進めています。そんなシステムのために、携帯電話やストレージデバイスの抜き差しをシミュレートできるUSBスイッチを探していました。お客様のために何百個も買うことを勧められるほど手頃な価格のものが市販されていなかったため自分たちで作ることにしました。

(画像提供:Codethink)

スイッチについて

簡単に言いますと、USB Cデバイスの抜き差しや有線接続の切り替えをプログラマブルに行えるデバイスです。スイッチは、フル機能のUSB Cポートを搭載するように設計されています。つまり、充電、高速、超高速データ転送など、一般的なタイプCポートの機能や性能をすべて備えています。双方向機能を持つことで、ユーザーはどちらのポートをホストに接続するかを選択でき、反対側の有効なポートは自動的に周辺機器に接続するように設定されます。これにより、安全性と操作性を確保しています。

使用用途について

このスイッチは、以下のように誰でも簡単に使えるプラグアンドプレイソリューションです。

  1. 複数のホストや周辺機器間の接続を簡素化します。
  2. 1台のホストに接続するさまざまな種類の周辺機器を一度に1台ずつ必要なテストを自動化することができます。スイッチと一緒にハブを使うことで、複数の周辺機器と1台のホストとの接続を切り替えることもできます。

(画像提供:Codethink)

制御方法について

スイッチをUSB Cケーブルでラップトップに接続するだけです。スイッチのCDCシリアルポートにお好みのツールで接続し、 制御コマンド のいずれかをシリアルポートにそのまま送ってスイッチングを開始します。

オープンソースで使用できるプロジェクトの数

ハードウェアは完全なオープンソースで、KiCAD 6を使って設計されています。

現在公開されているファームウェアは無料で使用できますが、STのツールチェーンとライブラリを使用しているため、(まだ)フリーソフトウェアとは呼べないのです。ファームウェアを自由にライセンスできるようにするため、libopencm3への移植に取り組んでいます。

スイッチを安全に保護するために、3Dプリントで作製できるケースを設計しました。ケースのSTLファイルは、CC by SA 4のライセンスで提供されています。

(画像提供:Codethink)

自分用のスイッチを入手する方法

Codethinkでは、このスイッチをハードウェアやソフトウェアのテストルーチンに組み込むお手伝いをいたしますので、さらに詳しいことをお知りになりたい場合は、営業担当までお問い合わせください。

1台を自分で作る場合は、数回クリックするだけです。以下の簡単なステップを踏むだけです。

  • ハードウェア:
    1. ハードウェアリポジトリをクローンします。
    2. 製作フォルダからガーバー、BOM、配置ファイルを任意のボードハウスのWebサイトにアップロードします。
    3. お好きな数だけご注文します。

USBスイッチのハードウェアが揃ったら、次はファームウェアのフラッシュです。

  • ファームウェア:
    1. ファームウェアリポジトリ をクローンし、READMEに記載されているビルド手順に従い、ローカルマシンでファームウェアをビルドしてください。
    2. SWDポートにプログラマ(ST-LINK)を接続し、ST CUBEプログラマを使用してフラッシュを行います。

ケースファイルは、ハードウェアリポジトリのcaseフォルダの下にあります。提供されたSTLを使用して3Dプリントしたり、オンラインで注文することもできます。

著者について

Codethink provides software engineering and consultancy services to Electronic Companies, Technology Providers, and Service Infrastructure Operators throughout Europe, Asia, and the USA, working across various industries and verticals. Focusing on system-level engineering, they develop and maintain system-level software infrastructure. Traditionally specializing in Linux, Embedded systems, and Open Source, they deliver on extremely difficult and technically complex projects and have expertise from critical embedded devices to cloud-scale infrastructure.

More posts by Codethink
 TechForum

Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.

Visit TechForum