Im working on a display project and have run into some I2C issues. The display is of 3.3V design, so I figured, no big deal, ill use a level shifter and be on my merry way. Well, sure enough the level shifter kind of worked, at least it looked good, until i put the scope on it. I am was running with a low voltage of about 1.6V during the slaves ACK. The devices worked, but this is not in spec and I can't rely on this working across multiple devices. So, I'm wondering if anyone knows of a way to sink the extra current during the ACK while not effecting the input waveform from the master.
The display can only sink 1mA, but for the level shifter to work appropriately I need to sink the current from the high side pull ups as well as the low side, so about 2.5mA in the current setup.
I have tried using a pnp transitor with the slave device connected to the base and the low side of the level shifter connected to the emtiter with the collector across a current limiting resistor to ground. I then tied the emitter to the slave with a resistor. This worked to pull the ACK to about .1V, but the series resistor in line from the emitter to the display distorts the waveform from the master too much to be comfortable.
So, if anyone has any other ideas I would be greatful. Perhaps there is a purpose made solution that I can't google my way into.