Bit-bang FTDI USB-to-serial converters to drive SPI devices

Posted on Wednesday, June 13th, 2018 in how-to, techniques by DP


Scott W Harden writes , “The FT232 USB-to-serial converter is one of the most commonly-used methods of adding USB functionality to small projects, but recently I found that these chips are capable of sending more than just serial signals. With some creative programming, individual output pins can be big-banged to emulate a clock, data, and chip select line to control SPI devices.
This post shares some of the techniques I use to bit-bang SPI with FTDI devices, and some of perks (and quirks) of using FTDI chips to bit-bang data from a USB port. ”

See the full post on Scott Harden’s blog .

Check out the video after the break


This entry was posted on Wednesday, June 13th, 2018 at 12:42 pm and is filed under how-to, techniques. You can follow any responses to this entry through the RSS 2.0 feed. You can skip to the end and leave a response. Pinging is currently not allowed.

3 Responses to “Bit-bang FTDI USB-to-serial converters to drive SPI devices”

  1. Kevin says:

    A bit sad that you are using a knock off Saleae device unless you are not using Saleae software.

  2. imqqmi says:

    Also interesting to note that arduino’s use the DTR signal to reset the device. I found this out because repetier was able to do this with a marlin firmware on Arduino 2560. Not all usb to serial chips have this signal as an output pin though. I wanted to send gcode through my own program in c#.

  3. Ralph Doncaster says:

    While it is a thorough description, bitbang serial programming is nothing new.
    For those who don’t want to modify a pl2303hx, CP2102 adapters with pins/pads for DTR, RTS, etc. can be foumd for $1 on Aliexpress. FTDI is way overpriced in comparison.

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Recent Comments

  • Max: Thanks for the writeup, it's always interesting to read about a different culture. Other than that though I'm afraid I was spoiled by living neither...
  • Tepa: Heps keikkaa
  • Dan: Pick Me!!!
  • hli: Sunday++
  • Jack: May I have something to do with multiplexing various input signals, such as from different sensors, please? Thanx!