Electrical difference between Push pull and open drain?
There are some places where the open drain is useful, but I agree not many.

Buses such as I2C require an open drain output since they use a "wired Or" approach where any device can pull the bus low.

Another is if you need a simple way to interface to a logic input that uses a LOWER voltage that the VDD of your MCU. You can then just use a pull-up to the lower voltage supply.  If you used a totem pole output it would provide excessive voltage in the high state. This method is slow as there is only a resistor pull-up bit it is simple if you only want one or two 1.8V outputs and want other outputs to be 3.3v.

I may also use an open-drain output when interfacing to custom analog drivers.







simulate this circuit &ndash; Schematic created using CircuitLab