重要(プロプライエタリ(独占的)プロトコルの解析における重要な警告)
概要と注意
TODO
USB通信RC-S320とはUSB経由で通信することになります。 初期化idVendor : 0x054c , idProduct : 0x01bb のデバイスを探し、コンフィギュレーション番号1でconfigします。 エンドポイントは0x81。 コマンドのやりとりコマンドをVENDOR_INTERFACEで転送。(BSDのusb.hではUT_VENDOR) コマンドパケットの構造パケットの構造は送受信ともに共通。 ACK/NACK
コマンドパケットやレスポンスパケットに対するACKやNACKです。双方で返す必要が有りますが、PaSoRiはPC側からのACKを待ちません。 パケットの構成方法00 00 FF <LEN> <LMOD> <DATA>* <MOD> 00
DATAは任意長で、PaSoRiコマンドが入る。 コマンドサマリコマンドに対するレスポンスはコマンドコード+1になっています。これはPaSoRiコマンドとFeliCaコマンドで共通。 PaSoRi2コマンドPaSoRi2コマンドはRC-S320に固有のコマンドの事を指します。RC-S310(旧PaSoRi)とは異なるようです。 コマンドはパケットのDATA部に入ります。1パケットあたり1つのコマンドまたはレスポンスが入ります。
$52 : ???(自己診断)
↓
$54 : ???(PaSoRi読み取り時初期化 - リセット?)
$58 : ファームウェアバージョンの取得?
↓
$5a : ???(PaSoRi読み取り時初期化)80 00
$5c : FeliCaプロトコルパススルーFeliCaと通信します。
$62 : ???(接続時初期化)01 82 00 88 (00 08 -- PaSoRi接続直後 00 8c -- カード無しでポーリングした後) 02 80 81 00 cc 88 (00 dc 08 -- PaSoRi接続直後 00 cc 8c -- カード無しでポーリングした後) 22 80 cc 81 88 00 02 80 81 00 cc 88 02 82 87 00 88 01 21 25 58 00 $7f : ??? (不正なコマンド)※ レスポンス コマンドチェックサムが正しいがコマンドフォーマットが異常な場合、レスポンスとして返却される。 FeliCaコマンドFeliCaプロトコルパススルー(コマンド:$5c)によってやりとりされるコマンドです。 詳細についてはJIS:X6319-4を参照のこと。以下はSONYによる名称でJIS規格とは異なる。 (FeliCa/プロトコルに移動予定) $00 : Polling$02 : Request Service$04 : Request Response$06 : Read Without Encryption$08 : Write Without Encryption$0a : (Search Service Code - サービスコードの要求)?
↓
$0c : (Request System Code - システムコードリストの要求)?
↓
$b0 : (Push - FeliCaツールバー : メッセージ送信)
パケット例
初期化パケット
POLLING($00→$01)
Read Without Encryption($06→$07)(send) send:00 00 FF 12 EE 5C 11 06 01 01 05 01 CB 01 F3 1C 01 0F 09 01 80 00 00 10 00 (ACK?) recv:00 00 FF 00 FF 00 (recv) recv:00 00 FF 1E E2 5D 1D 07 01 01 05 01 CB 01 F3 1C 00 00 01 16 01 00 02 0A 7D 03 11 03 0D 3C 00 00 00 7F 00 1C 00 [00] : 16 01 00020A7D 03-11 -> 03-0D 3C00 - 60 Yen 00007F00
型式指定
|