

The LS-BIDI-4 is a bidirectional level shifter designed to enable communication between devices operating at different voltage levels. It is commonly used to bridge the gap between 3.3V and 5V systems, ensuring seamless data transfer in both directions. This component is particularly useful for interfacing microcontrollers, sensors, and other peripherals with varying voltage requirements. Its compact design and reliable performance make it a popular choice in embedded systems and IoT applications.








The LS-BIDI-4 has 8 pins, as described in the table below:
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | VCCA | Low-side voltage supply (1.8V to 3.6V). Connect to the lower voltage system. |
| 2 | GND | Ground. Common ground for both voltage domains. |
| 3 | A1 | Low-side data channel 1. Connect to the lower voltage signal. |
| 4 | A2 | Low-side data channel 2. Connect to the lower voltage signal. |
| 5 | B2 | High-side data channel 2. Connect to the higher voltage signal. |
| 6 | B1 | High-side data channel 1. Connect to the higher voltage signal. |
| 7 | VCCB | High-side voltage supply (3.3V to 5.5V). Connect to the higher voltage system. |
| 8 | OE | Output Enable. Active high. Enables the level shifting functionality. |
Power Connections:
Signal Connections:
Enable the Level Shifter:
I2C Example:
Below is an example of using the LS-BIDI-4 to interface an Arduino UNO (5V logic) with a 3.3V I2C sensor:
#include <Wire.h> // Include the Wire library for I2C communication
void setup() {
Wire.begin(); // Initialize I2C communication
Serial.begin(9600); // Start serial communication for debugging
// Example: Communicate with a 3.3V I2C sensor
Wire.beginTransmission(0x40); // Start communication with sensor at address 0x40
Wire.write(0x00); // Send a command to the sensor
Wire.endTransmission(); // End the transmission
}
void loop() {
Wire.requestFrom(0x40, 2); // Request 2 bytes of data from the sensor
if (Wire.available() == 2) { // Check if 2 bytes are available
int data = Wire.read() << 8 | Wire.read(); // Read and combine the two bytes
Serial.println(data); // Print the sensor data to the serial monitor
}
delay(1000); // Wait for 1 second before the next read
}
No Signal Translation:
Data Corruption or Communication Errors:
Device Not Responding:
Overheating:
Q1: Can the LS-BIDI-4 be used for SPI communication?
A1: Yes, the LS-BIDI-4 supports SPI communication with data rates up to 10 Mbps. Ensure proper connections for MOSI, MISO, and SCK lines.
Q2: Is the LS-BIDI-4 compatible with 1.8V systems?
A2: Yes, the LS-BIDI-4 supports low-side voltages as low as 1.8V on the VCCA pin.
Q3: Do I need external pull-up resistors for GPIO signals?
A3: No, pull-up resistors are not required for GPIO signals unless specified by the connected devices.
Q4: Can I leave unused channels unconnected?
A4: It is recommended to tie unused channels to ground or the appropriate voltage level to avoid floating inputs.