Talking to the Raspberry Pi with an FTDI Breakout Board

Computers & Mobile Raspberry Pi Technology
Talking to the Raspberry Pi with an FTDI Breakout Board

Raspberry Pi Banner
bubpi1

There are many ways of logging in to your Raspberry Pi without a monitor or keyboard. A convenient trick is to connect through the serial monitor that is listening on two of the GPIO header pins.

One way to connect to the serial port is with a special cable from FTDI that uses their FT232 chip to translate between USB and the TTL signals on the GPIO header. A better way that avoids having to hook up each individual wire each time is to use an FT232 breakout board that was designed to be hacked: the USB BUB I from Modern Device.

One side of the BUB has a 6-pin header that is familiar to anyone who has used an Arduino-compatible board with what has become known as an “FTDI header.” The BUB I also has a handy breakout area that allows you to reroute the signals to any of the pins on a second header. This is useful for connecting to devices with different pinouts like the Raspberry Pi or Parallax Propeller. You can also choose your logic level (5V or the Raspberry Pi’s 3.3V) with a simple jumper. With this breakout area you can have one breakout board that can connect to two different style devices.

The default Raspbian OS for Raspberry Pi launches a serial console on startup, which listens for activity on the serial pins on the GPIO header. With a BUB board you can log in to your Raspberry Pi over the serial connection. The serial UART on the Raspberry Pi is connected to pins 8 (Transmit) and 10 (Receive) as shown below. You’ll need to connect the grounds as well, and there happens to be a GND signal on pin 6.

figure1

Note that the Transmit of the Raspberry Pi is connected to the Receive of the BUB and vice versa, which makes sense when you think about it.

Just jumper the signals to the auxiliary header as shown below. Connect the header to the Raspberry Pi so the signals line up with the proper pins as shown in the photo at the top of this post.

bubpi2

You’ll need the FTDI drivers for your particular OS if you don’t have them already; download the “VCP” drivers from FTDI.

Very important: Confirm that the logic level jumper on the BUB is connected to 3.3V, not 5V.

Once you’ve booted up the Raspberry Pi, connect the BUB and the serial cable to your computer. Each FTDI chip has a unique ID which gets mashed up into the device name, which will be unique for each BUB board. On a Mac or Linux you can see this device in your /dev directory. On a Mac it will be in the form /dev/tty.usbserial-******* where the asterisks are your unique id. My BUB registers as /dev/tty.usbserial-A9014YYQ, for example, which is the same way it appears in the Arduino IDE. On Linux the BUB will show up as /dev/ttyUSB0 (if it’s the only USB device you’ve got plugged in).

On a Mac or Linux use the device name along with the screen program to connect to the Raspberry Pi over the serial connection. The Pi’s serial console is running at 115200 baud, so use the following command:

screen /dev/tty.usbserial-A9014YYQ 115200

or

screen /dev/ttyUSB0 115200

on Linux. Hit return and you should get a login prompt. You’re off and running!

screen

Discuss this article with the rest of the community on our Discord server!
Tagged
Shawn Wallace

Shawn Wallace is a MAKE contributor, artist, programmer, and editor living in Providence, R.I. He designs open hardware kits at Modern Device and organized the Fab Academy at the Providence Fab Lab. He makes iPhone synthesizers with the Fluxama collective and is a member of the SMT Computing Society.

View more articles by Shawn Wallace

ADVERTISEMENT

Escape to an island of imagination + innovation as Maker Faire Bay Area returns for its 16th iteration!

Prices Increase in....

Days
Hours
Minutes
Seconds
FEEDBACK