--- id: pylibftdi version: "0.24.0" license: MIT license_treatment: permissive maintenance: active --- # pylibftdi — Pythonic interface to FTDI devices using libftdi. License: permissive · Maintenance: active · Downloads: 93.3K/mo ## What it is and what it does pylibftdi wraps the libftdi C library to give Python developers a high-level, Pythonic interface to FTDI USB devices. It abstracts away low-level libftdi calls and provides file-like objects for reading and writing, making it straightforward to control serial and parallel IO devices like the UM232R. The package supports multiple connected devices, text/binary modes with configurable encoding, and includes convenience wrappers for common external devices such as HD44780 LCDs. The library is designed for embedded systems work and hardware control—typical use cases include reading sensor data over USB serial, toggling parallel IO pins, or driving external displays. It requires only the libftdi system library and Python 3.10 or later, with no additional Python dependencies, keeping installation friction minimal. Use it for: - Read sensor or telemetry data from FTDI serial devices at configurable baud rates. - Control parallel IO pins on FTDI devices for relay switching or LED control. - Interface with HD44780 character LCD displays via FTDI bitbang mode. - Manage multiple FTDI devices simultaneously in a single application. - Prototype embedded hardware communication without writing C code. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Pythonic interface to FTDI USB devices via libftdi, providing serial and parallel IO with file-like read/write operations and support for multiple devices. Yes, if you need to control FTDI USB devices from Python. The package is actively maintained, has no Python dependencies, supports current Python versions, and carries no known vulnerabilities. Install friction is low. The MIT license poses no restrictions. The only prerequisite is having libftdi installed on your system and an FTDI device to communicate with. ## Install pip install pylibftdi uv add pylibftdi poetry add pylibftdi ## Installing pylibftdi Before you install: Low friction: pure Python wheel with no runtime dependencies beyond libftdi itself. Actively maintained with recent commits and supports modern Python versions (3.10–3.14). License in practice: MIT license permits unrestricted use, modification, and distribution in commercial and private projects with minimal attribution requirements. Quickstart: from pylibftdi import Device with Device(mode='t') as dev: dev.baudrate = 115200 dev.write('Hello World') Requires libftdi library installed on the system; FTDI device must be connected and recognized by the OS. Verify before relying: - Specific libftdi version requirements or compatibility matrix with different libftdi releases. - Whether BitBangDevice and HD44780 LCD support are production-ready or still experimental. - Performance characteristics when handling multiple simultaneous devices. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 93.3K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags ftdi usb device interface, libftdi python wrapper, serial parallel io ftdi, usb device control python, ftdi device communication, bitbang parallel io, ftdi multiple devices, usb-hardware, embedded-systems, ftdi [View on SkillFed](https://skillfed.io/packages/pylibftdi) · [View on PyPI](https://pypi.org/project/pylibftdi/)