2026-03-10 2:57 AM
Just a heads-up, this post was written by AI. I used it to document a process of debugging this board, and create a summary for a forum post.
Platform: ST25R3911B, RFAL library, ISO 14443A
Config: Single-ended mode, 0.3m 50Ω coaxial cable, remote antenna PCB
Supply: 5V on VDD and VIO
Read range: ~10mm (expected 40-80mm for antenna size)
I'm using an ST25R3911B driving a remote PCB antenna via a 0.3m 50Ω coaxial cable in single-ended mode (RFO1). The antenna is a 2-turn square loop, 70×70mm outer dimension, 1.4mm trace width, 0.7mm spacing, calculated inductance ~735nH.
The chip drives two antennas switched alternately — RFO1 to the remote antenna via coax, RFO2 to a local antenna. Both antennas show identical poor range (~10mm), so the problem is not specific to the coax path.
Designed using the ST25R Antenna Matching Tool V3.6.2 with these parameters:
Reader-side components (confirmed populated):
Topology: Coax SMA → C1 (series) → node → C2 (parallel to GND) + R1 (parallel to GND) + Antenna loop
Current tuned values (arrived at empirically via VNA):
Antenna:
After extensive iterative tuning, best result achieved:
Smith chart shows clean resonance loop passing through center.
| RFO1 pin | 4V |
| After 330nH EMC inductor | 9V |
| After matching network / before SMA | 5-6V |
| After 0.3m coax cable at antenna SMA | 6V |
| Directly across antenna loop terminals | 7V |
The problem: Despite SWR=1.04 and a resonant antenna tank, there is virtually no Q multiplication at the antenna. 6Vpp into the antenna SMA, only 7Vpp across the antenna loop.
RFAL library, confirmed working after fixing a critical bug:
Bug fixed: The handshake() function was calling rfalNfcInitialize() on every poll cycle when no tag was present, constantly resetting the chip including analog config and calibration. This was causing instability. Fixed by moving init to a one-time startup function.
Current firmware:
// Called once at startup: void init() { spiInit(spiHandler); rfalNfcInitialize(); rfalChipSetAntennaMode(true, false); // single-ended rfalAdjustRegulators(NULL); rfalCalibrate(); } // Poll loop: NFC_State handshake() { rfalNfcDiscoverParam discPParam = { .compMode = RFAL_COMPLIANCE_MODE_ISO, .techs2Find = RFAL_NFC_POLL_TECH_A, .techs2Bail = 0, .totalDuration = 1000U, .devLimit = 1, .maxBR = RFAL_BR_106, }; rfalNfcDiscover(&discPParam); uint32_t timeoutRef = HAL_GetTick(); while (rfalNfcGetState() != RFAL_NFC_STATE_ACTIVATED) { rfalNfcWorker(); if (HAL_GetTick() - timeoutRef > 1500U) return NFC_State::SENSOR_NOT_DETECTED; } return NFC_State::OK; }
Register readback after init:
Any help appreciated — I've been at this for a while and running out of ideas!
ST25R3911B (5V, single-ended) ↓ RFO1330nH EMC inductor ↓Pi matching network (220pF || 176pF series || 452pF) ↓RFI1 tap (10pF/150pF divider) ↓0.3m 50Ω coax ↓Antenna PCB: C1=47pF series → C2=110pF || R1=1kΩ || 2-turn 70×70mm loop (735nH, 0.1Ω) Result: SWR=1.04, S11=-35dB, range ~10mm
Solved! Go to Solution.
2026-04-07 3:47 AM
Hello qwdwdwwq,
do you have new findings related to this issue?
You could also monitor VDD, VSP_RF and the voltage directly on the RFO pin.
Maybe there is also some issue with the voltage stability.
Please let us know in case of questions.
br Travis
2026-03-10 6:22 AM - edited 2026-03-11 12:51 AM
Hello qwdwdwwq,
I think you have mixed up some components of the matching network.
Do not seem to be correct.
Please see attached the proposed matching network in the antenna matching tool:
The left side of the sma cable is fixed since it matches 8Ohm to 50Ohm. The right side of the matching network is dependent on the antenna parameter. It matches the antenna (inductance) to 50Ohm.
q1: Not sure about q-multiplication, but yes, in general the antenna voltage is 5-15 times higher than the RFO output.
q2: Please have a look at the single ended application note (AN5592)
q3: Yes, this is why per default a capacitive voltage divider of 10:150 is proposed.
q4: I think you have wrong matching values applied. Can you please share a smith chart of your antenna matching?
BR Travis
2026-03-11 1:24 AM
Hello Travis,
Thanks for help,
Here is the last smith chart, measured with the cable:
And also last tool output, im not sure about those and will double check if the actual soldered caps match this:
2026-03-11 1:35 AM
Hello qwdwdwwq,
Many thanks for sharing the smith chart measurement (smith chart1).
It confirms that your antenna is correctly matched to 50Ohm.
Can you also share the smith chart of the complete matching (smith chart 2)?
BR Travis
2026-03-11 2:04 AM
Hello Travis,
I have never actually done this, i will make a setup and measure this soon
Thanks!
2026-03-11 2:19 AM
I took a screenshot of smith chart 2
2026-03-11 3:30 AM
Hi again,
unfortunately the 13.56MHz marker is missing.
Maybe can you also increase the span? There is no resonance visible.
BR Travis
2026-03-11 3:34 AM
Sorry, I increased the span to 250Mhz
2026-03-11 3:38 AM
Hi,
Your smith chart tells me, that the series and parallel cap does not fit.
The circle should look like this: (red curve)
BR Travis
2026-03-11 3:55 AM
Do you have some guidance on how to tune this? its way off from what the tool calculated
Thanks