logic level shifter

I've setup a TTL generator on arduino uno that I'm trying to port to teensy 3.5.
The generator will need to drive two different kind of devices (but not at the same time).

  • The first is an AMPI iso-flex isolation unit (SIU). From what I understand, the input to that box is directed to an 6N135 optocoupler. The producer says it needs at least 6mA input to be driven.
  • The second is a prizmatix led power supply (PRIZ) inside is a 500mA buckpuck luxdrive.

On arduino (5V logic), I can drive both of them with by direct connection to pin5 and digitalWrite(5, HIGH);
On teensy (3.3V logic), direct connection will drive the SIU, but not the PRIZ, which requires at least 5V)

I therefore addded an logic level shifter (bidirectionnal, ADAfruit BSS138) which is wired as follow (teensy TTL — ImgBB)

Great the PRIZ now works.... but the SIU doen't work anymore! .

(all connections are direct; with an oscilloscope, the TTL signal is 5V!)

EDIT: the SIU in fact does reply, but its output signal is highly dampened, something like 50 times less than should be. is it possible that the teensy may not provide enough current through the logic level converter?

what could be another way to upscale the logic level (don't need more than 1MHz) opAmp?

The Adafruit converter pulls up by a 10k resistor and cannot provide 6mA the SIU wants. Maybe it is the problem?
Easy solution: drive PRIZ via converter and SIU directly. Or this is not possible?

Thanks, that's what I suspected.

Obviously, driving independantly the PRIZ (5V) and the SIU(3.3V) is working, but not very elegant....
This enforces me to use two BNC outputs when one would be enough (or a BNC output and a manual switch).
Moreover, my TTL generator may need to drive some other TTL devices (not yet planned, but...)

So what would be a clean cheap and easy solution (if any) to upscale 3.3V to 5V and providing enough current to the SIU? with the stuff I have in my boxes (not that many, I'm afraid, but lots of resistances and capacitors)?
Any solution (without inverting the logic)

Optoisolator first.

Two transistors would be the next choice but you need to do calculations on base resistors and so on. Then two MOSFETs, but you need both P- and N-types.

The Opamp can be wired as a non-inverting comparator. This will be about as simple as the two transistors, in terms of component count.

Do you need your levels one way or both ways?

That 6 mA is that for a high and/or low signal?

one way is enough (3.3V to 5V)
6mA is for HIGH (as fas as I understand)

Sounds like a non-inverting buffer is what you need, e.g. a 75AHC125 (8 mA sink/source) or a 74LV125 (16 mA sink/source).

wvmarle:
Sounds like a non-inverting buffer is what you need, e.g. a 75AHC125 (8 mA sink/source) or a 74LV125 (16 mA sink/source).

Or in fact, a much more readily available 74HC14 with two of its gates in cascade.

74HC logic cannot be used to reliably convert 3.3V signals to 5V, because the input high threshold is ~3.5V
(basically you are likely to get away with it, but don’t be surprised if you don’t)

74HCT logic is needed for guaranteed 3.3V to 5 conversion as input high threshold is <=2.4V

To convert 5V to 3.3V then 74LVC series work, they run from 3.3V supply but have 5V tolerant inputs.

74HC logic cannot be used to reliably convert 3.3V signals to 5V, because the input high threshold is ~3.5V

No read the data sheet.

While being true of HC devices in general, the 74HC14 has a Schmitt-Trigger input and will switch on a positive going voltage at between 1.55V and 3.15V

@Grumpy Mike: I don't know what datasheet you have but for example Nexperia datasheet (first I found with Google) says the positive going threshold is 1.7-3.15V for Vcc 4.5V. It is 2.1-4.2V for Vcc 6V. We don't know how well the respective voltages are regulated. If nominal 5V is slightly more in reality and nominal 3V3 is slightly less and the used HC14 have high thresholds it may cause troubles. Unlikely to happen but...

You simply put a seriese diode in the power supply line to that chip if you have any trouble.