Confusion Over ESP32-C3 SPI GPIO Pin Assignment for Non-dedicated GPIO

Hello Arduino Community,

I've encountered a puzzling discrepancy while developing a custom circuit board utilizing the ESP32-C3 microcontroller. My intention is to utilize the SPI2 peripheral for interfacing with peripherals, particularly the RC522 RFID module.

According to the ESP32-C3 datasheet, the SPI2 peripheral can supposedly be utilized by any GPIO pins, as indicated in the attached image.

However, upon consulting the Arduino core documentation, specifically the GPIO Matrix page, it seems that the SPI pins require dedicated GPIO assignments.

This conflicting information has left me perplexed. Am I interpreting these resources correctly? Is there truly no way to multiplex the SPI to alternate GPIO pins beyond the dedicated ones outlined in the GPIO matrix?

My long-term goal is to integrate the RC522 RFID module into my custom board, and I designed it under the assumption that I could freely assign the SPI interface to any GPIO pin.

I would greatly appreciate any insights, clarifications, or alternative approaches from fellow Arduino enthusiasts who may have encountered similar challenges or have a deeper understanding of the ESP32-C3 GPIO pin assignment intricacies.

Thank you for your time and assistance!

I think your second reference is generic (it does say to consult the specific module data sheets). I think the first reference to the C3 shows extensions to the generic description. Have you tries to reassign pins to see what happens? I don't have a C3 module so can't try it.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.