NFCとISO15693
@TouchRLさんのご厚意でお借りしているRL-700Sだが、印字したRFIDラベルはNexus S等のNFC機能を使ったAndroidスマートフォンからアクセスできる。
AndroidのNFC機能は様々なVICC(※1)で共通に使うことを目的としたNDEF(※2)と、RFIDの規格に仕様を合わせたNfcTagの両方で通信することができる。
NDEF
デバイスに依存しないが、機能はNDEFの仕様に制限される。デバイスのコマンドを覚える必要は無い。
(例:Mifare、ISO14443、ISO15693等はNDEFでアクセス可能)
NFCTag(NFC-A、-B、-F、-V等)
デバイスに依存するが、機能は制限されずデバイスにフルにアクセスできる。ただしデバイスのコマンドの面倒は自分で見る必要がある。
(例:FeliCa、FeliCaLite。また、NDEFでアクセスできるデバイスはNfcTagとしてもアクセスできる)
このうち、RL-700Sで印字したRFIDラベルは規格としてはISO15693に準拠したものであり、NDEFでアクセスできるが、NFC-Vとしてアクセスすることもできる。
Android Frameworkにおいても抽象化が進んでいるのはNDEFであり、メッセージの交換だけであればこれを使うのがベターだが、それでもRFIDタグが持つ全ての機能にアクセスするにはNDEFで足りないケースがあり、その場合にはISO15693に準拠したコマンドをNFC-VタイプのNfcTagクラスから送受信する必要が出てくる。
今回はNDEFを使わずに敢えてISO15693のコマンドを使用してみようと考えている。それにはまず仕様からだ。
ISO/IEC 15693 - Wikipedia, the free encyclopedia
※1 VICC:Vicinity integrated circuit card
※2 NDEF:NFC Data Exchange Format