Logic level translation with MAX3000EEUP+, What am I doing wrong?

Hi guys,

MAX3000EEUP+ datasheet: http://datasheets.maximintegrated.com/en/ds/MAX3000E-MAX3012.pdf
SF level translator: https://www.sparkfun.com/products/11978

I have a project that uses 3.3v SPI format communication from a few different chips to an Arduino Uno at 5v logic. The system works when I use the sparkfun logic level converters, but when I implement the MAX3000EEUP+, it doesn't show any signs of pass-through. The MAX3000EEUP+ is in a TSSOP package. The chips I'm communicating with are the MAX31855K and MAX31865.

Working setup:
[3v3 SPI CLK] to [Sparkfun LV TX], [Sparkfun HV TX] to [Uno D13]
[3v3 SPI CS] to [Sparkfun LV RX], [Sparkfun HV RX] to [Uno D10]
[3v3 SPI DO] to [Uno D12] directly

NOT working setup:
[3v3 SPI SCK] to [MAX3000EEUP+ Pin5], [MAX3000EEUP+ Pin16] to [Uno D13]
[3v3 SPI CS] to [MAX3000EEUP+ Pin4], [MAX3000EEUP+ Pin17] to [Uno D10]
[3v3 SPI DO] to [MAX3000EEUP+ Pin3], [MAX3000EEUP+ Pin18] to [Uno D12]
[5v] to [MAX3000EEUP+ Pin19]
[3v3] to [MAX3000EEUP+ Pin2]
[GND] to [MAX3000EEUP+ Pin11]
[MAX3000EEUP+ Pin10] to [10k resistor] to [5v]

Any ideas why it's not working with the Max3000EEUP+?

Maybe I'm not using it properly. I chose this chip because it's cheaper than the TSB0108, yet, matches the pinout. Their functionality is slightly different in how the EN (enable) pin functions. Should I ditch the idea of using a whole chip and just mimic what the sparkfun board does? This last option would be cheaper.

Why a 10k resistor on the EN pin?

I've had a lot of trouble with this sort of chip (specifically the TXB01xx series) and in fact gave up on them and returned to using a 74xx125 for level conversion.

One problem with them is that they have internal series resistors (6k for the MAX3000) and this can play havoc if you are trying to drive a decent load.

Another thing is that you appear to be using the version that's limited to 230kbps, are you really running SPI that slow?


Good point - I was wondering if I needed that 10k pull-up. I guess I should just connect it directly.

Anyways, it seems I should go for the bss138 approach, as it's way more simple and cheaper.