Logic level convertor not behaving as expected

Hi I am new to level shifters but they don’t look that hard. I purchased the Adafruit 4-channel I2C-safe Bi-directional Logic Level Converter (Adafruit 4-Channel Logic Level Converter – Pimoroni) but it just outputs a constant voltage, 3.3 on the low side and 5 on the high. I was expecting for it to only output a voltage when one was sent from my Arduino to help me communicate between 3.3 and 5V stuff. It must be something I am doing but its driving me crazy.

This is what I am doing:

LV pin - Connected to 3.3V
GND (low side) - Connected to ground

HV pin - Connected to 5V
GND (high side) - Connected to ground

A1 pin - Connected to pin 5 on my Arduino Nano IOT33
B1 pin - Connected to the positive of the LED
Negative of LED is connected to ground


Image attached shows connections.

I have the blink sketch running on the Arduino and it is all working without the level shifter (LED Blinks on and off). I was expecting everything to run the same but the LED would just be brighter when it blinked on, because the level shifter would be taking the 3.3V form the Arduino and boosting it to 5V.
Instead, the LED is just constantly on (does not blink) and does not change.

I have played with the connections and I can remove all of the wires bar the HV pin - Connected to 5V, the B1 pin - Connected to the positive of the LED and the negative of LED is connected to ground. It kind of feels like the component is shorting from the voltage inputs to the other channels. Is the component broken?

So these were designed for use with I2C, which is an active-low protocol. This means the wire is usually pulled high, and to send data I2C grounds the pin to send it low. As such normally the pin will be high, not low. Try connecting your 5V side and 3v3 power as normal, but instead of connecting the 3V signal to the arduino connect it to ground. Your LED should go off.

I’m not certain how to get this working the way you want. If I remember right there was a trick where you could set the pin up as an input with a pull-down resistor (which might ground the signal and turn the LED off?) but you can still write to the pin as if it was a digital output but I’d have to test that to see if it would work.

I have one of those. I used it with my Raspberry Pi to drive some large 10mm LED’s. I basically did what you did and used a 3.3v signal from the Pi’s GPIO to turn the LED’s on off. I “think” I grounded the - side of the LED (through a resistor) to turn them on.
I’ll see if I can find mine to check how I wired it up.

I found mine, My LED’s are all wired up with a common HV as the supply and grounded by the level converter to turn them on.
So on my Pi a low out = LED on, high or floating = LED off.