|
The serial console is a convenient way to interact with the Raspberry Pi when a display isn't handy. From the pinout on the eLinux wiki, I can see that the serial port (aka UART) on the Pi is on GPIO Pin 14 (TX) and GPIO Pin 15 (RX):
This serial port can be connected to your computer via a USB to serial adapter. However, these pins are designed for 3.3V (e.g. 3V3), so some USB to serial adapters may damage the Pi. The simplest option is to use a 3.3V adapter such as:
Another option is to use a logic level converter (e.g. level shifter). This will prevent a higher voltage adapter from damaging the Pi's 3.3V pins. I already had a 5V FTDI cable (TTL-232R-5V) and a SparkFun converter board, so I went this route:
Here is the pinout for my TTL-232R-5V cable (datasheet):
The SparkFun converter board is intended to be used in this configuration:
Here's how I wired it all up:
Raspberry Pi Pin | Jumper Wire | Logic Level Converter: LV side (3.3V) | Logic Level Converter: HV side (5V) | Jumper Wire | FTDI cable |
---|---|---|---|---|---|
3V3 Power | Red | LV | HV | Red | Red (VCC) |
Ground | Green | GND | GND | Green | Black (GND) |
TXD (GPIO 14) | Yellow | TX1 | TX0 | Yellow | Yellow (RXD) |
RXD (GPIO 15) | Blue | RX0 | RX1 | Blue | Orange (TXD) |
Warning: make sure the Pi is turned off and FTDI cable unplugged from the PC before starting to wire up the above connections
Note: TXD (transmit) on the Pi needs to talk to RXD (receive) on FTDI cable, and TXD on the FTDI needs to talk to RXD on the Pi. Otherwise, it would just be a straight-through connection, and communication wouldn't be possible.
Once wired up, power on the Pi and plug the FTDI cable into the PC. Finally, a terminal emulator application will be needed to connect to the Pi. I run Ubuntu Linux and already had gtkterm installed. The program screen is another option for Linux and Mac (OS X). On Windows, HyperTerm or TeraTerm should work. The eLinux wiki has additional information.
In gtkterm, I selected Configuration->Port and set the Port to /dev/ttyUSB0 and Baud to 115200. The rest of the defaults are ok (8 bits, stopbits 1, flow control and parity: none). After clicking OK, I pressed the Enter key a few times and the Pi prompted for username. I was able to log in and then use the shell as I normally would. Here is the utility top running:
Finally, FTDI has created a cable specifically for the Raspberry Pi: TTL-232R-RPi. It is available from the UK-based FTDI web shop, but I've not seen it stocked yet by any distributors I'm familiar with.
Cheers,
Drew
Product Name* | Description | Supplier | ||
Raspberry Pi Model B | Raspberry Pi model B | Raspberry Pi |
| |
Optical Mouse | Basic USB optical mouse | IONE / Pro Signal |
| |
Raspberry Pi Power Supply | 120-240v to 5V power supply with micro USB connector | Raspberry Pi |
| |
Keyboard | Basic USB keyboard | Gear Head / A4 Tech |
| |
Pre-Programmed 4GB SD Card | 4GB Class 4 SD card preloaded with Debian 6 Linux | Samsung |
| |
Adafruit Pi Cobbler | GPIO breakout kit for Raspberry Pi | Adafruit Industries |
| |
Breadboard | Basic breadboard with 830 connection points | Twin Industries |
| |
Jumper wire bundle | Jumper wires for use on breadboard | Bud Industries |
| |
FTDI USB-Serial Cable | 3.3v USB to serial interface cable | FTDI |
|
*Products and resources listed are listed to help members build their own Pi Projects. They are suggestions and listed for educational purposes. For substitutions of any parts, please post a question asking the original author.
Top Comments