ULN2003 Issues
These are very widely used as relay, magnet and motor drivers in conjunction with
microcontrollers or FPGAs. Unfortunately they
are very sensitive to reverse current into their output pins. This can be caused
by electrostatic discharge or ringing with stray capacitance in the magnet coils or
catch diode charge.
This circumstance can occur when the Vcc supplied to the chip is more than twice
the supply voltage to magnet (relay or stepper motor) windings driven by the chip.
In this case the capacitance of the winding causes a small amount of charge
to flow back into the chip, and which can destroy it.
The only way to protect against this is to place a reverse biased diode between
each output pin and the ground pin.
It is a pity that such a useful device is not better protected against such conditions.