Skip to main content

Radio Stack

Build log for the Cessna 172SP radio stacks — two GNS 430s, an audio panel and a transponder for the six-pack, and the G1000's COM/NAV heads, GMA 350 and GTX 345.

6 min read Updated 2026-10

Overview

The radio stack sits in the centre of the instrument panel, and it differs between the two avionics modules. The six-pack module carries the radios X-Plane 12's default Skyhawk has: two Garmin GNS 430 COM/NAV/GPS units, an audio panel and a transponder. The G1000 module tunes its radios on the PFD and MFD, so its stack is a set of standalone heads kept for the feel of a real knob.

Each unit is its own ESP32, so a unit can be built, tested and replaced on its own. In the app they're part of the Cessna 172 (six-pack) and Cessna 172 G1000 Blueprints.

Six-Pack Radio Stack

UnitFunction
GNS 430 #1COM1 / NAV1 and GPS
GNS 430 #2COM2 / NAV2 and GPS
Audio panelTransmit and monitor selection, marker beacon lights
TransponderSquawk code entry, mode, reply light

GNS 430

Both GNS 430s are wired the same way, so one design is built twice. The GNS screen stays an X-Plane pop-out window on a small monitor behind the bezel; the bezel carries everything you touch.

ControlPartX-Plane 12
COM/VLOC knob, outer / innerConcentric encodersim/GPS/g430n1_coarse_up / _down, fine_up / _down
COM/VLOC knob pushPush buttonsim/GPS/g430n1_nav_com_tog
COM and VLOC flip-flopPush buttonssim/GPS/g430n1_com_ff, nav_ff
C/VOL and V/VOLPotentiometers with pushsim/cockpit2/radios/actuators/audio_volume_com1, audio_volume_nav1; push g430n1_cvol, vvol
FMS knob, outer / inner, pushConcentric encoder, push buttonsim/GPS/g430n1_chapter_up / _dn, page_up / _dn, cursor
RNGRockersim/GPS/g430n1_zoom_in, zoom_out
D→, MENU, CLR, ENTPush buttonssim/GPS/g430n1_direct, menu, clr, ent
CDI, OBS, MSG, FPL, PROC, VNAVPush buttonssim/GPS/g430n1_cdi, obs, msg, fpl, proc, vnav

The second unit uses g430n2_*, COM2 and NAV2; only the first has a VNAV key in the Skyhawk. Active and standby COM and NAV frequencies show on four 6-digit seven-segment windows on one MAX7219 chain.

The 18 keys sit on two MCP23017 I²C expanders (GPIO 21 SDA, 22 SCL); the encoders and the two volume potentiometers (ADC1, GPIO 34 and 35) use the ESP32's own pins.

Audio Panel

KeyCommandLamp
COM1 MICsim/audio_panel/transmit_audio_com1lit while audio_com_selection is 6
COM2 MICsim/audio_panel/transmit_audio_com2lit while audio_com_selection is 7
COM1, COM2, NAV1, NAV2, ADFsim/audio_panel/monitor_audio_*audio_selection_com1 … audio_selection_adf1
DMEsim/audio_panel/monitor_audio_dmeaudio_dme_enabled
MKRsim/annunciator/marker_beacon_mute_or_offaudio_marker_enabled
SENSsim/annunciator/marker_beacon_sens_toggle—

The outer, middle and inner marker lights follow sim/cockpit2/radios/indicators/outer_marker_lit, middle_marker_lit and inner_marker_lit. The keys are on an MCP23017; the 12 lamps are LEDs on the ESP32's own pins.

Transponder

Keys 0–7, CLR, IDENT, OFF, STBY, ON and ALT send sim/transponder/transponder_digit_0 … _7, transponder_CLR, transponder_ident, transponder_off, transponder_standby, transponder_on and transponder_alt. A 4-digit window shows the squawk (transponder_code, padded as 0743), a second one the mode (OFF, STBY, ON, ALT), and an LED the reply light.

G1000 Radio Stack

In the G1000 module the stack sits in the lower centre: the GMA 350 audio panel at the top, the COM1/NAV1 and COM2/NAV2 heads, and the GTX 345 transponder at the bottom. In a G1000-equipped aircraft the heads are largely redundant with the G1000's own COM/NAV tuning, but they are retained for their physical presence and the tactile feel of tuning a radio with a real knob. They tune the same radios the PFD does.

UnitFunction
Garmin GMA 350Audio panel — transmit and monitor selection
COM1/NAV1Primary comm and nav radio head
COM2/NAV2Secondary comm and nav radio head
GTX 345Mode S transponder with ADS-B

COM/NAV Heads

Both heads are wired alike, each on its own ESP32. A COM and a NAV concentric knob tune the standby frequency (sim/radios/stby_com1_coarse_up / _down, stby_com1_fine_up / _down, and the NAV and second-radio siblings), and a flip-flop button swaps it (sim/radios/com1_standy_flip, nav1_standy_flip). Active and standby COM and NAV frequencies show on four 6-digit seven-segment windows on one MAX7219 chain, as on the six-pack's GNS 430s.

GMA 350

The same keys and lamps as the six-pack's audio panel (COM1 MIC, COM2 MIC, COM1, COM2, NAV1, NAV2, ADF, DME), with MKR as a monitor key: sim/audio_panel/monitor_audio_mkr, lit from audio_marker_enabled. The G1000 shows the marker beacons on the PFD, so the GMA 350 has no marker lights.

GTX 345

Like the six-pack's transponder, with VFR in place of OFF: keys 0–7, CLR, IDENT, VFR, STBY, ON and ALT (sim/transponder/transponder_vfr for VFR). The mode window also shows GND when X-Plane puts the transponder in ground mode.

Status

Both stacks: wiring and X-Plane mapping defined (Cessna 172 six-pack and G1000 Blueprints). Physical build not started.