I'm designing a USB device which can either be powered by USB or an external 5V power supply.
When an external 5V power supply is present, the device should be powered solely by this external supply. Otherwise, the device should be powered by the USB bus. In other words, the external supply should always be prioritized, regardless of voltage level compared to Vbus. This rules out solutions based on diode-ORing.
Furthermore, the device will potentially consume quite a bit of power (several amps), so a solution based on MOSFETs would be preferred. When drawing a lot of power, the external supply is required.
So far I've found only one IC which seems to do what I want, the LTC4417. However it's rather expensive and supports up to three supplies, which is more than I need. Does anyone know of other simpler (cheaper?) ICs?
I've come up with the circuit below which appears to work in simulation, but I'm not sure it will work in practice. For instance, is it possible to get an inrush current from Vbus to Vext during the transition period? Does anyone know of a simpler circuit to safely switch between the two power supplies?