ESP32-C6FH4 SPI pins selection

jxlmane
Posts: 4
Joined: Wed Sep 20, 2023 1:11 pm

ESP32-C6FH4 SPI pins selection

Postby jxlmane » Tue Oct 03, 2023 2:38 pm

Hi everyone!
I am developing ESP32-C6FH4 based board for my project in university.
I have external inertial measurement unit (ICM-20948) which can use SPI for communication
There are a couple of pins left available, (SDIO_DATA0-3, SDIO_CLK, SDIO_CMD, MTMS, MTDI, MTCK, MTDO)
I am wondering which of them can I use in a way that it doesn't influence important features like WiFi, Bluetooth, internal flash, etc...?
In technical reference manual it is said that MTMS, MTDI, MTCK, MTDO are strapping pins and used for JTAG purposes, so I can't use them?
And all SDIO pins are used for SDIO Card Slave Driver, so I can't use them too?

In case I am wrong, which configurations can be used (may be both?)?

CONFIGURATION 1:
MTMS - CS
MTDI - MISO
MTCK - SCLK
MTDO - MOSI

CONFIGURATION 2:
SDIO_CLK - SCLK
SDIO_CMD - MOSI
SDIO_DAT0 - MISO
SDIO_DAT3 - CS

And do I need to pullup SDIO_DAT1-2 (in case configuration 2 is used), or I can leave them floating?
Thanks in advance!

ESP_Sprite
Posts: 9583
Joined: Thu Nov 26, 2015 4:08 am

Re: ESP32-C6FH4 SPI pins selection

Postby ESP_Sprite » Wed Oct 04, 2023 3:21 am

- Generally, the JTAG pins would only be reserved if you use an external JTAG adapter. If you don't use JTAG, or only use it via the internal USB-serial-JTAG adapter, you can use them.
- MTMS and MTDI are used for SDIO boot; given that you have a chip with internal flash I doubt you use that, so no need to worry about it.
- Given you're not using SDIO in any way, you should be free to use the SDIO_* pins for anything else. No pullups needed (unless whatever you use them for requires pullups).

jxlmane
Posts: 4
Joined: Wed Sep 20, 2023 1:11 pm

Re: ESP32-C6FH4 SPI pins selection

Postby jxlmane » Wed Oct 04, 2023 6:30 am

ESP_Sprite wrote:
Wed Oct 04, 2023 3:21 am
- Generally, the JTAG pins would only be reserved if you use an external JTAG adapter. If you don't use JTAG, or only use it via the internal USB-serial-JTAG adapter, you can use them.
- MTMS and MTDI are used for SDIO boot; given that you have a chip with internal flash I doubt you use that, so no need to worry about it.
- Given you're not using SDIO in any way, you should be free to use the SDIO_* pins for anything else. No pullups needed (unless whatever you use them for requires pullups).
Thanks for a great answer!

Who is online

Users browsing this forum: No registered users and 108 guests