RC522 RFID
Zie ook https://revspace.nl/RC522Hacking and a document AN12810: How to use the NanoVNA for the NFC reader antenna design or AN11019: CLRC663, MFRC630, MFRC631, SLRC610 Antenna Design Guide Rev. 1.5 — 2 and the box with parts and a VNA - Vector Network Analyser
Inhoud
RC522
In het algemeen bleken de RC522 kaartlezers niet alle kaarten van deelnemers (goed) te kunnen lezen, terwijl de toegepaste NXP RC522 chip deze kaarten wel zou moeten kunnen lezen.
De makerspace heeft een heel aantal dergelijke kaartlezers, uit minstens 2 verschillende bestellingen. Er is een simpele indeling te maken in "goede" en "slechte" kaartlezers: De "slechte" lezers lezen alleen de meegeleverde kaarten en druppels, en niet b.v. de OV-chipkaart of andere kaarten die deelnemers als deurkaart gebruiken.
De "goede" kaartlezers kunnen naast de meegeleverde blauwe druppels en witte kaarten (Beide Mifare 1K) de OVchipkaart (Mifare 4K), wegwerpOVchipkaart (Mifare ultralight / ultralight C), en diverse eigen kaarten (ISO/IEC14443-4) lezen. Dit is getest door om beurten 2 verschillende lezers aan te sluiten op een Arduino met een kaartlees-sketch en enkele (hiervoor genoemde types) kaarten te proberen te lezen, waarbij dus bij beide kaartlezers identieke software is gebruikt en identieke kaarten. (Er lijkt een methode te zijn om "slechte" kaartlezers te fixen, zie Fix)
Er zijn een paar visuele verschillen aan de PCB:
De silkscreentekst is kleiner en netter op de "slechte", verder hebben deze een SMD kristal ipv troughhole en de kleur van C6,7,8,9,10 is anders. Dit zijn slechts optische verschillen, en niet de oorzaak van het slecht lezen van kaarten (Al zou de capaciteit of andere eigenschappen van C6-10 ook anders kunnen zijn, het is in elk geval een ander merk/type). De datumcode van de IC's is ook anders.
Dit was een test op basis van 2 lezers, echter meer "slechte" lezers zijn getest door andere makers die tegen hetzelfde probleem aan liepen, en de kaartlezers van het huidige deursysteem, die dus alle kaarten lezen, komen visueel overeen met de "goede" lezers.
Tevens schijnen er dergelijke kaartlezers in omloop te zijn met een Mxp chip ipv NXP. (Fakes?):
Op basis hiervan vallen hopelijk op ali/ebay "goede" lezers te bestellen, door lezers uit te kiezen die op de foto op de "goede" lezers lijken. (Moet je ook nog maar net krijgen wat op de foto staat, natuurlijk... Maar "Ik heb een ander product gekregen dan op de foto" is een standaard claim, "werkt toevallig niet met mijn kaartjes" lijkt mogelijk lastiger.)
Wilde ideeën
- "slechte" lezer condensatoren af solderen en capaciteit meten (Evt ook PCB spoel nameten indien mogelijk... Resonantiefrequentie?). Vergelijken met appnote/datasheet en evt. met een "goede" lezer.
- Heel wild idee: Chip van een "slechte" overzetten (Met hete lucht) op een "goeie", kijken of het daar aan ligt of aan de randcomponenten/PCB spoel.
- Aart's idee: Zelf printjes maken, onderdelen bij betrouwbare leverancier halen, danwel de bestaande lezertjes voorzien van "known good" onderdelen.
Handig: de datasheet en AN1445: https://www.nxp.com/products/identification-and-security/nfc/nfc-reader-ics/standard-performance-mifare-and-ntag-frontend:MFRC52202HN1?fpsp=1&tab=Documentation_Tab&lang_cd=en
Ook handig: https://www.nxp.com/docs/en/application-note/AN11535.pdf
uitwerking wilde ideeën
Welk onderdeel is welk?
Voor de uitwerking van bovenstaande ideeën kan het handig zijn te weten welk onderdeel op de printjes overeenkomt met het schema van figuur 27 in de datasheet (Het applicatieschema). (Dit gaat er van uit dat inderdaad figuur 27 gevolgd wordt, dus antennetopologie I, en er niet gekozen is voor antennetopologie II uit AN1445)
RFID reader PCB | Figuur 27 datasheet |
---|---|
C12,C13 | Oscilator C's (Niet genummerd) |
C2 | CVmid |
R3 | R1 |
R4 | R2 |
C3 | Crx |
L1,L2 | L0 (2x) |
R1 + D1 | Pwr led, not shown |
C1 | pwr decoupling, not shown |
R2 | NRST pull-up, not shown |
C4,C5 | C0 (2x) |
C6,C7 | C1 (2x) |
C8//C10 C9//C11 | C2 (2x) |
C8 en C10 (PCB) staan parallel en vormen zo C2 (fig. 27). Idem C9 en 11.
C4 en C5 (PCB) zijn beiden een C0 (fig 27) en zouden dus elk een gelijke waarde moeten hebben, hetzelfde geld voor C6=C7=C1 en C8+C10=C9+C11 (pcb) = C2 (f27).
Chip overpotten
Omdat het makkelijker is dan alle condensatortjes 1 voor 1 over te zetten, heb ik de chip van mijn "goede" RFID lezer (Datumcode 1108) afgesoldeerd, en er een chip van een "slecht" lezertje op gezet (Met datumcode 1411). Vervolgens heb ik opnieuw de "dump kaartgegevens" sketch gerund.
Mijn "Goede" lezer leest nog steeds kaarten, ook de kaarten die de "slechte" lezers niet kunnen lezen.
Hieruit valt te concluderen dat de chips van de "slechte" lezers gewoon goed zijn, en het dus aan de randcomponenten ligt.
condensatortjes vervangen
TODO. Eerst uitzoeken welke waarde het moet zijn / danwel resonantiefrequentie LC kring nameten (op 13,... Mhz... Wat de functiegenerator op de space niet haalt, en die thuis ook niet...) Als we door het vervangen van enkele condesatortjes de "slechte" lezers werkend kunnen krijgen zou mooi zijn.
In fig. 27 | Op silkscreen | Gemeten waarde "slechte" lezer | Gemeten waarde "goede" lezer | Afgeronde standaardwaarde |
---|---|---|---|---|
C0 | C4, C5 | 48 pF | C5: 49 pF | 47pF |
C2 (C10 en C8 staan parallel) | C10 | 208 pF | 12 pF | 180 pF? 220pF? |
C2 (C11 en C9 staan parallel) | C11 | 215 pF | niet gemeten, is identiek C10 | idem |
C1 | C6, C7 | 16 pF | C6: 16pF | 12 pF? 18pF? |
C2 (C10 en C8 staan parallel) | C8 | 10 pF | 203 pF | 6,8pF? 10pF? |
C2 (C11 en C9 staan parallel) | C9 | 11 pF | Niet gemeten, is identiek C8 | 12pF? 10pF? |
(Gemeten waardes zijn gemeten met een handmultimeter met condensatortester en kunnen 10% afwijken. Tevens 3-5pF te hoog, omdat SMD condensators niet in de klemmetjes passen (op een manier dat ze correct contact maken) en ik dus draadjes heb moeten vasthouden, hetgeen bij afwezigheid van enige condensator reeds een meetwaarde van 3 tot 5pF aangeeft)
Op de "goede" en "slechte" RFID lezers zitten dus dezelfde condensatortjes, althans, dezelfde capaciteitswaarde. (C11 (C10) en C9 (C8) staan parallel en tellen dus op) Aangezien de kleur anders is valt aan te nemen dat het een ander type betreft met andere eigenschappen op gebied van b.v. verlieshoek / Q / ESR / ESL.
Ook zijn waarschijnlijk de antennespoelen en mogelijk de EMC filterspoelen (L1,L2 op PCB, L0 in fig 27) verschillend. (TODO: nameten... Maar hoe? het gaat om ordegrote 0,5 - 3 uH... En moet exact.)
Dat de 200pF en 12 pF zitten omgewisseld tussen de "goede" en de "slechte" lezer zou omdat deze parallel staan eigenlijk niet uit moeten maken, maar het verschil dat ervoor zorgt dat de ene lezer wél OVkaarten leest en de ander niet is duidelijk erg subtiel, dus het valt te proberen ze om te wisselen.
Een echt goede oplossing wordt waarschijnlijk pas gevonden door de prinstpoel - antenne zelf correct te tunen met onze VNA - Vector Network Analyser.
Fix
Zoals in het Bestand:VNA 171228 183031 Origineel.pdf gezien kan worden ligt de resonantiefrequentie van het geheel van de antenne (Vanaf L0 gemeten) bij een "slechte" lezer op 12.75 Mhz. Door het verwijderen van C8,9,10 en 11, en daarna terugplaatsen van 188pF voor C2 uit figuur 27 verschuift deze resonantiefrequentie naar net iets onder de 13,56Mhz. Zie Bestand:VNA 171228 190306 4x47pfcondensaTOREN.pdf. Dit is getest door 2x 47pF te plaatsen op C8,9,10,11 ieder, dus 8 condensators totaal per print. Waarschijnlijk werkt 100pF + 82 pF ook, dat scheelt stapelen.
Deze aanpassing is op 2 van de "slechte" lezers getest en resulteert er in dat deze lezers nu ook OVchipkaarten e.d. kunnen lezen, net als de "goede" lezers.
Hiermee is de antenne van de RFID-lezer echter nog niet correct getuned, dus "wordt vervolgd..."