2012/07/14

[nfc]B (2)

健康診断の前日は、昼が貧弱、夜はバグがなかなか取れずに食事限界時間を過ぎたのでさらに貧弱。
貧弱貧弱ゥ。。。という声が聞こえてくるくらいで、ひどく機嫌が悪い。

ストレス発散のため、更新しておこう。

(なんで3連休の初日に健康診断なんて入れてしまったんだ。。。)


PN533のドキュメントを見ながら、PaSoRiを動かすことにした。
SDK for NFC Starter Kitには、ちゃんとNFC-Bのアクセスができるようになっている(はず)。

だけど、Windowsのソフトを組むような気力はないので、Cygwinからlibusbを使うことにした。
した、というか、そういう環境がすぐにあったというだけだ。

 

カード検索は、InListPassiveTargetを使う。
4Aコマンドだ(数字で覚えておいた方が、ログを見るときは楽)。
パラメータは、0x03らしい(PN533ドキュメントより)。
AFIは、0x00でとりあえずやってみた。

[R]50
[R]43
[R]00
[R]89
[R]04
[R]00
[R]00
[R]00
[R]00
[R]b3
[R]81
[R]c1
[R]01
[R]01

PN533ドキュメントによると、赤文字はATQB、青文字はATTRIBになる。


ATQBをさらにわける。
ここからは、NFC Forumを参照。

 

[R]50
[R]43
[R]00
[R]89
[R]04
[R]00
[R]00
[R]00
[R]00
[R]b3
[R]81
[R]c1

青文字が、NFCID0。4byte固定。
これは毎回変わる。試していないが、搬送波を出している間は同じ値になるはず。

赤文字が、Application Data。

[R]00  AFI
[R]00  CRC_B(AID)[0]
[R]00  CRC_B(AID)[1]
[R]00  Number of application

全部0x00なので、よくわからんな。

 

茶文字が、Protocol Info。

[R]b3  Bit_Rate_Capability
[R]81  [FSCI:4][Protocol_Type:4]
[R]c1  [FWI:4][ADC:2][FO:2]

読み取れるのは、

  • Listen ModeとPoll Modeは同じbit rate divisor
    • 2と4をサポート
  • 最大フレームサイズ:256bytes
  • NFC Forum Device in Listen Mode compliant
  • TR2 : 1792/fc
  • Frame Wainitng Time Integer : 4
  • Advanced protocol features not supported
  • Application is proprietary
  • NAD not supported
  • DID supported

よくわからんし、あまり関係ないような気がするので間違ってるかもね。


ATTRIB_RESがよくわからん。

最初のがLengthで、その次がLength分だけデータがひっついてくるらしい。
スロットについてかな、という気もするが、PN533の例でもこんな値だから、まあいいや。

 

さて、あとは中身を読むだけだ。
仕様もある、とまどろみさんがいっているから、ちゃんとやれば動きそうだ。

 

あー、おなかすいた。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。