お手軽USB PDスニッファ作成

USB PDの通信をキャプチャできるUSB PDスニッファを5000円/数時間程度でお手軽に作成する手順をまとめました。

USB PDスニッファとは?
USB PDの通信をキャプチャする治具です。キャプチャした信号をデコードして通信内容を表示するソフトと併用します。

 

既存のUSB PDスニッファ
Google製のオープンソースのスニッファ Twinkieの回路図やファームウェアが公開されています。また、市販品のUSB PDスニッファとして下記2種類のものがありますが、どちらも2万円以上と趣味で買うには高価です。

 

作成するUSB PDスニッファ
今回作成するUSB PDスニッファはTwinkieの設計情報をベースにマイコンの評価ボードを使用、Vbusラインの電圧・電流測定回路を省略することで部品代5000円以下、作成工数数時間程度とお手軽なものです。USB Type-CのCCラインの信号を取り出し・接続して使用し、Twinkieと同様のソフト・操作手順で使用することができます。

 

必要なもの
部品

RS, Chip1Stopなど電子部品通販で扱っており個人でも1個単位で購入できます。

  • 解析用PCとスニッファ接続用USB A-miniBケーブル(数百円程度)
  • ジャンパ(メス-メス)、クリップ類(1000円程度)
  • USB Type-Cケーブル or 信号取り出し用中継基板(1500円程度)

→中継基板を使用して作成した方がケーブルの評価もできるなど融通が利きますが入手性がよくありません。今回はケーブルを剥いて信号を取り出す方法でまとめています。

道具

  • PC(OSは後述のST-Linkが対応するWindows XP/7/10)
  • 工具類

 

手順概要

  1. 必要なソフトの入手
  2. マイコンボードにファームウェア書き込み
  3. マイコンボードとUSB Type-C CCラインの接続

 

必要なソフトの入手

  • Twinkie用ファームウェアイメージ(リンク先ページ内最下部twinkie_***.binファイル)
  • ST-Micro製マイコン書き込み用ソフトSTM32 ST-LINK utility

 

ファームウェア書き込み
1.ダウンロードしたST-LINK utilityをインストール(ST-LINK用ドライバもインストールされる)
2.STM32F072B-DISCOのUSB ST-LINK側をPCに接続

3.ST-LINK utility立ち上げ
4.Target→SettingsでModeを”Connect Under Reset”に設定
5.Target→Connect
6.File→Open file…でダウンロードしたTwinkieファームウェアイメージを読み込み
7.Target→Program & Verify…で設定を変えずにそのままStartで書き込みを開始、ベリファイ
8.Vrification…OKメッセージが表示されていれば正常に書き込み完了

9.USB ST-LINK側に接続したUSB ケーブルを抜いた後10秒程度待ってから今度はUSB USER側に接続

10.WindowsのデバイスマネージャーでUSB-PD Snifferの検出確認(Windows用ドライバがないのでWindowsで使うことはできませんが)

11.PCから取り外して書き込み・確認完了

 

ボードとUSB Type-C CCラインの接続

1.USB Type-CケーブルからCC信号を取り出す場合

USB Type-Cケーブルのシールドや被覆を剥き、ケーブルのCCラインとマイコンボードのPA1、ケーブルのGNDとマイコンボードGNDを接続します。

一例としてCHOETECH製のUSB Type-C(USB2.0仕様)のものでは黄色がCC、黒色がGNDでした。

 

2.信号取り出し用中継基板からCC信号を取り出す場合

中継基板のCC1ラインとマイコンボードのPA1、中継基板のCC2ラインとマイコンボードのPA3、中継基板のGNDとマイコンボードGNDを接続します。

 

信号のキャプチャ、解析手順は追々とまとめます。(Twinkieと同じ使い方になりますが…)

Leave a Reply

Your email address will not be published. Required fields are marked *