

Baofeng PTT
Bluetooth PTT board for Baofeng UV-5R
- Size
- 59 × 28 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 10
- Nets
- 9
- Pads
- 68
- Tracks, vias
- 63, 4
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 24 Jun 2020
- Updated
- 12 Aug 2021
Overview
Baofeng PTT is an open-source printed circuit board by mrkeuz, from the mrkeuz/hamptt repository on GitHub, published under the MIT licence. It is a 2-layer board of 59 × 28 mm with 10 parts on 9 nets, routed with 63 tracks and 4 vias.
It is built around the ULN2003. Its parts include 5 connectors and 1 IC. It belongs with the radio and wireless boards and the ESP32 boards of this library.
Main components
1README
README.mdHam PTT
Bluetooth PTT switch for ham radio transmitters like Baofeng UV-5R.
Board helps to control transmitter from PC.
Motivation
Testing of UART interface showed unstable connection. During transmit via UART an usb-ttl chip periodically crashes and stops working. Cause is some radio strong interference on USB cable. So Bluetooth serial protocol stack (SSP) chosen instead.
Schematic
Host -> (Bluetooth) -> Esp-32 Arduino -> Relay -> Transmitter PTT button
-
Hardware
- Host PC with Bluetooth (tested Ubuntu 20.04)
- Esp32 DevKit v1 (or similar esp32)
- Relay shield
- Baofeng UV-5R
Examples
- Find BT devices
hcitool scan - Python
from hamptt import open_ptt
with open_ptt(bt_addr="A0:B1:C2:D3:E4:F5") as ptt:
ptt.begin()
# I.e. play message to transmitter or something else
ptt.end()Install
-
Host PC machine
-
Python 3.8
-
Bluetooth's libs (required for pybluez)
shell sudo apt-get install bluez libbluetooth-dev -
Pip
shell python3 -m pip install "hamptt[bt]"
-
-
Esp32
-
Upload sketch to your esp-32 via PlatformIO
NOTE! Check your board config inplatformio.ini(see: https://platformio.org/)text pio run -t upload -
Connect pins Esp-32 to relay
- VVC -> Relay +
- GND -> Relay -
- GPIO D25 -> Relay IN
-
Connect relay and audio, for Baofeng UV-5R it looks like:

NOTE: You can rebuild your hands-free cable or buy another one
-
Development
-
Build and install
shell pip3 uninstall hamptt rm -rf dist && poetry build && pip3 install ./dist/*.whl -
Publish
-
Prepare
shell poetry config repositories.testpypi https://test.pypi.org/legacy/ poetry config pypi-token.testpypi <TOKEN> poetry config repositories.pypi https://upload.pypi.org/legacy/ poetry config pypi-token.pypi <TOKEN> -
Publish
shell poetry publish --build -r testpypi poetry publish --build -r pypi
-
Parts
10| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | Ferrite_Bead | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | FB1, FB2, FB3, FB4 |
| 1 | Conn_01x15 | Connector_PinSocket_2.54mm:PinSocket_1x15_P2.54mm_Vertical | J3 |
| 1 | Esp32 | Connector_PinSocket_2.54mm:PinSocket_1x15_P2.54mm_Vertical | J5 |
| 1 | IN | User:Audio_5conn | J1 |
| 1 | OUT | User:Audio_5conn | J2 |
| 1 | Transmitter | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J8 |
| 1 | ULN2003 | Package_DIP:DIP-16_W7.62mm | U1 |
Questions
How big is the Baofeng PTT PCB?
It measures 59 × 28 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Baofeng PTT use?
10 parts, built around the ULN2003. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Baofeng PTT KiCad files?
From the mrkeuz/hamptt repository on GitHub, at the commit this page was made from: the board is src/kicad/Baofeng-PTT/Baofeng-PTT.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Baofeng PTT design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 4 layers99.6 × 76.2 mm

- 2 layers31 × 64 mm

Power driver
jmfriedt/SDR-GB-SAR
Opensource, openhardware implementation of a Software Defined Radio (SDR) Ground Based Synthetic-Aperture RADAR (GB-SAR)
6 parts70 - 2 layers160 × 100 mm

MPCNC Nano Estlcam Shield
tnn85/MPCNC-Nano-Estlcam-Shield
Ein CNC Shield für die MPCNC in Verwendung mit Estlcam
96 parts70 - 2 layers42.5 × 43.2 mm

ElectronicFocuser
jlecomte/ascom-oag-focuser
Open Source ASCOM-Compatible OAG Focuser For Astrophotography
4 parts55MIT - 4 layers100 × 49.8 mm

- 2 layers134 × 91 mm

- 2 layers75 × 60 mm

DUTler V2
TheYoctoJester/dutler
A bench butler for your Device Under Test: turns a Raspberry Pi Pico into a USB-serial console bridge with power-relay and MOSFET strap/reset control for embedded-Linux bring-up and hardware-in-the-loop.
54 parts23Apache-2.0 - 4 layers76 × 82.5 mm

Nucleo64 CNC
terjeio/CNC_Breakout_Nucleo64
CNC breakout for STM324F411 and ST32F446 development boards
120 parts22