The PX4 System Console provides low-level access to the system, debug output and analysis of the system boot process.
The console is made available through a (board-specific) UART that can be connected to a computer USB port using a 3.3V FTDI cable. This allows the console to be accessed using a terminal application.
Pixhawk controller manufacturers are expected to expose the console UART and SWD (JTAG) debug interfaces through a dedicated debug port that complies with the Pixhawk Connector Standard. Unfortunately some boards predate this standard or a non-compliant.
Developers targeting a number of different boards may wish to use a debug adapter to simplify connecting multiple boards. For example, the Dronecode probe comes with connectors for the Pixhawk Debug Port and several other boards.
The sections below outline/link to the wiring and system console information for many common boards.
The System Console UART pinouts/debug ports are typically documented in autopilot overview pages (some are linked below):
- 3DR Pixhawk v1 Flight Controller (also applies to mRo Pixhawk, HobbyKing HKPilot32)
- Pixhawk 3
Flight controllers that adhere to the Pixhawk Connector standard use the Pixhawk Standard Debug Port.
The port/FTDI mapping is shown below.
|Pixhawk Debug Port||-||FTDI||-|
|1 (red)||TARGET PROCESSOR VOLTAGE||N/C (used for SWD/JTAG debugging)|
|2 (blk)||CONSOLE TX (OUT)||5||FTDI RX (yellow)|
|3 (blk)||CONSOLE RX (IN)||4||FTDI TX (orange)|
|4 (blk)||SWDIO||N/C (used for SWD/JTAG debugging)|
|5 (blk)||SWCLK||N/C (used for SWD/JTAG debugging)|
|6 (blk)||GND||1||FTDI GND (black)|
After the console connection is wired up, use the default serial port tool of your choice or the defaults described below:
Install screen on Ubuntu (Mac OS already has it installed):
sudo apt-get install screen
- Serial: Pixhawk v1 / Pixracer use 57600 baud
- Serial: Snapdragon Flight uses 115200 baud
Connect screen at BAUDRATE baud, 8 data bits, 1 stop bit to the right serial port (use
ls /dev/tty* and watch what changes when unplugging / replugging the USB device). Common names are
/dev/ttyACM0 for Linux and
/dev/tty.usbserial-ABCBD for Mac OS.
screen /dev/ttyXXX BAUDRATE 8N1
Download PuTTY and start it.
Then select 'serial connection' and set the port parameters to:
- 57600 baud
- 8 data bits
- 1 stop bit