Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use SparkFun Voltage-Level Translator Breakout - TXB0104: Examples, Pinouts, and Specs

Image of SparkFun Voltage-Level Translator Breakout - TXB0104
Cirkit Designer LogoDesign with SparkFun Voltage-Level Translator Breakout - TXB0104 in Cirkit Designer

Introduction

The SparkFun Voltage-Level Translator Breakout - TXB0104 is a versatile and essential component for interfacing digital circuits operating at different voltage levels. This breakout board utilizes the TXB0104 chip from Texas Instruments, which is a 4-bit non-inverting level shifter. It allows for bidirectional voltage translation between high-voltage (HV) and low-voltage (LV) logic levels, ranging from 1.2V to 3.6V, making it ideal for applications such as connecting a 3.3V microcontroller to 5V sensors or vice versa.

Explore Projects Built with SparkFun Voltage-Level Translator Breakout - TXB0104

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino Mega 2560 Controlled Motor System with I2C Communication and Hall Effect Sensing
Image of Uni1: A project utilizing SparkFun Voltage-Level Translator Breakout - TXB0104 in a practical application
This is a motor control system with feedback and sensor integration. It uses an Arduino Mega 2560 to control MD03 motor drivers for DC motors, receives position and speed feedback from HEDS encoders and Hall sensors, and measures distance with SR02 ultrasonic sensors. Logic level converters ensure compatibility between different voltage levels of the components.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Motion Tracking System with ICM20948 Sensor
Image of ICM20948: A project utilizing SparkFun Voltage-Level Translator Breakout - TXB0104 in a practical application
This circuit features a SparkFun ESP32 Thing Plus microcontroller interfaced with an Adafruit ICM20948 9-axis motion sensor via an Adafruit TXB0104 4-channel bi-directional level shifter. The ESP32 reads data from the ICM20948 sensor, calculates orientation angles such as pitch, roll, yaw, and azimuth, and outputs these values to the serial monitor. The level shifter ensures compatibility between the 3.3V logic levels of the ESP32 and the 1.8V logic levels required by the ICM20948.
Cirkit Designer LogoOpen Project in Cirkit Designer
Teensy 4.1-Based Multi-Channel Potentiometer Interface with 74HC4051 Mux and AMS1117 3.3V Regulator
Image of redrum: A project utilizing SparkFun Voltage-Level Translator Breakout - TXB0104 in a practical application
This circuit features a Teensy 4.1 microcontroller interfaced with a SparkFun 74HC4051 8-channel multiplexer to read multiple rotary potentiometers. The AMS1117 3.3V voltage regulator provides a stable 3.3V supply to the multiplexer and potentiometers, while electrolytic and ceramic capacitors are used for power supply filtering and stabilization.
Cirkit Designer LogoOpen Project in Cirkit Designer
Wi-Fi Controlled Device Interface with Wemos D1 Mini and Logic Level Converter
Image of Toshiba AC D1 mini: A project utilizing SparkFun Voltage-Level Translator Breakout - TXB0104 in a practical application
This circuit features a Wemos D1 Mini microcontroller interfaced with a Bi-Directional Logic Level Converter to facilitate communication with a 5V RX/TX module. The level converter ensures proper voltage translation between the 3.3V logic of the Wemos D1 Mini and the 5V logic of the RX/TX module.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with SparkFun Voltage-Level Translator Breakout - TXB0104

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Uni1: A project utilizing SparkFun Voltage-Level Translator Breakout - TXB0104 in a practical application
Arduino Mega 2560 Controlled Motor System with I2C Communication and Hall Effect Sensing
This is a motor control system with feedback and sensor integration. It uses an Arduino Mega 2560 to control MD03 motor drivers for DC motors, receives position and speed feedback from HEDS encoders and Hall sensors, and measures distance with SR02 ultrasonic sensors. Logic level converters ensure compatibility between different voltage levels of the components.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ICM20948: A project utilizing SparkFun Voltage-Level Translator Breakout - TXB0104 in a practical application
ESP32-Based Motion Tracking System with ICM20948 Sensor
This circuit features a SparkFun ESP32 Thing Plus microcontroller interfaced with an Adafruit ICM20948 9-axis motion sensor via an Adafruit TXB0104 4-channel bi-directional level shifter. The ESP32 reads data from the ICM20948 sensor, calculates orientation angles such as pitch, roll, yaw, and azimuth, and outputs these values to the serial monitor. The level shifter ensures compatibility between the 3.3V logic levels of the ESP32 and the 1.8V logic levels required by the ICM20948.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of redrum: A project utilizing SparkFun Voltage-Level Translator Breakout - TXB0104 in a practical application
Teensy 4.1-Based Multi-Channel Potentiometer Interface with 74HC4051 Mux and AMS1117 3.3V Regulator
This circuit features a Teensy 4.1 microcontroller interfaced with a SparkFun 74HC4051 8-channel multiplexer to read multiple rotary potentiometers. The AMS1117 3.3V voltage regulator provides a stable 3.3V supply to the multiplexer and potentiometers, while electrolytic and ceramic capacitors are used for power supply filtering and stabilization.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Toshiba AC D1 mini: A project utilizing SparkFun Voltage-Level Translator Breakout - TXB0104 in a practical application
Wi-Fi Controlled Device Interface with Wemos D1 Mini and Logic Level Converter
This circuit features a Wemos D1 Mini microcontroller interfaced with a Bi-Directional Logic Level Converter to facilitate communication with a 5V RX/TX module. The level converter ensures proper voltage translation between the 3.3V logic of the Wemos D1 Mini and the 5V logic of the RX/TX module.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Interfacing microcontrollers with peripherals of different voltage levels
  • Data communication between devices operating at different logic levels
  • Prototyping with mixed-voltage systems, such as combining 3.3V and 5V devices

