Skip to content

Instantly share code, notes, and snippets.

@EvenAR
Last active November 25, 2024 07:41
Show Gist options
  • Save EvenAR/3ea94c95e67184c257d04ce878bde2f7 to your computer and use it in GitHub Desktop.
Save EvenAR/3ea94c95e67184c257d04ce878bde2f7 to your computer and use it in GitHub Desktop.

ATC Microphone Build Guide

A guide for converting a handheld microphone (with PTT) into a USB microphone for use on VATSIM.

Microphone

⚠️ Disclaimer

I do not have formal education in electrical engineering or electronics. This guide is based on my personal experiences and experimentation. While I strive to provide accurate information, I cannot guarantee the safety or effectiveness of these methods. Please proceed with caution, especially when working with soldering or modifying electrical components.

Constructive feedback and tips for improving this guide are welcome and can be commented below.

Getting a microphone

Holmco and Peiker are two common brands used by Norwegian air traffic control towers and centers. They also seem to be quite common among home amateur radio enthusiasts making them relatively easy to get hand of on the second hand market. Two popular models are Holmco MH-50 and the Peiker TM110. Both Peiker and Holmco are German brands, so a good place to look is ebay.de. Search terms such as "Peiker," "Stabmikrofon," or "Holmco" often yield relevant results. Although listings may specify shipping to Germany only, many sellers are willing to ship internationally. If you are lucky you might get one in very good condition for 50 EUR or less.

If you are looking for unused Peiker microphones you should check out Oppernann-Telekom.de. I believe they also sell used microphones occasionally.

Holmco MH-50 Peiker TM110
Holmco MH-50 Peiker TM110

Building the USB Adapter

Microphone adapter overview

The diagram above shows the basic concept for interfacing the microphone with a computer. To build this adapter box, you will need the following components:

  1. USB sound card for the audio
  2. USB gamepad for the PTT
  3. USB hub to consolidate the connections into a single USB cable
  4. USB cable to connect to your computer
  5. 5-pin connector matching the plug on the microphone

Below are some notes about selecting the right components.

Connectors

Microphones sold on eBay come with various connectors, or none at all. In any case you should get a panel connector to mount on the adapter box. I recommend replacing the connector with a 5-pin GX16 connector. If you are good at soldering the YC8 connector is also a great choice. Be sure to order both a male connector for the cable and a female "panel type" connector for the enclosure box.

GX16 5-pin YC8 5-pin
image image

Audio signal

The microphone circuit is usually separated from the PTT circuit, meaning that you should be able to record audio without pressing the PTT. The PTT is only for activating "transmission" in the voice application on your PC.

If, however, the PTT is part of the microphone circuit I recommend that you open up the mic housing and rewire it. Turning the mic on and off with the PTT (disconnecting it every time you release the PTT) is not ideal because the sound card will take time to adjust its gain each time the mic is reconnected.

One way to get audio from the microphone to your computer is to simply connect it to the 3.5 mm microphone input on your computer's motherboard. However, depending on the microphone's specs and your computer's sound card, the signal might be too weak. A USB sound card with decent audio quality ensures consistent sound across any computer you connect it to.

