PINout check for a new PCB project

Hello everyone,
I would like to develop a new board. I would like to use the ESP32-WROOM-32E-N4 module.
For a better PCB routing I need to use a different pinout than the LedBox V2 project here.
I studied the datasheet and seems that most of the pins can be used. I2C, SPI, I2S hardware can be routed to almost any PIN.


LED strip is connected throught a logic level translator at “LV_DAT” and “LV_CLK”
An I2S microphne is connected on “MIC_” pins
UART is connected at “TX” and “RX” pins
An I2C bus is on “SDA” and “SCL” pins
Could you confirm that I am right so I can proceed with the PCB development and routing?

Please could you also tell me where I what sources I will have to modify? I’m a good low level C developer, but I’m not so confortable with python. :grimacing:
Thanks!

To have a better understanding, here it is the IO_MUX Pad List table from the ESP32 technical datasheet.

just for example I attach the I2S Signal Bus Description table.

It seems that I2C, SPI, I2S hardware can be routed to almost any PIN.

I would like to be sure prior to route all the PCB,
Thanks!

Maybe I found the information needed:
From Table 12: Peripheral Pin Configurations in ESP32 datasheet i read that I2C, UART, I2S, SPI can be connected to ANY I/O pin.

Now my question is: what should I do to remap UART pins?
I also read the programming tutorial and (if I’m right) it uses UART and not JTAG interface.
When the JTAG interfece is used?

Thanks!