Sinking current - How to pull down a point to zero using Arduino pins

raschemmel:
Without knowing what the signals are or HOW they work, isn't this entire discussion ACADEMIC ?

Quite so.

pwillard:
Don't just complain. Provide a compelling alternative.

Dead easy, and should be the first thing that comes to mind - the TPIC6B595 (or in this case, TPIC6C595 would be sufficient, but the "B" is likely the most readily available).

This uses FETs as the ("open drain") switching elements with a very low saturation voltage, and uses a fraction of a milliamp supply current making it suitable for battery powered devices. Like the ULN devices, it contains "kickback" protection but does not require a connection to the supply rail of the switched devices.

Now of course, it is in fact a shift register and latch controlling these eight output FETs. This is hardly a disadvantage; it means you control it - or many of them chained - with only three microcontroller ports and could thus be paired with one of the low lead-count devices. You can either "bit-bang" at maximum speed, or use SPI functions. Since almost all applications of the ULN drivers are low-speed (they have to be, the first transistor in the Darlington saturates), the slower performance of using a shift register is moot.