These unbranded blue USB sound cards with the C-Media CM108 chip works fairly well. They are cheap, compact and the electrical components are easy to access. They also provide a high bias voltage (around 5v) which may be required to drive some microphones. You can plug it into a USB output or solder a USB cable directly to the 4 exposed connection surfaces. Unfortunately some units I have come across have had a noticeable whining background noise, and unless you know how to fix that (I don't), I recommend ordering at least two and picking the best one.

CM108 Sound Card

Preventing electromagnetic interference (buzzing noise)

When you cut off the plug and strip off the outer insulation, you'll typically find four cords wrapped in a loose copper shield (see image below).

Mic Cords

The purpose of the copper shield is to protect the wires against electromagnetic interference. However this will only work if the shield is connected with ground. I suggest twisting and soldering it to one of the connector pins and making the connection to microphone ground on the USB sound card inside the box. Make sure the copper wire is properly insulated to prevent it from making contact with the other wires, for instance by covering it with a shrink tube (this is crucial!).

If you hear a background buzzing only when touching the metal sleeve of the microphone, ensure the metal sleeve has electrical contact with the copper shield wire (ground).

Addressing low audio signal

If you purchase a second-hand microphone, it is likely a dynamic microphone that requires signal amplification. Depending on the microphone's specifications, some may produce sufficient audio levels for the USB sound card, while others may be too faint.

In the latter case, you have two options:

  1. Replace the internal microphone with one that is suitable for the USB sound card (recommended)
  2. Use an amplifier (see the end of this guide)

The PTT signal

The PTT is simply a momentary on/off button. There are several ways to interface it with your computer.

Using a USB gamepad or similar

The easiest way to interface the PTT with a PC is to buy a cheap gamepad, take it apart, and solder the two PTT wires from the microphone directly to one of the contact surfaces underneath the gamepads buttons. Voice applications like "Audio for VATSIM" supports a gamepad/joystick button for push-to-talk (PTT). This solution is simple and effective.

Arduino Beetle

Even with the housing removed, USB gamepads are relatively large. For a more compact option you may consider the "Arduino Beetle." This Arduino is based on the ATMEGA32U4 chip, which can be programmed to function as a USB gamepad (ArduinoJoystickLibrary). Note that you will need some basic knowledge when it comes to Arduino and handling libraries. However, once it's been programmed, simply solder the PTT circuit to one of its analog inputs, and it's plug-and-play!

Using the USB sound card (advanced!)

A third option: the CM108 (similar to the CM119) microcontroller on the USB sound card I've recommended has some unused GPIO (general-purpose input/output) pins that can interface with the PTT. This is the most compact option since you can eliminate the USB hub and USB gamepad completely — just a USB sound card is needed. Be aware that this option requires careful soldering, and it's easy to damage the USB sound card if you make a mistake. More about this in the final part of this guide.

USB Gamepad Arduino Beetle CM119 Chip
USB Gamepad Arduino Beetle CM119 Chip Wiring

Additional reading

Using the USB sound card to interface the PTT (advanced!)

The recommended USB sound card (and most other C-Media sound cards based on CM108 and CM119) feature some unused GPIO pins that can be used for PTT control. This blog post, focusing on HAM radio hardware, inspired me to try interface the PTT button using the USB sound card, eliminating the need for a gamepad or USB hub. I found that it is possible!

CM119 Chip Wiring

On the CM119 chip, connect one end of the PTT circuit to the REGV pin (pin 37, which is simply a power supply source) and the other to the GPIO3 pin (pin 13). Be careful, as short-circuiting adjacent pins may prevent the USB device from working. A useful trick is to use a 30-gauge wire which is so thin that it can be thread under the adjacent pins which will help holding it in place while soldering.

Mikrofon-ptt drawio

What I've tried to illustrate above is a "pull-up circuit": when the PTT is not pressed, the GPIO pin reads "high" (current flows to the pin), and when pressed, it reads "low" (current flows to ground). You can also use a "pull-down circuit". In any case I recommend adding a resistor since the GPIO pin requires very little current to detect a change. I used a 4.4 kOhm resistor.

With this option you may actually be able to fit all components inside the microphone's metal sleeve, meaning that you can have a single USB cable running directly from the microphone to your computer.

To emulate a keyboard stroke you can use this little program that I've written: HidPttEmulator. This program works only on Windows, but I'm pretty sure similar software can be written for Mac and Linux as well.

Compact Mic

Amplifiers

I found a very small board online that features both an amplifier (MAX4466) and an audio compressor (SSM2167), compact enough to fit inside the microphone housing. The amplifier boosts the audio signal, while the compressor reduces the dynamic range, making the sound much clearer and crisper. The power consumption is so low that it can even be powered by the bias output from the CM108 chip. Sounds perfect, right?

Unfortunately, I'm not completely satisfied with these. While they do amplify the audio from the dynamic microphone nicely, they also introduce a loud "pumping" noise in the background. I haven't been able to pinpoint the issue yet, but after reviewing the SSM2167 datasheet, it seems like the problem might be related to the capacitor value on the PCB. If anyone finds a solution - please share it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment