Baofeng Audio Interface

Baofeng interface setup

Baofeng has gained a level of noteriety for their extremely affordable and reasonably capable budget handheld radios. In particular, the UV-5R 2m/70cm HT retails for about $30. This presents an opportunity to build a basic APRS station at a relatively low cost. This project covers the design and construction of a small circuit board to implement an isolated audio interface and PTT switching between a UV-5R and a Raspberry Pi or other computer.

Interface Circuit

The circuit is relatively simple, featuring a pair of 1:1 isolation transformers for the receive and transmit audio and an optocoupler for driving the PTT line. The pinout for the Baofeng radio's audio plugs was found here. I used Kicad for schematic capture and PCB layout.

Baofeng interface schematic

Baofeng interface PCB layout Baofeng interface PCB traces

I sent out the design to OSHPark to be fabricated. The cable for connecting to the radio's audio input/output was taken from the cheapest Baofeng handheld external speaker/mic I could find on Amazon.

Raspberry Pi

Raspberry Pi Connection

The 2x4 pin header on the computer side of the board is designed to slot into the GPIO header of a Raspberry Pi. The audio input and output are connected to a USB audio adapter. On the Raspberry Pi B+ I was using, this puts the PTT pin on GPIO pin 18.


To start off, I set up APRS on the Raspberry Pi using the Direwolf soundcard APRS software, following the Raspberry Pi config guide. I used Xastir as my APRS client on my laptop, connecting to the KISS server on the Raspberry Pi. After playing with the audio settings, I was able to get some decodes. Triggering a transmission from Xastir also succesfully triggers the PTT on the Raspberry Pi, but I'm still working through some issues related to timing and audio levels. More details will be posted as they become available!