How to pull down an open drain

I am trying to turn a power regulator on and off by it's enable pin. I need a high to turn it on and a low to turn it off. I want it to be turned off at power up so I use a 10K pull-down and make sure the pin is low before I configure as output. Everything works great.

Now I need to move that to a pin expander, MCP23S09. It has open drain outputs, so it doesn't actually make a high, you have to use a pull-up to get a high. It can only make a low. That's no problem on any other pin except this one because it already want's a pull-down. I can't have both.

I have confirmed that the MCP will be configured as input at high impedance when it starts. So if I have a pull-up on there to make the pin capable of giving me a high signal, it's going to turn it on for at least a few hundred milliseconds until I get the MCP configured. I can't have that. It's gotta be off until I turn it on.

How can I solve this conundrum and have a open drain output that can give a high at some point to turn this power on, but can be pulled down to low at startup. Maybe some kind of circuit to invert the logic so my pull-up becomes an OFF signal?

Maybe a 2N3904 wired up like this picutre? And then pull Uin HIGH with a 10K


Or would I be better with a mosfet. I have several to choose from but they all seem large for this low current app.

Swap the regulator for an equivalent part that has active-low enable? (direct compatibility).

It appears to be a classic high side switch application (although there may well be a better solution in this case )

Attach your enable pin to Q2 collector and the high side to the regulator input, not Vcc of the port multiplier.

attachment.gif

Picture credit:

attachment.gif

After a little more research this is what I cam up with. The pin on the regulator can be high or it can float because there is some mysterious pullup inside of unknown value. So I don't need to drive it high. That would be great except that I need it powered off at startup.

So I'm going to put a 2N3904 like this. At startup when the pin isn't powered, the 10K pullup turns the transistor on and that grounds the pin on the regulator. Regulator off at startup, just like I want. I can make sure the pin is HIGH before it is an output.

Then to turn it on I drive my ouput pin LOW and it turns the transistor off and that leaves the regulator pin floating and turns on the regulator. At least that's my hope. Please shoot any appropriate holes before I build it. At least I've got all the parts for this.

I see one problem already, I probably want a 1K resistor between the NPN and the output pin to limit current.

Delta_G:
I see one problem already, I probably want a 1K resistor between the NPN and the output pin to limit current.

Since it is open drain it is not needed.

You haven't shown the "high" voltage input to the "regulator". Can that appear before the 5volt supply becomes active ?

6v6gt:
You haven't shown the "high" voltage input to the "regulator". Can that appear before the 5volt supply becomes active ?

They're coming from the same place so they'll go high together.

Regulator is one from this thread where I soldered leads onto the enable pins. https://forum.arduino.cc/index.php?topic=679799 I wanted to build a high side driver for it, but this made things easier cause I just used the pin on the chip. The datasheet says I can leave it floating or pulled up to make it run. If I pull it to 0V then it turns off.

Basically, I just need to send a digital signal from a open drain pin and have it be held low if the pin isn't on. I think a simple signal inverter solves my problem in a small footprint, especially if:

Smajdalf:
Since it is open drain it is not needed.

Smajdalf:
Since it is open drain it is not needed.

Can you explain, just for my education?

I was just looking at the datasheet for the MCP23S09 and it says maximum sink is 25ma. Do I not have to sink any current to keep the transistor off?

Swap the MCP23S09 for an MCP23S08 that has push-pull outputs? (direct compatibility).

dlloyd:
Swap the MCP23S09 for an MCP23S08 that has push-pull outputs? (direct compatibility).

If I reorder I will.

EDIT: Just looked. Pinout is different. Will have to look at this one and see how much work. May be easier to justt add a transistor on this prototype and get the right thing later.

Delta_G:
Can you explain, just for my education?

I was just looking at the datasheet for the MCP23S09 and it says maximum sink is 25ma. Do I not have to sink any current to keep the transistor off?

To keep the transistor off you only have to sink the current provided by the 10k pull-up. The NPN transistor base does not source current, only sink it (it is like a diode to GND in your circuit). The only device that can source current to this node is the 10k resistor and it already provides limited amount of current.