Setzen von "Skip" für Chirp-Codeplugs und "SKIP" für Icom-Codeplugs
Analog zum vorigen Beispiel kann man auch benutzerdefinierte Werte setzen, sodass manche Einträge eines Datensatzes den nicht benutzt werden sollen. Das ist derzeit für die Verwendung in Chirp und Icom-Codeplugs (Stichwort Scan-Groups oder D-STAR 'USE') implementiert.
Wieder dienen die Wiener FM Repeater als Beispiel:
memory-channels-processor --source "oevsv-repeater-db" --band 70cm --type "fm" --output-format="csv" --filter "callsign~=OE1X"
callsign,name,band,freq_tx,freq_rx,ctcss_tx,ctcss_rx,dmr,dmr_id,dstar,dstar_rpt1,dstar_rpt2,fm,landmark,state,country,country_code,loc_exact,lat,long,locator,sea_level,scan_group,source_id,source_name,source_provider,source_type,source_license,source_url,offset,dup,ctcss,simplex,split,multimode,name_formatted,distance,heading
OE1XBA,Porrtower,70cm,430.7125,438.3125,162.2,162.2,False,,False,,,True,Favoriten,Wien,Austria,AUT,True,48.16796379539441,16.38715982437134,JN88EE,232,,oevsv-repeater-db,ÖVSV-Repeater Database,ÖVSV UKW Referat,dynamic,CC BY 4.0,https://www.oevsv.at/funkbetrieb/amateurfunkfrequenzen/ukw-referat/,7.6,-,True,False,False,False,OE1XBA,,
OE1XAT,Hermannskogel,70cm,430.875,438.475,162.2,162.2,False,,False,,,True,Grinzing,Wien,Austria,AUT,True,48.27041873853696,16.29355072975159,JN88DG,542,,oevsv-repeater-db,ÖVSV-Repeater Database,ÖVSV UKW Referat,dynamic,CC BY 4.0,https://www.oevsv.at/funkbetrieb/amateurfunkfrequenzen/ukw-referat/,7.6,-,True,False,False,False,OE1XAT,,
OE1XFW,Laaerberg Turm,70cm,431.05,438.65,,,False,,False,,,True,Oberlaa Stadt,Wien,Austria,AUT,True,48.157173,16.396717,JN88ED,252,,oevsv-repeater-db,ÖVSV-Repeater Database,ÖVSV UKW Referat,dynamic,CC BY 4.0,https://www.oevsv.at/funkbetrieb/amateurfunkfrequenzen/ukw-referat/,7.6,-,False,False,False,False,OE1XFW,,
OE1XUU,Kahlenberg,70cm,431.35,438.95,162.2,162.2,False,,False,,,True,Josefsdorf,Wien,Austria,AUT,True,48.276145,16.333217,JN88DG,483,,oevsv-repeater-db,ÖVSV-Repeater Database,ÖVSV UKW Referat,dynamic,CC BY 4.0,https://www.oevsv.at/funkbetrieb/amateurfunkfrequenzen/ukw-referat/,7.6,-,True,False,False,False,OE1XUU,,
OE1XFU,Satzberg,70cm,431.4,439.0,162.2,162.2,False,,False,,,True,Hütteldorf,Wien,Austria,AUT,True,48.21527259679771,16.2613320350647,JN88DF,435,,oevsv-repeater-db,ÖVSV-Repeater Database,ÖVSV UKW Referat,dynamic,CC BY 4.0,https://www.oevsv.at/funkbetrieb/amateurfunkfrequenzen/ukw-referat/,7.6,-,True,False,False,False,OE1XFU,,
Nun wird für die gewünschten Repeater wieder eine Datei erstellt, die die Zuordnung zu den Skip Werten enthält.
Intern werden diese Gruppen in der Spalte skip
verwaltet (siehe Tabelle Verfügbare Variablen).
Beim z.B. Icom IC-705 stehen bei den FM-Speicherplätzen (Memory CH
) zur Markierung der Scan-Gruppen Zugehörigkeit die Gruppen 1
, 2
oder 3
zur Verfügung.
Es sollen die Repeater OE1XBA
und OE1XUU
dem Wert True
und OE1XAT
sowie OE1XFW
dem Wert False
zugeordnet werden.
Alle anderen Repeater wird kein (positiver) Wert zugeordnet.
Als Bezug zwischen den beiden Datensätzen soll die Spalte callsign
dienen.
Die erstellte Datei sollte nun aussehen:
scan_group_mapping.csv
callsign,skip
OE1XBA,True
OE1XAT,True
OE1XFW,False
OE1XUU,
Beide Datensätze können nun mit folgendem Aufruf gemerged (also zusammengefügt) werden:
skip_mapping.csv
)memory-channels-processor --source "oevsv-repeater-db" --band 70cm --type "fm" --output-format="csv" --filter "callsign~=OE1X" --merge-file "skip_mapping.csv" --merge-on "callsign"
Der Memory Channels Processor
fügt nun die Daten zusammen.
In der Spalte skip
sind die Werte aus der benutzerdefinierten Datei eingetragen.
Sollte kein Eintrag "matchen", so wird False
eingetragen.
Für die Ausgabe wird dann der Datensatz noch ins gewünschte Icom CSV-Format transformiert.
Die Werte - transformiert in ON
oder OFF
- finden sich nun in der Spalte SKIP
:
Group No;Group Name;CH No;Name;SEL;Frequency;Dup;Offset;TS;Mode;SKIP;TONE;Repeater Tone;TSQL Frequency;DTCS Code;DTCS Polarity;DV SQL;DV CSQL Code;Your Call Sign;RPT1 Call Sign;RPT2 Call Sign
01;OE 70cm Repeater;00;Porrtower;OFF;438,312500;DUP-;7,600000;12,5kHz;FM;Skip;TONE(T)/TSQL(R);162,2Hz;162,2Hz;23;BOTH N;;;;OE1XBA;
01;OE 70cm Repeater;01;Hermannskogel;OFF;438,475000;DUP-;7,600000;12,5kHz;FM;Skip;TONE(T)/TSQL(R);162,2Hz;162,2Hz;23;BOTH N;;;;OE1XAT;
01;OE 70cm Repeater;02;Laaerberg Turm;OFF;438,650000;DUP-;7,600000;12,5kHz;FM;OFF;OFF;88,5Hz;88,5Hz;23;BOTH N;;;;OE1XFW;
01;OE 70cm Repeater;03;Kahlenberg;OFF;438,950000;DUP-;7,600000;12,5kHz;FM;OFF;TONE(T)/TSQL(R);162,2Hz;162,2Hz;23;BOTH N;;;;OE1XUU;
01;OE 70cm Repeater;04;Satzberg;OFF;439,000000;DUP-;7,600000;12,5kHz;FM;OFF;TONE(T)/TSQL(R);162,2Hz;162,2Hz;23;BOTH N;;;;OE1XFU;
Für die Ausgabe im Chirp-Format wird dann der Datensatz ebenfalls noch transformiert.
Die Werte - transformiert in ▪
oder S
- finden sich nun in der Spalte Skip
:
Location,Name,Frequency,Duplex,Offset,Tone,rToneFreq,cToneFreq,DtcsCode,DtcsPolarity,RxDtcsCode,CrossMode,Mode,TStep,Skip,Power,Comment,URCALL,RPT1CALL,RPT2CALL,DVCODE
00,Porrtower,438.3125,-,7.6,TSQL,162.2,162.2,023,NN,023,Tone->Tone,FM,12.5,S,5W,Porrtower 70cm,,,,
01,Hermannskogel,438.475,-,7.6,TSQL,162.2,162.2,023,NN,023,Tone->Tone,FM,12.5,S,5W,Hermannskogel 70cm,,,,
02,Laaerberg Turm,438.65,-,7.6,,88.5,88.5,023,NN,023,Tone->Tone,FM,12.5,,5W,Laaerberg Turm 70cm,,,,
03,Kahlenberg,438.95,-,7.6,TSQL,162.2,162.2,023,NN,023,Tone->Tone,FM,12.5,,5W,Kahlenberg 70cm,,,,
04,Satzberg,439.0,-,7.6,TSQL,162.2,162.2,023,NN,023,Tone->Tone,FM,12.5,,5W,Satzberg 70cm,,,,