Właśnie dotarł do mnie modem DVMega od Grzegorza SP8NTH i postanowiłem zainstalować oraz podzielić się z Wami instrukcją jak zainstalować potrzebne oprogramowanie aby Hotspot działał w trzech systemach D-Star, DMR i Fusion.
Uwaga! Aby wszystko działało poprawnie nie można pominąć żadnego kroku. Każda operacja musi być wykonana.
No to zaczynam jak zawsze od pobrania nowych repozytoriów oraz zaktualizowania systemu
Teraz reboot naszej maliny
Po zakończeniu aktualizacji systemu pobieramy najnowszą wersję MMDVMHost-a i YSFClients-a. W tym celu tworzymy folder “download” i przechodzimy do niego, a następnie pobieramy wymienione wyżej źródła. Przed pobraniem instalujemy pakiet git.
sudo git clone https://github.com/g4klx/MMDVMHost.git
sudo git clone https://github.com/g4klx/YSFClients
Teraz kilka zabiegów konfiguracyjnych niezbędnych do uruchomienia DVMegi. Na początek musimy wyedytować plik /boot/cmdline.txt
Na początek musimy zmienić znajdujący się tam wpis usuwając część danych jak na poniższym przykładzie. Należy usunąć przekreśloną zawartość.
Wychodzimy z edytora naciskając klawisze “CTRL+X” następnie potwierdzamy chęć zapisu wciskając “Y” oraz “Enter” potwierdzając nazwę zapisywane pliku.
Teraz wypadałoby s[prawdzić jaką wersję Debiana posiadamy. Jak sprawdzić wersję? Możemy tak.
W przypadku gdy posiadamy Raspbian Wheezy (czyli wersje np. 7) edytujemy plik
Następnie odszukujemy poniższą linię (będzie gdzieś na końcu) i na początku wstawiamy znak #
Oczywiście po wstawieniu znaku zapisujemy plik wychodząc z edytora i naciskając klawisze “CTRL+X“, następnie potwierdzamy chęć zapisu wciskając “Y” oraz “Enter” potwierdzając nazwę zapisywane pliku.
Jeżeli posiadamy wersję Raspbian Jessie (wersja np. 8) zatrzymujemy i wyłączamy serwis getty dla portu ttyAMA0 wykonując poniższe polecenia
sudo systemctl disable serial-getty@ttyAMA0.service
W przypadku gdy posiadamy Raspberry Pi 3 musimy także wyłączyć obsługę Bluetooth. Robimy to edytując plik /boot/config.txt i dodając na końcu dtoverlay=pi3-disable-bt. Prościej możemy tego dokonać wpisując poniższe polecenie.
Po wykonaniu powyższych operacji przed przystąpieniem do kompilacji oprogramowania musimy wykonać restart RPi.
Instalujemy niezbędny do kompilacji MMDVMHosta pakiet
A teraz rozpoczynamy kompilację MMDVMHosta
sudo make
Jeżeli wszystko skompilowało się poprawnie i nie pokazał nam się żaden error to rozpoczynamy kompilację YSFGateway do pracy w sieci Yaesu Fusion. Przechodzimy do pobranych źródeł YSFClients
I rozpoczynamy kompliację
Jeżeli wszystko w tym przypadku wszystko przebiegło poprawnie, nie również nie wyskoczył nam żaden error, to pozostaje nam tylko instalacja ircDDBGateway do obsługi sieci D-Star. Na początek pobieramy plik ze źródłami oprogramowania i go rozpakowujemy.
sudo wget http://www.sq9nfi.pzk.pl/download/ircDDBGateway-20151116.zip
sudo unzip ircDDBGateway-20151116.zip
Na tym etapie rozpoczynamy kompilację gatewaya D-Star. Na początek instalujemy konieczne do kompilacji pakiety.
Teraz przechodzimy do folderu z oprogramowaniem ircDDBGateway i rozpoczynamy kompilację.
sudo make
sudo make install
Automatyczne uruchamianie aplikacji
Teraz musimy stworzyć kilka plików startowych odpowiedzialnych za uruchamianie trzech aplikacji MMDVM, ircDDBGateway oraz YSFGateway.
I wklejamy do niego poniższą zawartość
Description=MMDVM Host Service
[Service]User=root
WorkingDirectory=/home/pi/download/MMDVMHost
ExecStart=/usr/bin/screen -S mmdvm -D -m /home/pi/download/MMDVMHost/MMDVMHost /home/pi/download/MMDVMHost/MMDVM.ini
ExecStop=/usr/bin/screen -S mmdvm -X quit
Restart=on-failure
RestartSec=5
WantedBy=multi-user.target
Zapisujemy plik wciskając CTRL+X następnie Y oraz ENTER
Tworzymy dodatkowy plik opóźniający start MMDVM
I wklejamy poniższą zawartość i zapisujemy plik
OnStartupSec=10
[Install]WantedBy=multi-user.target
Teraz zajmiemy się uruchamianiem ircDDBGateway. Jak poprzednim razem musimy stworzyć dwa pliki
I wklejamy poniższą zawartość
Description=ircDDBGateway daemon Service
[Service]User=root
WorkingDirectory=/usr/local/bin
ExecStart=/usr/bin/screen -S ircddb -D -m /usr/local/bin/ircddbgatewayd -logdir:/var/log -confdir:/etc
ExecStop=/usr/bin/screen -S ircddb -X quit
Restart=on-failure
RestartSec=5
WantedBy=multi-user.target
Tworzymy kolejny plik
I wklejamy poniższą zawartość
OnStartupSec=60
[Install]WantedBy=multi-user.target
Pozostało nam tylko stworzyć pliki do automatycznego uruchomienia YSFGateway
I wklejamy do niego zawartość
Description=YSFGateway Service
[Service]User=root
WorkingDirectory=/home/pi/download/YSFClients/YSFGateway
ExecStart=/usr/bin/screen -S ysf -D -m /home/pi/download/YSFClients/YSFGateway/YSFGateway /home/pi/download/YSFClients/YSFGateway/YSFGateway.ini
ExecStop=/usr/bin/screen -S ysf -X quit
Restart=on-failure
RestartSec=5
WantedBy=multi-user.target
I ostatni plik jak musimy stworzyć
Wklejamy do niego zawartość
OnStartupSec=30
[Install]WantedBy=multi-user.target
Na koniec musimy doinstalować jedną paczkę.
I poinformować system że nasze pliki startowe są przygotowane do uruchamiania.
sudo systemctl enable mmdvm.timer
sudo systemctl enable ircddbgateway.timer
sudo systemctl enable ysfgateway.timer
I to już wszystko. Teraz po restarcie nasze aplikacje automatycznie zostaną uruchomione. Tak więc restartujemy malinę.
Możemy również uruchamiać, zatrzymywać oraz sprawdzać stan pracy naszych aplikacji ręcznie poprzez wpisanie jednego z poniższych poleceń.
sudo systemctl stop mmdvm
sudo systemctl status mmdvm
sudo systemctl start ircddbgateway
sudo systemctl stop ircddbgateway
sudo systemctl status ircddbgateway
sudo systemctl start ysfgateway
sudo systemctl stop ysfgateway
sudo systemctl status ysfgateway
Podczas sprawdzania statusu pracy naszej aplikacji będziemy widzieli czy jest uruchomiona czy też nie. Będzie to widać w sposób przedstawiony na poniższych zdjęciach.
Jeżeli chodzi o instalację oprogramowania to w zasadzie już wszystko co jest nam potrzebne mamy zainstalowane. Kolejnym krokiem jest konfiguracja MMDVMHosta, ircDDBGateway-a i YSFGateway-a. Szczegóły konfiguracji znajdziecie w następnej części dotyczącej konfiguracji i uruchomienia HotSpota.