DumpVDL2: Porovnání verzí
Z Poznámkový blok
(→Test) |
(→systemctl) |
||
| (Není zobrazeno 16 mezilehlých verzí od stejného uživatele.) | |||
| Řádka 1: | Řádka 1: | ||
== Úvod == | == Úvod == | ||
* Odkaz na vlastní projekt https://github.com/szpajder/dumpvdl2 | * Odkaz na vlastní projekt https://github.com/szpajder/dumpvdl2 | ||
| + | == Příprava == | ||
| + | |||
| + | sudo apt install build-essential cmake git libglib2.0-dev pkg-config | ||
| + | |||
| + | Nainstalujeme [[ libacars ]] | ||
| + | cd | ||
| + | git clone https://github.com/szpajder/libacars | ||
| + | |||
| + | cd libacars | ||
| + | mkdir build | ||
| + | cd build | ||
| + | cmake ../ | ||
| + | make | ||
| + | sudo make install | ||
| + | sudo ldconfig | ||
| + | |||
| + | == Instalace == | ||
| + | |||
| + | cd | ||
| + | git clone https://github.com/szpajder/dumpvdl2.git | ||
| + | cd dumpvdl2 | ||
| + | |||
| + | mkdir build | ||
| + | cd build | ||
| + | cmake ../ | ||
| + | |||
| + | cmake se pokusí najít všechny požadované knihovny a ovladače SDR. Pokud povinná závislost není nainstalována, vyhodí chybu. Chybějící volitelné závislosti způsobí deaktivaci příslušných funkcí. Na konci procesu cmake zobrazí krátké shrnutí konfigurace. Pokud je vše v pořádku, můžeme pokračovat. | ||
| + | |||
| + | make | ||
| + | sudo make install | ||
| + | |||
| + | |||
== Test == | == Test == | ||
Spuštění pro test | Spuštění pro test | ||
dumpvdl2 --rtlsdr 0 --gain 48 --correction 50 136725000 136775000 136800000 136825000 136875000 | dumpvdl2 --rtlsdr 0 --gain 48 --correction 50 136725000 136775000 136800000 136825000 136875000 | ||
| + | |||
| + | == systemctl == | ||
| + | Pro automatické spouštění je nutne nastavit službu | ||
| + | sudo systemctl edit --force --full dumpvdl2.service | ||
| + | |||
| + | [Unit] | ||
| + | Description=DumpVDL2 | ||
| + | Documentation= https://github.com/szpajder/dumpvdl2 | ||
| + | After=network-online.target | ||
| + | |||
| + | [Service] | ||
| + | Type=simple | ||
| + | ExecStart=/etc/default/dumpvdl2 | ||
| + | |||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | Alias=dumpvdl2.service | ||
| + | |||
| + | Také vytvořit konfigurační soubor. Samozřejmně nezapomeňte přenastavit hodnoty dle vaší lokalizace. | ||
| + | sudo nano /etc/default/dumpvdl2 | ||
| + | |||
| + | #!/bin/bash | ||
| + | # Defaul seting for dumpvdl2 | ||
| + | # -------------------------- | ||
| + | |||
| + | # RTL dongle number or S/N | ||
| + | DEV="1" | ||
| + | |||
| + | # Set rtl ppm frequency correction | ||
| + | PPM="-5" | ||
| + | |||
| + | # Set rtl preamp gain in tenth of db (ie -g 90 for +9db).. | ||
| + | # By default use maximum gain | ||
| + | GAIN="48" | ||
| + | |||
| + | # Station id used in acarsdec network format (for json output) | ||
| + | STATIONID="TT-LKCM1-VDLM2" | ||
| + | |||
| + | # Format send dat: | ||
| + | # WHAT:FORMAT:TYPE:PARAMS | ||
| + | # | ||
| + | # kde WHAT: | ||
| + | # "decoded" - output decoded messages | ||
| + | # "raw: - output AVLC frames without decoding (as raw bytes) | ||
| + | # | ||
| + | # kde FORMAT: | ||
| + | # "text" - Human readable text | ||
| + | # "json" - Javascript object notation | ||
| + | # "pp_acars" - One-line ACARS format accepted by Planeplotter via UDP | ||
| + | # | ||
| + | # kde TYPE: | ||
| + | # "file: - output to a file | ||
| + | # PARAMS: path= urcuje cestu na soubor pro ukladani dat, '-' nebo bez zadani se uklada na standartnim vystupu (obrazovce) | ||
| + | # rotate= umoznuje rotaci souboru, hourly/daily | ||
| + | # "udp" - output to a remote host via UDP network socket | ||
| + | # PARAMS: address= cilova url, nebo IP adresa kam se data posilaji | ||
| + | # port= cilovy port (defaul 5555) | ||
| + | # "zmq" - output to a ZeroMQ publisher socket | ||
| + | # PARAMS: mode= .. | ||
| + | # endpoint= .. | ||
| + | # | ||
| + | OUTPUT+=("decoded:text:file:path=-") | ||
| + | OUTPUT+=("decoded:json:udp:address=10.129.99.149,port=5555") | ||
| + | OUTPUT+=("decoded:json:udp:address=feed.acars.io,port=5555") | ||
| + | |||
| + | # VHF frequencies f1 and optionally f2 to f8 in hz (specificke kmitocty: 136.100M 136.945M) | ||
| + | FREQ="136.650M 136.675M 136.700M 136.725M 136.750M 136.775M 136.800M 136.825M 136.850M 136.875M 136.900M 136.925M 136.950M 136.975M" | ||
| + | |||
| + | # ----------------------------------------- end setting ------------------------------------ | ||
| + | # Jednoducha smycka pro spojeni jednotlivych vystupu | ||
| + | for i in ${OUTPUT[@]};do | ||
| + | OUT="$OUT --output $i " | ||
| + | done | ||
| + | |||
| + | # Vlastni spusteni prikazu ze vsemi parametry | ||
| + | dumpvdl2 ${OUT}--station-id ${STATIONID} --rtlsdr ${DEV} --gain ${GAIN} --correction ${PPM} ${FREQ} | ||
| + | |||
| + | |||
| + | sudo chmod 775 /etc/default/dumpvdl2 | ||
| + | sudo ln -s /etc/default/dumpvdl2 ~/dumpvdl2.conf | ||
| + | |||
| + | Nastaveni sluzby pro automaticke spustění po startu a následně spustíme | ||
| + | sudo systemctl enable dumpvdl2.service | ||
| + | sudo systemctl start dumpvdl2.service | ||
| + | |||
| + | Po spuštění služby můžeme sledovat co se dějě ... | ||
| + | journalctl -fe -u dumpvdl2 | ||
== Odkazy == | == Odkazy == | ||
* [[Raspberry#Projekty | Zpět na projekty Raspberry Pi]] | * [[Raspberry#Projekty | Zpět na projekty Raspberry Pi]] | ||
* [[ ACARS_/_VDL_mode_2#VDL_mode_2 | Zpět na ACARS / VDL mode 2 ]] | * [[ ACARS_/_VDL_mode_2#VDL_mode_2 | Zpět na ACARS / VDL mode 2 ]] | ||
Aktuální verze z 2. 11. 2025, 17:28
Úvod
- Odkaz na vlastní projekt https://github.com/szpajder/dumpvdl2
Příprava
sudo apt install build-essential cmake git libglib2.0-dev pkg-config
Nainstalujeme libacars
cd git clone https://github.com/szpajder/libacars cd libacars mkdir build cd build cmake ../ make sudo make install sudo ldconfig
Instalace
cd git clone https://github.com/szpajder/dumpvdl2.git cd dumpvdl2
mkdir build cd build cmake ../
cmake se pokusí najít všechny požadované knihovny a ovladače SDR. Pokud povinná závislost není nainstalována, vyhodí chybu. Chybějící volitelné závislosti způsobí deaktivaci příslušných funkcí. Na konci procesu cmake zobrazí krátké shrnutí konfigurace. Pokud je vše v pořádku, můžeme pokračovat.
make sudo make install
Test
Spuštění pro test
dumpvdl2 --rtlsdr 0 --gain 48 --correction 50 136725000 136775000 136800000 136825000 136875000
systemctl
Pro automatické spouštění je nutne nastavit službu
sudo systemctl edit --force --full dumpvdl2.service
[Unit] Description=DumpVDL2 Documentation= https://github.com/szpajder/dumpvdl2 After=network-online.target [Service] Type=simple ExecStart=/etc/default/dumpvdl2 [Install] WantedBy=multi-user.target Alias=dumpvdl2.service
Také vytvořit konfigurační soubor. Samozřejmně nezapomeňte přenastavit hodnoty dle vaší lokalizace.
sudo nano /etc/default/dumpvdl2
#!/bin/bash
# Defaul seting for dumpvdl2
# --------------------------
# RTL dongle number or S/N
DEV="1"
# Set rtl ppm frequency correction
PPM="-5"
# Set rtl preamp gain in tenth of db (ie -g 90 for +9db)..
# By default use maximum gain
GAIN="48"
# Station id used in acarsdec network format (for json output)
STATIONID="TT-LKCM1-VDLM2"
# Format send dat:
# WHAT:FORMAT:TYPE:PARAMS
#
# kde WHAT:
# "decoded" - output decoded messages
# "raw: - output AVLC frames without decoding (as raw bytes)
#
# kde FORMAT:
# "text" - Human readable text
# "json" - Javascript object notation
# "pp_acars" - One-line ACARS format accepted by Planeplotter via UDP
#
# kde TYPE:
# "file: - output to a file
# PARAMS: path= urcuje cestu na soubor pro ukladani dat, '-' nebo bez zadani se uklada na standartnim vystupu (obrazovce)
# rotate= umoznuje rotaci souboru, hourly/daily
# "udp" - output to a remote host via UDP network socket
# PARAMS: address= cilova url, nebo IP adresa kam se data posilaji
# port= cilovy port (defaul 5555)
# "zmq" - output to a ZeroMQ publisher socket
# PARAMS: mode= ..
# endpoint= ..
#
OUTPUT+=("decoded:text:file:path=-")
OUTPUT+=("decoded:json:udp:address=10.129.99.149,port=5555")
OUTPUT+=("decoded:json:udp:address=feed.acars.io,port=5555")
# VHF frequencies f1 and optionally f2 to f8 in hz (specificke kmitocty: 136.100M 136.945M)
FREQ="136.650M 136.675M 136.700M 136.725M 136.750M 136.775M 136.800M 136.825M 136.850M 136.875M 136.900M 136.925M 136.950M 136.975M"
# ----------------------------------------- end setting ------------------------------------
# Jednoducha smycka pro spojeni jednotlivych vystupu
for i in ${OUTPUT[@]};do
OUT="$OUT --output $i "
done
# Vlastni spusteni prikazu ze vsemi parametry
dumpvdl2 ${OUT}--station-id ${STATIONID} --rtlsdr ${DEV} --gain ${GAIN} --correction ${PPM} ${FREQ}
sudo chmod 775 /etc/default/dumpvdl2 sudo ln -s /etc/default/dumpvdl2 ~/dumpvdl2.conf
Nastaveni sluzby pro automaticke spustění po startu a následně spustíme
sudo systemctl enable dumpvdl2.service sudo systemctl start dumpvdl2.service
Po spuštění služby můžeme sledovat co se dějě ...
journalctl -fe -u dumpvdl2