Arduino Noob Tips

Hello together,

im new here in the Forum. Also i´ve used the Search for looking to older Threads but don´t found the Answers that I´m looking for.

I want to build Projects wirth Arduino and my Implants. The Hardest Part for me is to find the right Hardware.

I´ve used the PN532 and the RC522. With a look at the Datasheet for me it looks like it can read the xNTand the NxtPay is a German Flex Implant with Payment Function but also has a NFC Functionality that i can use f.e. the Cardcode. These two work on 13,56MHz. With my Flipper Zero i got these Informations:

xNT → NTAG216 and the UID
NxtPay→ ISO14443-4A Tech: ISO14443-4(NFC-A)

Both are working on 13,56MHz but only the PN532 can read the UID from the NxtPay. Why?
I need an Reader with the ability to read both implants.

The other implant is an xEM that (i think you know) work in 125khz. Which Reader can I use for this implant.

I know - I can easily buy an “ready to use” system in the Internet like

This Reader from dangerousthings

Or another Reader dangerousthings

but that is not the sense that im following.

Hope you can help me.

Thanks

Fabian

That chimpo guy will be able to help you out making custom acsess controllers. Its the whole point of his existence. Drop him a message. The systems will read the pay and the xnt uids no problem.

2 Likes

2 Likes
1 Like

I´ll give it a try :wink:

Code sample? It depends kn how you get the UID. If you get it from anticollision, it should if you are getting it from a read command, it won’t. Also, are you sending REQA or WUPA?

1 Like

void loop(){
String Token_ID;
String Token_Byte;
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}

if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
Serial.print(“The ID of the RFID-TAGS is:”);
for (byte i = 0; i < mfrc522.uid.size; i++)
{
Token_Byte=(mfrc522.uid.uidByte[i]);
Serial.print(mfrc522.uid.uidByte[i]);
//Serial.print(mfrc522.uid.uidByte[i], HEX);
Serial.print(" ");
Token_ID=Token_ID+Token_Byte;
}
Serial.println();
delay(1000);

if(Token_ID == “1234”){

}

1 Like

How is it behaving? No output or are you getting “The ID of the…” and then nothing or maybe just zeroes?

You’re using MFRC522 code, not PN532 code

Your sketch is written for the MFRC522 library (mfrc522.PICC_ReadCardSerial() etc.), but you mentioned a PN532 reader

Oh dont forget the little dip switches on the pn532 that chooses spi or i2c modes respectively.

1 Like

I believe they posted this sample because it is not working unlike the pn532 :slight_smile:

That library looks pretty feature complete. I’m curious as to whether it is bailing from an error.

Pull my code from the simple sexy. Should work for you without issue.

1 Like

The talos door lock has a bit of code for pn532 and rc522. With auto detect. If that helps

Hello together,

tac0s is right - it was only a sample. I use this code for the MFRC522.

How is it behaving? No output or are you getting “The ID of the…” and then nothing or maybe just zeroes?

It was only the sample. The real Magic goes at the

if(Token_ID == “1234”){

}

but thats not the Point. The main Problem is that the Implants don´t get read.

but you mentioned a PN532 reader

I mentioned to both. The PN532 and the MFRC522. That whats going better. At the Moment the only one is my Flex Implant that got readed. I want also the xNT to be function.

The Code for the PN532 is a simple Basic from the Internet: Thats the Article

I´ve tested both. The I2C and the SPI Version. Both dont work for the xNT.

I´ll have a look for your Complete: Talos - NFC Home Lock UK but i don´t find some code. Or i think im to stupid to use this forum :sweat_smile: - or its also too late for me.

If you want Code from me i can give you the full code…

I uh would love an answer to the question because:

Suggests there is a problem. I am interested in exactly this sort of issue–Type 2 transponders working with UID based products but not Type 4 despite the fact the underlying tech that gives them the UID is identical : )

Edit: When i reviewed the library you are using’s source, it seems quite feature rich. The method you use to get the UID derives it from anti-collision which is agnostic between both transponder types so it should be working, in theory. Which is why I would love to know what’s breaking in your code.

Yeh post your code in full. Let’s start there

Hope this is okay - i put it on my small Github. I have rewritten it in English.

https://github.com/Fbn351/Dooropener_Arduino/tree/main

1 Like

I also have the Problem when i used my system sometimes it doesnt work anymore.

But i cant find an logical reason for it. Someone written before that the cache flows over. so i´ve put in the code:

mfrc522.PICC_HaltA();
mfrc522.PCD_StopCrypto1();

But that also doesnt help.

The Work Around is to connect it with usb to my computer and open the serial Monitor. After this everything work again for time-X (a day, a week, a month or a year). Only the Serial Monitor “repairs” it. Not the reconnect to the powersource.