FTDI device driver (pure Python)
Project description
Documentation
The latest PyFtdi online documentation is always available from here.
Beware the online version may be more recent than the PyPI hosted version, as intermediate development versions are not published to PyPi.
PyFtdi documentation can be locally build with Sphinx, see the installation instructions.
Source code
PyFtdi releases are available from the Python Package Index from PyPi.
PyFtdi development code is available from GitHub.
Overview
PyFtdi aims at providing a user-space driver for popular FTDI devices, implemented in pure Python language.
Supported FTDI devices include:
- UART and GPIO bridges
- FT232R (single port, 3Mbps)
- FT230X/FT231X/FT234X (single port, 3Mbps)
- UART and multi-serial protocols (SPI, I2C, JTAG) bridges
- FT2232C/D (dual port, clock up to 6 MHz)
- FT232H (single port, clock up to 30 MHz)
- FT2232H (dual port, clock up to 30 MHz)
- FT4232H (quad port, clock up to 30 MHz)
Features
PyFtdi currently supports the following features:
- UART/Serial USB converter, up to 12Mbps (depending on the FTDI device capability)
- GPIO/Bitbang support, with 8-bit asynchronous, 8-bit synchronous and 8-/16-bit MPSSE variants
- SPI master, with simultanous GPIO support, up to 12 pins per port, with support for non-byte sized transfer
- I2C master, with simultanous GPIO support, up to 14 pins per port
- Basic JTAG master capabilities
- EEPROM support (some parameters cannot yet be modified, only retrieved)
- Experimental CBUS support on selected devices, 4 pins per port
Supported host OSes
- macOS
- Linux
- FreeBSD
- Windows, although not officially supported
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.