Open Collector / Open Drain [SOLVED]

I see this phrase a lot, and even though I've read the definition, I'm not clear on a couple things.

To review, here's the Wikipedia definition:

An open collector is a common type of output found on many integrated circuits (IC), which behaves like a switch that is either connected to ground or disconnected.

In this case, does "disconnected" actually mean the same as "floating"? If it's floating, what guarantees deterministic behavior for the chip? The next part may actually answer that:

Because the pull-up resistor is external and does not need to be connected to the chip supply voltage...

There's no resistor pictured or mentioned before this. Do they mean something like "When you use an IC like this, you're going to definitely connect an external pull-up resistor, and that can be pulled high to a voltage that is different from the IC supply, subject to chip tolerances."

If that's the case, should I read any "open drain/collector" pin as quietly saying "pull me up"?


I really wish that somebody with a little foresight had decided on these terms. "Open" meaning "external" is just the latest for me in a huge set of words that weren't chosen for clarity. Don't get me started on "base, emitter, collector".

should I read any "open drain/collector" pin as quietly saying "pull me up"?

That works.

You can connect such an output to an Arduino input pin, declared INPUT_PULLUP in pinMode() and thereby avoid adding an external resistor. Such outputs are extremely useful and common, because information can be shared between devices that run at different power supply voltages. You need only a common ground.

In ANY new field, there is always a lot of jargon to learn before you fully understand what most people are saying. That is just how humans work and will probably never change.

Simply, ‘open’ is not connect to anything, i.e. the collector/drain is just connected to the I.C. pin.

An open collector/drain can be wired together.

External loads can be connected to these pins.

Open collector (drain) means there is nothing internal to the device connected to the collector of the output transistor, it's an OPEN circuit. The collector of a non conducting transistor has a high impedance (it's "floating"), so to hold it at a particular state (HIGH) a pullup resistor connects it to the Vcc of the circuit being switched. When activated the transistor conducts from collector to grounded emitter pulling the collector LOW (near ground potential). Did that make sense? :slight_smile:

Remember, you can have open collector BJT NPN/PNP or open drain MOSFET N/P channel.

True open collector or open drain outputs can be used to change voltage - ie level shift up to 12V or 24V
which can be very useful interfacing to external circuitry.

Many chips have pseudo open-collector on GPIO pins - the pin, when in output mode, acts like open
collector except that the voltage may not go above Vcc as the pin has input protection diodes on
it for the input mode on that pin.

One important role of open-collector is to allow more than one output pin to connect to a signal,
allowing multiple-master interconnections. If two outputs are active nothing breaks as they can
only pull down, and thus can't fight each other and pull damaging current levels.

Connecting push-pull outputs together can result in fried hardware if both are erroneously simultaneously
driven.

There always needs to be some pull-up somewhere on an open-collector signal, either resistor or
sometimes a current source.