2021-08-18 03:12 AM
Using a Raspberry Pi, I have been able to successfully connect to and read tags from NUCLEO-NFC05A1, NUCLEO-NFC06A1, and ST25R3916-DISCO. However, I am unable to get ST25R3911B-DISCO to work using the ST25R3911B Linux drivers.
For some reason the Raspberry Pi will not boot up when V_RF is connected to 5V. If I disconnect this, the PI will boot up but I will be unable to find the board via SPI (ERR_HW_MISMATCH during !st25r3911CheckChipID( NULL )). This is expected because V_RF is not connected, but it needs to be. I tried supplying external power to V_RF, but that did not solve my problem. I have bought multiple different ST25R3911B-DISCO boards and connected to multiple different Raspberry Pis, with the same issue.
Here's how I'm connecting the two boards:
Pi 5V -> V_RF
Pi GRD -> GRD
Pi 3v3 -> 3v3
Pi CE0 -> /SS
Pi SCLK -> SCLK
Pi MOSI -> MOSI
Pi MISO -> MISO
PI CE1 -> IRQ
This wiring has worked flawlessly with NUCLEO-NFC05A1, NUCLEO-NFC06A1, and ST25R3916-DISCO. Is ST25R3911B-DISCO simply not compatible with Raspberry Pi? Does V_RF have to be connected differently?
Thanks!
2021-08-18 04:41 AM
Hi UTand.1,
ST25R3911B-DISCO is different to the other demos in that it is having its own MCU. By simply connecting it to V_RF to 5V I expect the STM32L4 to start up and perform its own initialization of ST25R3911B.
So first step should be silencing the STM32L4: Unmount R218-R222 to disconnect from ST25R3911B. Optionally you could also put it into RESET by shorting S201.
Still not optimal in this solution is the 3V3 on the board being connected to the 3V3 coming from the Pi. You may experience some unwanted cross-currents. Ideally you would disable U102 - LD39050PU33R. But I suspect that you are doing this just for some experiments where you maybe don't care about such.
Best Regards, Ulysses
2021-08-18 03:44 PM
Hi Ulysses,
Thanks for the help! Unmounting R218-R222 fixed my issues. I had to still use an external power source to supply 5V to V_RF, but I was able to detect tags. The Pi will still not boot up if connected to V_RF from 5V - I imagine it has something to do with too much current draw? However, I then decided to switch to Pi 3v3 for V_RF and that has worked without needing external power. I'm not sure why that works but this is good enough for my prototype!
In case someone else faces the same issue here's my updated connections that work:
[Unmount R218-R222]
Pi 3v3 -> V_RF
Pi GRD -> GRD
Pi 3v3 -> 3v3
Pi CE0 -> /SS
Pi SCLK -> SCLK
Pi MOSI -> MOSI
Pi MISO -> MISO
PI CE1 -> IRQ
2021-08-18 11:37 PM
Hi,
thanks for the feedback. I don't have a sound hypothesis why the Pi is not booting up... After POR of ST25R3911B the oscillator and field are disabled and there shouldn't be a big current draw. Furthermore it is working when using X-NUCLEO-NFC05A1. So it seems like specifics of the ST25R3911B-DISCO board - maybe related to the LDO there (wild guess)??
But glad to hear it is working now for you.
BR, Ulysses