List of supported pins for various interfaces

It would be useful to document the list of possible pins that can be supported for various interfaces (UART, I2C, SPI, etc.) It's clear from the docs that many interfaces can have their pins reassigned at initialization, but it's not clear which pins can be used. It would save a lot of trial-and-error.

@RobTuDelft See, that's really what I was originally after. The real answer isn't that "any pins can be used"; there are restrictions, and what I was looking for is a comprehensive list of those restrictions, or conversely, a list of acceptable pins. It would probably save a lot of people a lot of time.

As far as I know you can assign any of the peripherals (SPI, UART, I2C..) to any GPIO pin. That big flexibility comes from the internal ESP32 GPIO matrix which connects GPIO with peripherals internally.

Just make sure P13, P14, P15, P16, P17 and P18 are used only as inputs and if you're using the LoPy/SiPy stay away from P5, P6, P7.

A map to show all the possible combinations would likely be more confusing