ACARSdec

Z Poznámkový blok
Verze z 7. 1. 2024, 19:00, kterou vytvořil Tydyt (diskuse | příspěvky) (systemctl)
Přejít na: navigace, hledání

Úvod

Jedná se o projekt, slučující více tecnologií do jednoho přehledu https://github.com/TLeconte/

Příprava

Pokud jsme zatím nepotřebovali, je nutné doinstalovat:

sudo apt install git cmake

Pokud zatím nemáme ovladace pro RTL-SDR tak je také nainstalijeme:

sudo apt-get install librtlsdr-dev rtl-sdr

Instalace

Vlastní projekt je k dispozici na gitu. Pro Raspberry je nutná jedna úprava. Stažení projektu:

git clone https://github.com/TLeconte/acarsdec.git
cd acarsdec

Pokud instalaci provádíme na Raspberry 32bit verzi, změníme v souboru CMakeLists.txt řádek add_compile_options(-Ofast -march=native ) na:

  • for PI 2B : add_compile_options(-Ofast -mcpu=cortex-a7 -mfpu=neon-vfpv4)
  • for PI 3B : add_compile_options(-Ofast -mcpu=cortex-a53 -mfpu=neon-fp-armv8)
  • for PI 4B : add_compile_options(-Ofast -mcpu=cortex-a72 -mfpu=neon-fp-armv8)
  • old : add_compile_options(-std=c++11 )

Hodnotu -O2 neni třeba přenastavovat.

Následně můžeme pokračovat kompilaci

mkdir build
cd build
cmake .. -Drtl=ON
make
sudo make install

Otestovani

Spusštění pro test

acarsdec -v -g 48 -p 51 -r 0 130.825 130.850 131.525 131.550 131.725 131.825 131.850

systemctl

Pro automatické spouštění je nutne nastavit službu

sudo systemctl edit --force --full acarsdec.service
[Unit]
Description=ACARS
Documentation=https://github.com/TLeconte/acarsdec
After=network-online.target

[Service]
Type=simple
EnvironmentFile=-/etc/default/acarsdec
ExecStart=acarsdec \"${OPTS} -g ${GAIN} -p ${PPM} -i ${STATIONID} -${FORMAT} ${SERVER} -r ${DEV} ${FREQ}\" 

[Install]
WantedBy=multi-user.target
Alias=acarsdec.service

Také vytvořit konfigurační soubor. Samozřejmně nezapomeňte přenastavit hodnoty dle vaší lokalizace.

sudo nano /etc/default/acarsdec
#!/bin/sh
# Defaul seting for acarsdec
# ==========================

# RTL dongle number or S/N
DEV="0"

# Set rtl ppm frequency correction
PPM="51"

# Set rtl preamp gain in tenth of db (ie -g 90 for +9db)..
# By default use maximum gain
GAIN="480"

# Format send dat:
#  n  - planeplotter compatible format
#  N  - acarsdec native format
#  j  - acarsdec json format
FORMAT="j"

# Send acars messages to addr:port via UDP
SERVER="feed.acars.io:5550"

# Station id used in acarsdec network format (for json output)
STATIONID="TT-LKCM1-ACARS"

# VHF frequencies f1 and optionally f2 to f8 in Mhz
#FREQ="130.825 130.850 131.525 131.550 131.725 131.825 131.850"
FREQ="131.550 131.725 131.825"

# Other seting
#  -v         : verbose
#  -A         : don't display uplink messages (ie : only aircraft messages)
#  -o lv      : output format : 0 : no log, 1 : one line by msg, 2 : full (default), 3 : monitor mode, 4 : msg JSON, 5 : route JSON
#  -l logfile : append log messages to logfile (Default : stdout).
#  -H         : rotate log file once every hour
#  -D         : rotate log file once every day
OPTS='-v -o 4'
sudo chmod 664 /etc/default/acarsdec
sudo chown pi /etc/default/acarsdec
sudo ln -s /etc/default/acarsdec ~/acarsdec.conf

Nastaveni sluzby pro automaticke spustění po startu a následně spustíme

sudo systemctl enable acarsdec.service
sudo systemctl start acarsdec.service

Po spuštění služby můžeme sledovat co se dějě ...

journalctl -fe -u acarsdec

Poznamky

Prý na nové verzi Rasberry je problém z knihovou librtl. Doporučuje se ji přeinstalovat. Viz: https://github.com/wiedehopf/adsb-wiki/wiki/Replace-librtlsdr-on-Raspbian

Odkazy