Page 1 of 1

ESP32C6 SPI via IOMUX vs. GPIOMUX

Posted: Thu Dec 11, 2025 7:47 am
by jhennrich
Hello,
for the ESP32C6 the SPI2 peripheral can be used with any GPIO pins by routing them through the GPIO-MUX. But when using specific pins, the SPI2 signals of the ESP32C6 can be routed through the IO-MUX directly.

Some sources say that routing the signals directly via IO-MUX is faster (allows faster SPI CLK speeds) and reduces delay, however the IDF documentation for the SPI driver says: (https://docs.espressif.com/projects/esp ... and-io-mux)
When an SPI Host is set to 80 MHz or lower frequencies, routing SPI pins via the GPIO matrix will behave the same compared to routing them via IOMUX.
So how big is the difference really? Im using SPI2 in Master mode with a clock frequency of 10MHz (reading from a very high sampling IMU).

Best regards,
Johannes

Re: ESP32C6 SPI via IOMUX vs. GPIOMUX

Posted: Fri Dec 12, 2025 12:11 am
by Sprite
The issue tends to be the latency inherent in the GPIO mux vs the more direct IOMUX, not the speed itself. With the GPIO mux, you might have issues getting the signals to 'align' if you run them at 80MHz or more. At 10MHz, the latency doesn't really factor into the equation nearly as much, so you can use either and there won't be a difference.