Tuesday, May 3, 2011

buggy android 2.3(nexus s) and nfcpy

NFC(near field communication) is a short-range wireless technology, operating only within a few centimeters. If two NFC-enabled devices are brought close together, literally touched, NFC allows for context sensitive actions; a digital photo camera may automatically transfer the current image to a photo frame without further user interaction. NFC tags can be used to store data such as a Wi-Fi network configuration for provisioning new wireless clients or to 'tag' physical objects. Tags do not require batteries as power comes wireless from the reader.
'nfcpy' is a python module to read/write NFC tags or communicate with another NFC device.
Android 2.3 has LLCP and could send data to another phone but do not work immediately  with 'nfcpy'.'nfcpy' released following procedure to bypass this-
Turned out that the LLCP stack on the Nexus S is still a little buggy, it doesn't support aggregation of PDUs (i.e. can't disaggregate) and if it becomes the NFC-DEP Target looses the first PDU if that comes within the first 100 ms after LLCP link activation. Until that gets fixed, an nfcpy user code needs to delay 100 ms if it has become Initiator and must set the new configuration option "send-agf" as false. For the llcp-test-client and server the command line flag "--quirks=android" will do the trick.