2024-08-27 12:47 AM
Hello STMicroelectronics Community
I am facing issues in configuration of ST25R100 chip with STM32C031C6T6 microcontroller in STM#@cube IDE. I am using default configuration settings but still facing trouble in initialization.
Can anyone in here who is helping me in configuration of ST25R100 chip with STM32C031C6T6 microcontroller or any other stm32 microcontrollers.@stm32
Thanks,
Hitesh Pandey
2024-08-27 01:17 AM - edited 2024-08-27 01:18 AM
Hi Hitesh,
Do you use the X-NUCLEO-NFC09A1 board or a custom board based on ST25R100?
Do you use the X-CUBE-NFC9 expansion package and has your application be generated through STM32CubeMX (stand alone application or embedded inside STM32CubeIDE)?
Is the reset PIN of the ST25R100 (D8 on the X-NUCLEO-NFC09A1 arduino connector) properly configured on PA9 as GPIO OUTPUT?
Is the Interrupt pin of the ST25R100 (A0 on the X-NUCLEO-NFC09A1 arduino connector) properly configured on PA0 as GPIO_EXTI0:
Make sure to have the following PA0 configuration:
And make sure to enable EXTI Line 0 interrupt
To further debug, you can enable ST25R_SELFTEST compilation switch, set a break point in st25r200Initialize and run this function step by step and send me information about where the failure is. Also feel free to share your ioc file.
Rgds
BT
2024-08-27 04:24 AM
Thanks for your response Brian,
I'm using a custom board with ST25R100.
yes, I'm the X-CUBE-NFC9 expansion package.
The RESET PIN of ST25R100 is connected to ground. As shown in datasheet of ST25R100 chip.
Interrupt pin of the ST25R100 is properly configured as above.
but during debug time, code is stuck in "platformErrorHandle();" function. I have attached a snippet bellow:
& also i have attached .ioc file here.
2024-08-27 04:44 AM
Hi Hitesh,
the SPI configuration is incorrect. See Datasheet §5.8.2 "The ST25R100 has a standard serial peripheral interface with clock polarity of 0, a clock phase of 1"
The proper configuration should be:
When reading the identity register 3Fh, the returned value has a wrong value. This causes st25r200CheckChipID() to return an error.
Rgds
BT
2024-08-29 01:59 AM
2024-08-29 02:02 AM - edited 2024-08-29 05:00 AM
Hi Hitesh,
I believe there no response on SPI. This can be due to different issues:
Can you connect a logic analyzer on the the SPI (CLK, MISO, MOSI and CS) + IRQ_ST25R100 and send me the trace?
The title of your post refers to STM32C031C6T6 whereas an STM32F103 is used in the ioc file. Do you have 2 different hardwares or do you have a kind of prototype based on an STM32F103+X-NUCLEO-NFC09A1?
Rgds
BT
2024-09-03 03:18 AM - edited 2024-09-03 04:27 AM
Hi Brian,
I have 2 different hardwires based on STM32C031C6T6 & STM32F103 with ST25R100 NFC reader IC.
I have traced my complete hardware. all the pins are connected & working properly. could you please let me know what will be the correct chip ID. I have attached here a snippet of chip IDs:
Currently I am troubleshooting the problem. I'll be updated you.
regards,
Hitesh Pandey
2024-09-03 05:29 AM
Hi Hitesh,
good to see that the BSS issue seems to be solved on your side. The snippet of the Chip ID is strange. Register 0x3F (IC Identity) is a single byte register. I am not sure to understand the printing (it seems to be an erroneous printf parameter). IC Identity binary value is 10101xxx. See §5.13.64 in ST25R100 Datasheet.
Rgds
BT
2024-09-05 01:53 AM
Hi Brian,
All these IC Identity values are in ASCII values. I have put length 20 byte length so that it is showing a strange value.
For single byte, IC Identity value is the first 2 digit of ST25R200_REG_IC_ID in the snippet.
I have also a doubt in RFID TAG. Can I use RFID TAG or there is any specific RFID TAG for ST25R100 Reader?
Regards,
Hitesh Pandey
2024-09-05 02:17 AM
Hi,
I guess the SPI communication is still not operational as having 00h of FFh for the IC register is not correct: can you connect a logic analyzer on SPI(CLK, MISO, MOSI and CS) + IRQ_ST25R100 and send me the trace?
Regarding the tag, ST25R100 supports:
Rgds
BT