Grove NFC Serial not working


#1

I’ve plugged my brand new grove NFC transceiver (v1.1) on the GrovePi RPISERIAL and tried a simple example provided with libnfc. The PN532 was unreachable as shown on the attached screen capture.
Could you please provide a way to use this module with the GrovePi ?


#2

Hi rom,
We have not used this module before with the GrovePi so might have to try out a few things. Looks like Seeed does not have a lot of documentation about using this with the Raspberry Pi on the wiki http://www.seeedstudio.com/wiki/Grove_-_NFC, but it mentions that it used PN532 NFC controller which is also used by a similar adafruit modeule which has much better instructions on how to use it with linux here: https://learn.adafruit.com/adafruit-pn532-rfid-nfc/libnfc. Can you try out the instructions given here and let us know if that helps.

-Karan


#3

Hi Karan,
Thank you for your quick answer.
I followed the instructions from adafruit to test the PN532 with libnfc. Everything went as they describe but the final test : "ERROR: Unable to open NFC device."
This grove module can also be used over SPI and I2C with minor modifications to the PCB. May it be easier to try it over i2c ?


#4

Hi rom,
Even though the sensor supports I2C, I am not sure how it would work with linux. I think the first thing you should do is to check if the sensor is even working with the Pi. Take a fresh image without libnfc and use minicom to check the UART port ttyAMA0 to see if you can get raw data from the NFC shield and write back to it. If that is working, then you should move on to getting libNFC to work.

-Karan


#5

Well, i’ve tried with minicom and with a python script (screenshot below), but I get nothing and don’t understand why at this point.


#6

I wasn’t able to get anything from UART. It’s a fail for this grove module.
So I “configured” that *$@#thing to use it with i2c and… well… it still is really disappointing.
When I connect the module to i2c-1 or i2c-3 it gets detected at 0x12 and 0x13. If I connect the module to i2c-2, something only appeared at 0x12. But everything then disappears in every scenarii as you can see in the attached screenshot.


#7

Hey ROM,
Sorry for the frustrating experience with the NFC module. It seems a but weird that the module comes up on I2C1 but not on I2C2 and 3. Not really sure why that is happening. Does it do the same thing if you restart the Pi with the NFC module connected to Port2. Even with it working in I2C port 1, I think it would be too big of a task getting it to work on I2C with the Pi especially with great software available with UART. I don’t have the grove module with me but I have asked am loaning the Adafruit module from a friend to at-least try out and see if the software works. Can you just double check that the solder jumpers are soldered for UART: http://www.seeedstudio.com/wiki/Grove_-_NFC.

-Karan


#8

I have been able to interact with the module using i2c (I had to solder two additional jumpers). The nfc module is now detected at 0x24 (correct).
I enclose the python I used to test the module.


#9

Hi rom,
That sounds great. Are you working on a full library for it and does it support libnfc with I2C.

-Karan


#10

Hi
I had the same issue and i’ve identified the problem: the rpi serial grove connector does not work properly! There is only 2V on RX and TX :confused:
I have wired the NFC directly on the Raspberry Pi and now it works.
Jean


#11

Hey Jean,
How did you find out that there was only 2V on the Grove Serial port and which Serial port did you try.

-Karan


#12

Hi
Those 2 volts are actually not relevant…
After a quick look at the datasheet i saw that there is a level converter to protect RPISER grove connector so it is normal that there is not 5V or 3.3V on RX or TX pin.
I’ve made new tests this morning and when i plug the nfc grove on RPISER, i found 5V on nfc grove RX but only 2.7V on TX! With the nfc grove plugged on SERIAL grove connector i have 5V on both RX and TX.
Jean


#13

Hi
I have 2 differents grovepi, one v1.0 with the voltage problem and one v3.0 without this problem.
I have changed the grovepi to the v3.0 and i still have the problem with nfc on rpiser :frowning:
Jean


#14

Hey Jean,
Were you using a multimeter to measure the voltage. Do you have access to a logic analyzer or an oscilloscope to actually see what’s going on the Serial lines.

-Karan


#15

Hi Karan
That’s the next step…
I’ve tested few things :

  • RPISER to arduino uno => OK but sometimes i had weird messages with baudrate set to 115200
  • grove nfc with MAX232 level shifting => not working
    I suspect the grove nfc not to work properly whith level shifting. Maybe because PN532 is designed to be used by 3.3V systems…
    I’ll send you screenshots when i’ll have time to put the oscilloscope on serial lines.

Jean


#16

Hey Jean,
It would be really great if you could send the oscope pictures. Just want to double check that you are using this module: http://www.seeedstudio.com/depot/Grove-NFC-p-1804.html .

-Karan