GPIO Communication

I have an idea in mind that I am exploring. How could one communicate to multiple arduinos (or other similars like an ESP32) connected via GPIO?

I know the WiFi module is an ESP32, and I believe that it communicates to the Flipper via the serial connection. Which is fine for just 1 thing. But what about if I wanted to add another? When I take a look at the GPIO app and the USB-UART Bridge, I can see I can select the UART Pins to be either 13-14 (default), or 15-16. Can they both be used at the same time? And then what if I wanted to add more? How could I add another?

Taking a step back though, is serial really “the best” way to communicate to another microprocessor? Is there maybe a better way to do so? Or maybe an alternative (if not necessarily “better”) method of communication?

I2C could be the easy way to implement on both ends, and is usually supported by other microprocessors. And is already supported on Flipper.