FTDI bitbang library + command line utilities

I have had a bunch of different FTDI (FT232H, FT2232H) based designs around for a long time. Some for work, some for personal use. I have never found any easy solution for controlling stuff connected to them without writing too much code compared to the need at hand. So I finally got around and wrote few tools and libraries that make things easier.

Ended up, for now, with two libraries and three command line tools: https://github.com/aehparta/ftdi-bitbang

The command line tools are based on state saving extension (libftdi-bitbang) of libFTDI. This makes it possible to connect example HD44780 LCD, few LEDs and some inputs to single channel of any FTx232 chip and to use them all without interfering with the others. At work we use this to analyze IR-signals semiautomatically, debug our devices at the same time while programming them using example avrdude, doing communication through wireless SPI chips, programming in production environment with proper testing and so on.

Here is a digital analyzer circuit (FT232H) as LED blinker and a device programmer (FT2232H) under it’s first test:



Library for doing bitbang operations. Based on libFTDI, which itself can do anything my library can.

Primary reason for this library is states. It keeps them. This library makes it possible to keep the state of device consistent even between process executions, so it fits well for use with command line tools.


Library for manipulating HD44780 based LCD displays in 4-bit mode.

Command line tools


Command line tool for manipulating FTDI chips. Useful example for bash scripts etc.


Mostly useful for manipulating eeprom contents of FTDI chips.


Manipulate HD44780 based LCD displays in 4-bit mode through command line.



Leave a Reply

Your email address will not be published. Required fields are marked *