Raspberry Pi Serial Console


Often you may need to run Raspberry Pi headless, that is without monitor and keyboard+mouse. To access this Raspberry Pi then you use SSH or similar remote access utility from your PC. The method requires that there is network connection between Raspberry Pi and your PC. Even if the Raspberry Pi is network connected but configured to use dynamic IP address, you may not know its IP address to make the connection.

This issue can be easily alleviated by using serial terminal, commonly used by old generation of computers when point-to-point communication speed was still around 9600 bps. This method requires:

  1. PC with serial terminal program such as CoolTerm, PuTTY (serial option) etc
  2. USB to Serial adapter like the one I discussed in my previous post. Since Raspberry Pi GPIO works at 3.3V logic level and PC USB uses 5V logic level, it is important that the adapter also has voltage level converter from 5V to 3.3V otherwise it may damage your Raspberry Pi.

The Raspberry Pi serial port to connect to the PC serial terminal consists of two signals , TxD at GPIO14 and RxD at GPIO15 made available on the GPIO header. You need three Dupont 1P Female to Female Jumper Cables to make the following connection:

  1. Raspberry Pi GPIO14 pin (TxD) to USB to Serial Adapater RxD pin.
  2. Raspberry Pi GPIO15 pin (RxD) to USB to Serial Adapater TxD pin.
  3. Raspberry Pi GND pin to USB to Serial Adapter GND pin.

Your PC serial terminal need to be configured with the correct COM port and set with the following parameters to connect to the Raspberry Pi linux console:

  • Speed (baud rate): 115200
  • Bits: 8
  • Parity: None
  • Stop Bits: 1
  • Flow Control: None

Once set and wired up, power on the Raspberry Pi. You should see the Raspberry Pi boot messages and finally the login prompt that you treat as standard linux command window.