https://eblot.github.io/pyftdi/
FTDI device driver written in pure Python
https://eblot.github.io/pyftdi/
Last synced: about 2 months ago
JSON representation
FTDI device driver written in pure Python
- Host: GitHub
- URL: https://eblot.github.io/pyftdi/
- Owner: eblot
- License: other
- Created: 2010-12-13T00:49:37.000Z (over 14 years ago)
- Default Branch: master
- Last Pushed: 2024-04-26T02:40:28.000Z (about 1 year ago)
- Last Synced: 2024-05-18T09:42:18.856Z (12 months ago)
- Language: Python
- Homepage:
- Size: 14.5 MB
- Stars: 481
- Watchers: 29
- Forks: 210
- Open Issues: 88
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hardware-hacking - pyftdi
README
[](https://vshymanskyy.github.io/StandWithUkraine)
# PyFtdi



[](https://vshymanskyy.github.io/StandWithUkraine)[](https://pypi.org/project/pyftdi/)
[](https://pypi.org/project/pyftdi/)
[](https://pypi.org/project/pyftdi/)## Documentation
PyFtdi documentation is available from https://eblot.github.io/pyftdi/
## Overview
PyFtdi aims at providing a user-space driver for popular FTDI devices,
implemented in pure Python language.Suported FTDI devices include:
* UART and GPIO bridges
* FT232R (single port, 3Mbps)
* FT230X/FT231X/FT234X (single port, 3Mbps)* UART, GPIO 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)
* FT4232HA (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## License
`SPDX-License-Identifier: BSD-3-Clause`
## Warnings
### Python support
PyFtdi requires Python 3.9+.
See `pyftdi/doc/requirements.rst` for more details.