I am currently trying to figure out why my NFC reader circuit with MFRC522 chip is not working and I stumbled upon this in the datasheet. In the section describing how to activate different digital interfaces, the SPI has (output) next to it, UART has (input) written next to it, while I2C has (I/O) next to it. Anyone has any idea why?

enter image description here

  • 1
    \$\begingroup\$ Likely, only the manufacturer would know why they labeled it this way. All three interfaces should be bi-directional. \$\endgroup\$
    – rdtsc
    Sep 22, 2021 at 12:06
  • \$\begingroup\$ Link to the datasheet, please. I agree with @rdtsc that likely only the manufacturer knows, but it's possible there's something else in the datasheet that explains why. \$\endgroup\$
    – Null
    Sep 22, 2021 at 12:37
  • \$\begingroup\$ Pretty sure those directions apply to, and belong in, the first row of the table content and not the table header. It is "RX (input)", "NSS (output)", "SDA (I/O)". Except that NSS should be output on the host, not on the slave \$\endgroup\$
    – Ben Voigt
    Sep 22, 2021 at 17:37

2 Answers 2



It's a datasheet mistake, introduced between different versions of the datasheet.

I was asked to help with a design using that MFRC522 several years ago and I remembered a different version of that table.

Here is the equivalent table from old datasheet v3.2 :

MFRC522 interfaces from datasheet v3.2

As you see, that uses colors to differentiate between signals which are Input, Outputs and I/O. Much clearer and it doesn't mention Input, Output etc. at the top of the columns.

So that explains what the table should show.


I suspect that during editing between versions, someone has done something like this. They copied those words Input, Output etc. up into the column headings:

MFRC522 interfaces from datasheet v3.2 with markings

It doesn't make sense to do that, of course, as they were never supposed to be related to each column - those words were used as part of a color key for each background color in that table! But the colors were removed - very confusing.

It is after a change like that, that we see the current datasheet v3.9 looks like you describe in the question, with those confusing column headings and no colors:

MFRC522 interfaces from datasheet v3.9 with markings

  • 1
    \$\begingroup\$ Thank you for this! I agree with your hypothesis; that is definitely what must have happened. \$\endgroup\$
    – Lob Ster
    Sep 23, 2021 at 18:00
  • \$\begingroup\$ I agree that this is a bug in the documentation. I reported that to NXP at the time of writing my response yesterday I also reported it to NXP. I was trying to be nice to them and find a possible logical explanation but your historical perspective explains it very well. \$\endgroup\$ Sep 23, 2021 at 21:15

The table in the datasheet would benefit from a better language.

However, after scratching my head and pouring over the datasheet NXP MFRC522 datasheet I came up with this possible explanation:

When talking about Rx and Tx signals one needs to know from what perspective these signals are named. Which side is the receiver consuming the Rx and which side is the transceiver? If both sides are using the same convention you just connect Rx to Tx and vice versa.

UART being "input" receives Rx and sources Tx.

SPI is labeled as "output". They probably wanted to call it "slave" to be consistent with the MISO/MOSI naming (MISO = Master In - Slave Out). You can see that the SCK signal is input = the SPI is not master.

The "input" and "output" notes are confusing to say the least. Unlike TI NXP doesn't have a documentation feedback on their datasheet. I would have filed a report.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.