Phipps Electronics

Order within the next 

FREE SHIPPING OVER $199

50,000+ ORDERS

WORLDWIDE SHIPPING

SSL SECURED

← Back
You are here:
Print

CJMCU FT232H USB to JTAG/UART/FIFO/SPI/I2C Module User’s Guide

Overview

The FT232H module is a versatile USB bridge that supports multiple protocols—UART, SPI, I2C, JTAG, and FIFO—via a single USB interface. It’s ideal for high-speed communication, debugging, and programming of embedded systems.


Key Specifications

Feature Details
USB Interface USB 2.0 High-Speed (480 Mbps)
Protocols Supported UART, SPI, I2C, JTAG, FIFO
Voltage Levels 3.3V logic (5V tolerant inputs)
Chipset FTDI FT232H
GPIOs Up to 8 configurable pins
OS Compatibility Windows, macOS, Linux

Driver Installation

Windows

  1. Download FTDI VCP drivers.
  2. Install and reboot.
  3. Confirm COM port in Device Manager.

macOS & Linux

  • Use built-in FTDI support or install D2XX drivers.
  • For Python use, install libftdi or pyftdi.

Pinout Reference

Pin Label Function Notes
AC0-AC9 / D0–D7 GPIO / SPI / UART / I2C / JTAG Configurable via software
+5V 5V from USB Power output
+3.3V 3.3V from LDO Power output
VCORE 1.8V from LDO Power output
GND Ground Common ground

Protocol Usage Guide

UART Mode

  • Use Case: Serial console, bootloader flashing
  • Tools: PuTTY, TeraTerm, Arduino IDE
  • Wiring:
    • D0 → TX
    • D1 → RX
    • GND → GND
  • Baud Rate: Up to 12 Mbps

SPI Mode

  • Use Case: Flash memory access, sensor interfacing
  • Tools: pyftdi.spi, libftdi, OpenOCD
  • Wiring:
    • D0 → MOSI
    • D1 → MISO
    • D2 → SCLK
    • D3 → CS
    • GND → GND

I2C Mode

  • Use Case: EEPROM, RTC, sensor communication
  • Tools: pyftdi.i2c, libftdi
  • Wiring:
    • D0 → SDA
    • D1 → SCL
    • GND → GND
  • Pull-ups: External 4.7kΩ recommended

JTAG Mode

  • Use Case: Debugging ARM/FPGA
  • Tools: OpenOCD
  • Wiring:
    • TCK, TDI, TDO, TMS → Target JTAG pins
    • GND → GND

Python Setup (PyFtdi)

pip install pyftdi

Example: I2C Scan

from pyftdi.i2c import I2cController
i2c = I2cController()
i2c.configure('ftdi://ftdi:232h/1')
print(i2c.scan())

Troubleshooting

Issue Solution
Device not detected Check cable, reinstall driver
Protocol not working Confirm pin mapping and voltage levels
Python errors Use correct URI and install pyftdi
JTAG fails Verify target voltage and pinout

Pro Tips

  • Use external level shifters for 1.8V targets.
  • Combine with logic analyzers for protocol debugging.
  • Use OpenOCD for JTAG workflows with STM32 or FPGAs.
  • For SPI flash programming, try flashrom or pyftdi.spi.

Was this article helpful?
Please Share Your Feedback
How Can We Improve This Article?
Table of Contents
Scroll to Top