cannot detect any tag on ST25R3916
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-11 9:17 AM
Hi,
I have made a custom design for reading/writing NTAG213 tags based on the X-NUCLEO-NFC06A1 board. I have adapted the firmware that works on this demo board (along with all the drivers related to the ST25R3916 and RFAL) into a STM32G030K8T6 microcontroller.
I have neither capacitive sensing nor AAT implemented in Hardware and I have also disabled these mechanisms in the Firmware according to this post.
The antenna design is very similar to the ST25R3916 Discovery Board (2 turns, 65mm x 85 mm). For the the antenna analysis I have measured its real parameters following the indications of the AN5276 Application Note:
This is LANT = 1.03 uH RSDC = 440m Ohms fres = 60.19 MHz Rp @ fres = 7.29 Kohms
Buy using the ST25R Antenna Matching Tool I get the following values for the custom board:
On the Firmware side the Initialization is successful (ERR_NONE)... but does not detect any tag during execution of the detection cycle routines.
I have checked the presence of any signal near the antenna by means of a small loop made with the oscilloscope probe. I see that the antenna is actually emitting at 13.56MHz every second.
Everything seems to be correct but why can't I detect any tag?
gaston
Solved! Go to Solution.
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-17 10:51 PM
Hi Gaston,
I think you can just implement your own function e.g. in your main.c:
void HAL_GPIO_EXTI_RisingCallback(uint16_t /*GPIO_Pin)
{
st25r3916Isr();
}
Because of the __weak used in stm32g0xx_hal_gpio.c your version of the function will be used as opposed to the default one.
Ulysses
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-15 3:12 AM
Hi Gaston,
can you already rule out that there is an issue in your ported software? Does it for example work with a cross-connected NFC6?
Regards, Ulysses
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-16 12:22 AM
Hello Gaston,
can you measure the voltage on the RFI pins using the direct command "Measure Amplitude" ?
Please execute the command with and without card in the field and post its result.
BR Travis
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-16 1:11 AM
Hi Ulysses,
The porting was done from the STM32L476RG-Nucleo project. I will perform another porting starting from the STM32L053R8-Nucleo, which is a M0 + cortex like the one in my custom design.
gaston
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-16 1:46 AM
Hi Travis,
I've measured the voltage after demoIni() initialization function.
err = st25r3916ReadRegister(0xD3U, &result);
In both cases (with and without a card) the result is zero.
I've reproduced the same reading in the NUCLEO-NFC06A1 project with the same result.
Am I performing the right procedure to measure the voltage on the RFI pins?
gaston
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-16 2:36 AM
Hi Gaston,
Please execute:
st25r3916MeasureAmplitude() or rfalChipMeasureAmplitude(). It will execute the D3 command , wait for the interrupt and retrieve the result from AD converter register.
Regards, Ulysses
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-16 2:39 AM
Hi Gaston,
My idea was mainly for not opening two construction sites at the same time: Port to new MCU and new reader HW. IMO no need to repeat porting, just do a cross-connection of your port to and NFC06 board to see your port is working properly (disconnect/disable the 3916 on your board).
Regards, Ulysses
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-16 3:14 AM
Thank you.
ADC 8-bit result in the NUCLEO-NFC06A1 board (4 turns, 30x45 mm antenna):
153 (without tag)
134 (with tag)
ADC 8-bit result in the custom board (2 turns, 65x85 mm antenna):
109 (without tag)
108 (with tag)
gaston
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-16 3:53 AM
Hello Gaston,
153 * 0.01306 = 1.998V
109 * 0.01306 = 1.424V
Both voltages should be sufficient to read tags. It might be that there is no analog problem. Could you do SPI traces and share them with us?
BR Travis
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-12-17 4:51 AM
