I just wrote a bit of python code to talk to the Grove NFC tag module, which I guess might be of use to other people (and might want to go in the grovepi library somewhere?).
I only handled reading and writing the data, none of the other commands. It is slightly less efficient than it could be, in that it does everything as byte writes, rather than 4 bytes at a time, because of the limitations of the python smbus module, which doesn’t let you write full transactions (even getting it working this way is a bit of a hack using the smbus write_word message).
Anyway, the code is below, do with it what you want, it’s in the public domain as far as I’m concerned. Should be self explanatory:
import smbus import time NFC_ADDR = 0x53 bus=smbus.SMBus(1) def readNFCData(addr,length): bus.write_byte_data(NFC_ADDR,addr>>8,addr&0xff) result= for c in range(length): result.append(bus.read_byte(NFC_ADDR)) return result def writeNFCData(addr,data): for byte in data: bus.write_word_data(NFC_ADDR,addr>>8,(addr&0xff | (byte<<8))) time.sleep(0.01) addr+=1