Technical Specifications

Key Technical Details

  • Voltage Range (LV side): 1.2V to 3.6V
  • Voltage Range (HV side): 1.65V to 5.5V
  • Maximum Data Rates:
    • 24 Mbps (Push-Pull)
    • 2 Mbps (Open-Drain)
  • Channels: 4 bidirectional
  • Operating Temperature Range: -40°C to 85°C

Pin Configuration and Descriptions

Pin Number Name Description
1 OE Output Enable (active-high)
2-5 B1-B4 HV side pins
6 GND Ground connection
7-10 A1-A4 LV side pins
11 V_CC HV side supply voltage
12 V_CCA LV side supply voltage

Usage Instructions

How to Use the Component in a Circuit

  1. Power Connections:

    • Connect V_CCA to the lower voltage supply.
    • Connect V_CC to the higher voltage supply.
    • Connect GND to the common ground of both voltage sources.
  2. Signal Connections:

    • Connect the LV logic signals to A1-A4.
    • Connect the HV logic signals to B1-B4.
  3. Output Enable:

    • Connect OE to the higher voltage supply (V_CC) to enable the device.
    • To disable the device, connect OE to GND.

Important Considerations and Best Practices

  • Ensure that the voltage on the LV side does not exceed the voltage on the HV side.
  • Avoid applying signals to the I/O pins when the device is not powered, as this can damage the chip.
  • The OE pin must be high for the device to operate. If not used, connect it directly to V_CC.
  • Decoupling capacitors (typically 0.1 µF) should be placed close to the V_CC and V_CCA pins to filter out noise.

Troubleshooting and FAQs

Common Issues Users Might Face

  • Signal Integrity Problems: Ensure that the data rate does not exceed the maximum specified for the device.
  • Device Not Working: Check that the OE pin is high and that the power supply voltages are within the specified range.

Solutions and Tips for Troubleshooting

  • If the device is not functioning, first verify all power connections and signal connections.
  • Check that the OE pin is properly connected to enable the device.
  • Use an oscilloscope to verify that the voltage levels and signals are within the expected ranges.

FAQs

Q: Can I use the TXB0104 for I2C or SPI communication? A: The TXB0104 is suitable for SPI but not recommended for I2C, as it does not have the necessary open-drain configuration.

Q: What happens if I connect a voltage higher than 3.6V to the LV side? A: Exceeding the maximum voltage on the LV side can damage the device. Always ensure that the voltage levels are within the specified range.

Q: Is the TXB0104 breakout board compatible with an Arduino UNO? A: Yes, the TXB0104 can be used with an Arduino UNO to translate between 5V and 3.3V logic levels.

Example Arduino Code

// Example code for using the TXB0104 with an Arduino UNO
// This code assumes that the OE pin is tied to VCC and always enabled.

void setup() {
  // Initialize the digital pin as an output.
  pinMode(2, OUTPUT); // Corresponds to A1 on the TXB0104
}

void loop() {
  digitalWrite(2, HIGH);   // Set the pin to high (5V)
  delay(1000);             // Wait for a second
  digitalWrite(2, LOW);    // Set the pin to low (0V)
  delay(1000);             // Wait for a second
}

// Note: The actual logic level on the B1 pin will depend on the VCC voltage
// supplied to the TXB0104. If VCC is 3.3V, the high level will be 3.3V.

Remember to adjust the pin numbers and logic levels according to your specific application and the microcontroller you are using.