Radio with Red Griffin ATC¶
Red Griffin ATC adds controllers with voice and text. Background is in the article Red Griffin ATC: Fehler und Funk-Helfer (German).

Installation¶
Download the add-on from SourceForge and extract it to Addons/RedGriffinATC. Then apply the fixes for version 2.3.0:
cd "$FG_BASIS/downloads"
curl -LO https://codemich.de/medien/redgriffin/redgriffin_patch.zip
unzip -o redgriffin_patch.zip -d redgriffin_patch
find "$FG_BASIS/Addons/RedGriffinATC" -name rgatc.nas
The find command shows where rgatc.nas is. Back it up and replace it with the one from the patch. With another version, better apply the two changes below by hand.
Start¶
"$FG_BASIS/werkzeuge/starten.sh" --aircraft=c172p --airport=EDDE \
--addon="$FG_BASIS/Addons/RedGriffinATC" \
--prop:/rgatc/include-manufacturer=No \
"--prop:/rgatc/atc-text-position=Bottom Center" \
--prop:/sim/sound/atc/enabled=false
The two fixes¶
Station names: “Leipzig/Halle” became “Leipzig/halle”.
var cw = "";
var up = 1;
for(var k = 0; k < size(w); k += 1)
{
var c = chr(w[k]);
if(c == "/")
c = "-";
cw ~= up ? string.uc(c) : c;
up = (c == "-");
}
stationName ~= cw;
Nasal error on approach: Without a clearance, approvedCtr is empty.
if(approvedCtr != nil and currentCtr != nil and approvedCtr.ident == currentCtr.ident
and radioIsTunedToApprovedCtrRadio == 1)
Radio calls from your own scripts¶
The helper funk_helfer.nas from the patch reacts to two properties. It belongs in the Nasal folder in the overlay:
cd "$FG_BASIS/fgdata-overlay"
rm Nasal && mkdir Nasal
for e in ../fgdata/Nasal/*; do ln -s "$(realpath "$e")" "Nasal/$(basename "$e")"; done
cp "$FG_BASIS/downloads/redgriffin_patch/funk_helfer.nas" Nasal/
Then Python calls like this:
from fg_steuerung import Fg
fg = Fg()
fg.set("/funk/rufzeichen", "D-ABCD")
fg.set("/funk/flughafen", "EDDE")
fg.set("/funk/anfrage", 2) # 2 start-up, 4 taxi, 5 ready for departure, 8 ILS approach, 12 ILS established
Pitfalls¶
Wrong station: Without a set frequency, Red Griffin takes the nearest one from its list. The helper sets the airport’s station.
“inconsistent frequency settings”: A frequency outside the nearby list has no voice. The helper adds it.
Callsign:
RgATC.initRgATC()loads the last saved callsign on the first radio call. So set the one you want in/funk/rufzeichenfirst.