Uploading sketckes to two devices using only one port?

I have an Arduino Micro and ESP-01 module talking to each other via I2C and Serial TX/RX. So far, so good…

Until now I use two seperate USB cables for uploading:

  • Arduino Micro: directly
  • ESP-02: via ‘CP2104 USB to UART Bridge Controller’

Is it possible to upload/update to both devices using only one Aruino Micro USB port?
When I sell this product, it has to be possible for the client to do a software update via USB.
The Arduino is directly reachable, but the ESP is connected via I2C and Serial TX/RX.
Or the other way: upload via Over-the-Air to ESP-01 and Arduino Micro?