はじめに
ESP32 or ArduinoにてRFID-RC522を動作させようとしたらエラーが発生して結構つまづいたので共有します。
機材:ESP32 DevkitC
RFIDリーダモジュール:RC522 Amazonで評価いいものを選んだつもり
エラー内容
Firmware Version: 0x0 = (unknown)
WARNING: Communication failure, is the MFRC522 properly connected?
上記エラーはSPI通信がそもそもできていないことを示しています。
ググってもなかなかまとを得た回答がありませんでした。
原因は?
考えられる原因は
①コードミス、配線ミス
②接続不良
③製品不良 ⇦私はこれでした・・・
①コードミス・配線ミス
RC522のサンプルコードを使って動作させる場合、SS_PINとRST_PINがデフォルトではArduino用(unoかな?)になっています。
自分の使用するマイコンに適用したピン番号に変えてあげる必要があります。
②接続不良
こちらは意外と見落としがち半田不良です。私は不器用なので下手くそですが、下記画像の半田でも動作したので最低限これくらいであれば問題なく動作すると思います。画像は実際に動作した基板です。

③製品不良
私はこれでした。Amazonで1枚600円か、2枚800円かで迷って、結局1枚の方を買いました。
今思えば、予備で2枚買っておけばよかったと思います。
数日いろいろ試して、何も進捗しなかったので別メーカのものを買い直してあっさり動作しました。
①と②を試してダメなら再度購入した方が無難のようです。もったいないけど。