Aktualizacja 13.01.2025
SvxPi to odchudzona wersja aDVPi, której głównym zadaniem było uruchamianie się począwszy od RaspberryPi 0W. I tak powstała wersja SvxPi - Lite , lecz zawsze warto mieć możliwość zbudowania sobie małego "kombajnu" umożliwiającego coś więcej niż tylko bycie klientem SvxReflektor. Dlatego w pełnej wersji wróciła opcja uruchomienia sobie oddzielnego svxlink z osobną kartą audio opisanego jak AnyRadio Hotspot a także po zainstalowaniu modemu MMDVM uruchomienie sobie hotspota DMR,Dstar,C4FM. Są to rozwiązania oferowane w starszej wersji aDVPi i trochę mi ich było brak dlatego ta opcja wróciła do mojej pełnej wersji i działa poprawnie. Nowością jest możliwość uruchomienia modułu LoRa. Obecnie etap pierwszy pozwoli uruchomienie modułu Heltec Wireless Tracker z oprogramowaniem Meshtastic. Jest to kompletnie niezależne urządzenie ale z uwagi na to że posiada GPS to upieczone zostaną dwie pieczenie przy jednym ogniu. Mianowicie zasilanie i obudowę LoRa dostanie z RaspberryPi a w zamian odwdzięczy się strumieniem danych poprzez USB serial. A to pozwoli na pozyskanie danych geolokalizacyjnych które zostaną użyte przez SvxLink do aktualizacji pozycji na mapie SvxReflektora, ale jednocześnie RaspberryPi pozwoli na wysłanie znaków i lokalizacji wszystkich stacji usłyszanych via LoRa Meshtastic na APRS-IS. Oczywiście mowa o Meshtastic w wersji krótkofalarskiej uruchomionej na paśmie 70cm ( 439.9125MHz UK band plan )
UWAGA !!! SvxPi_Full to projekt koncepcyjny - niestety nie będzie on dostępny publicznie. Opisuję go tutaj aby pokazać że na bazie ostatniego publicznego obrazu SvxPi - Lite można dalej się bawić i dalej sobie unowocześniać projekt. Jestem w stanie udostepnić wersję roboczą / testową osobom zainteresowanym prywatnie, niestety nie chcę tego robić publicznie z uwagi na fakt niechęci do wspierania tego projektu i niekompatybilność pewnych elementów z róznymi reflektorami.
Jak wspomniałem SvxPi-Full_2025 to koncepcyjny projekt realizowany pod dużą inspiracją własnych potrzeb. Jestem zwolennikiem kompaktowych i multi-funkcyjnych rozwiązań i staram się zminimalizować ilość urządzeń, kabli, zasilaczy które muszę lub chcę zabrać ze sobą w teren, ale także nawet w przypadku gdy stoi to na biurku w stacjonarnym zastosowaniu.
W sumie koncept jest taki aby pojedyncze projekty połączyć w całość w ramach jednego urządzenia, i można powiedzieć że obecnie zastępuje:
RaspberryPi 0W - DMR/Dstar/C4FM hotspot MMDVM ( PiStar )
RaspberryPi 0W - Analog hotspot SvxLink
RaspberryPi 0W - APRS tracker
RaspberryPi 3B+ - SvxLink Network Radio ( aDVPi_2024.05, SvxPi )
I w sumie można powiedzieć że to już było w aDVPi. TAK ale niestety aDVPi bazował na obrazie kolegi KD8CEC http://www.hamskey.com/ i posiadał pewne ograniczenia co do możliwości modyfikowania go, aby nadal zachować funkcjonalność samego programu DVPi ( DMR, Dstar ). SvxPi zostało zrobione na nowszym systemie Raspbian, został odchudzony w celu ochrony i wydłużenia żywotności karty SD, ale głównie aby ograniczyć ilość zbytecznych procesów uruchomionych w tle.
Po uruchomieniu RaspberryPi pojawia nam się na ekranie panel kontrolny prawie taki sam jak w aDVPi, i różnica polega na tym że aby go wyświetlić potrzebna jest przeglądarka chromium która do tej pory była uruchamiana z poziomu "pulpitu" , teraz jest uruchamiana z poziomu terminala, pozwala to zaoszczędzić zasoby RaspberryPi takie jak CPU i RAM.
Sam panel kontrolny do moja wariacja i modyfikacja Svxlink Dashboard by SP2ONG jaki Waldek zrobił dla projektu svxlink.pl. Przez dłuższy czas był on modyfikowany tak aby zmieścić się na ekranie 3,5 cala, i gdyby nie ten własnie dashboard to przez długi czas pewnie nie zainteresowałbym się tym tematem.
SvxPi w wersji "Full" zachował wszystko co miała wersja SvxPi - Lite uzyskując trochę więcej dodatków, więcej opcji i możliwości nadal zachowując możliwość modułowego uruchamiania usług w zależności od tego czy mamy podłączone urządzenia takie jak ekran 3,5 , rotary encoder, dodatkowa dioda TX/RX, modem MMDVM, analogowy hotspot bazyjący na CM108 FOB, lub LoRa. Dla mnie stało się to uniwersalne rozwiązanie zarówno przy uruchamianiu na RaspberryPi 0 jak i nowszych.
Główny Network Radio klient
W wielu przypadkach jest to podstawowy klient pozwalający na podłączenie się do sieci SvxReflector, wyposażony w mikrofon i głośnik co pozwala na prowadzenie łączności podobnie jak przy użyciu klasycznego radia. Sterowanie "kanałami" i innymi funkcjami odbywa się za pośrednictwem ekranu dotykowego
Tak samo jak w poprzednich wersjach mamy do dyspozycji klawiaturę DTMF pozwalającą nam na wydawanie w ten sposób komend programowi svxlink
Mamy także programowalne przyciski pamięci, pozwalające na szybkie wybranie grupy TG.
Mamy także dodatkowe przyciski które można sobie dowolnie zaprogramować w zakładce SvxLink - dedykowanej dla usług związanych z svxlink a nie svxreflector. Help, PARROT, i inne moduły uruchomione w svxlink.
Mamy także Config który pozwala na sterowanie dodatkowymi usługami.
Pozostając jeszcze przy głównym kliencie i jego panelu sterowania to należy wspomnieć o 3-4 stanach w jakich on się znajduje. Pierwszy z nich to stan spoczynku pokazujący monitorowane grupy TG, czas i nazwę serwera do jakiego jesteśmy podłączeni.
Drugi stan to moment gdy jakaś grupa TG została aktywowana ale nie ma na niej aktywności - mamy nadal monitorowane grupy na żółto, mamy w kolorze czerwonym numer TG aktywny ( w tym przypadku 23511 ) i poniżej mamy nazwę przypisaną do aktywnej grupy TG ( South East ( Beds - LUTON )
Trzecim stanem jest moment gdy odbieramy transmisję - tło w kolorze zielonym, znak, numer i nazwę TG oraz dane korespondenta w postaci imienia, lokalizacji i dodatkowego Info.
Ostatnim stanem jest moment gdy to My nadajemy - tło w kolorze czerwonym i dane takie same jak w czasie odbioru.
Na ekranie mamy jeszcze 2 paski których zadaniem jest dostarczenie informacji o stanie naszego Network Radio. Na górnym mamy 4 paskowy wskaźnik zasięgu WiFi, który w czasie rzeczywistym pokazuje wizualnie naszego WiFi oraz adres IP jaki ma nasz RaspberryPi. Mamy pasek informujący o wersji SvxPi oraz odczyt temperatury i obciążenia procesora.
Poniżej mamy pasek informacji o uruchomionych usługach. W tym przypadku uruchomiony jest tylko podstawowy klient SvxLink i urządzenie działa tylko jako klient Network Radio.
Hotspot Analogowy
Aby uruchomić hotspot analogowy który pracuje równolegle do Głównego Network Radio klienta, należy wejść do menu i wybrać opcję AnyRadio_HS
Tu mamy do wyboru opcję Start i Stop
Po uruchomieniu na naszym głównym panelu sterowania podświetli się napis AnyRadio - co sygnalizuje że drugi klient svxlink został uruchomiony.
Moje AnyRadio zostało uruchomione na micro-hotspot module bazujacym na CM108 ze sterowaniem opartym o CM108 HID
Oczywiście każdy może sobie pod tego klienta podłączyć dowolne radio czy moduł SA818 czy pochodne.
Należy zapamiętać że jest to drugi svxlink uruchomiony na tym RaspberryPi, posiadający własny plik konfiguracyjny a co za tym idzie inne dane logowania do reflektora, inną kartę dźwiękową itd... WYMAGA osobnej konfiguracji tak jakby to był kompletnie inny RaspberryPi.
Sterowanie tym hotspotem odbywa się tylko i wyłącznie za pośrednictwem radia o kodów DTMF.
MMDVM Hotspot
Hotspot MMDVM bazuje na modemie MMDVM podłaczonym za pośrednictwem USB.
Aby uruchomić Hotspot MMDVM należy wejść do ustawień i wybrać MMDVM_HS
Następnie wciskamy Start i nasz hotspot jest uruchomiony
Informuje nas o tym fakcie także pasek usług w głównym panelu sterowania
Oczywiście należy pamiętać że to z czym jesteśmy połączeni zależy już tylko i wyłącznie od konfiguracji MMDVMHost. W przypadku niepowodzenia uruchomienia otrzymamy ikonkę w kolorze czerwonym.
I jeszcze słowo wyjaśnienia odnośnie MMDVM i podłączenia poprzez USB. Dlaczego po USB? , ponieważ ekran 3,5" zajmuje tą część GPIO i jedynie już rozszerzenia poprzez USB są możliwe.
Każdy modem MMDVM można podłączyć poprzez USB za pośrednictwem USB TTL. Połaczenie odbywa się 4 kabelkami
+3,3V
GND
UART TX
UART RX
Ja osobiście testowałem i używam tylko DMR ponieważ tylko takie radio posiadam, dlatego mogę potwierdzić tego działanie.
LED / Encoder
Funkcja LED ma za zadanie uruchomienie skryptu uruchamiania czerwonej diody sygnalizującej nasze nadawanie czyli stan gdy to my wciskamy przycisk PTT.
Zielona dioda jest wysterowana przez sam svxlink w dziale Tx1
Encoder to funkcja użycia opcjonalnego rotary-encoder do poruszania się po menu. - więcej na temat obu funkcji znajdziecie SvxPi - Lite wraz z przykładami video.
Aby uruchomić te dwie funkcjonalności wchodzimy do Ustawień i wybieramy EXTRA
Tam mamy do wyboru obie funkcje do uruchomienia. Jest to opcjonalne ponieważ nie każdy posiada takie urządzenia na wyposażeniu i nie każdy może chcieć to uruchamiać.
O poprawności uruchomienia informuje nas pasek usług a na nim 2 ikony LED i Encoder.
LoRa - Meshtastic / GPS
LoRa to coś nowego w tym urządzeniu, ale nie jest to cel sam w sobie a jedynie skutek uboczny.
Od dawna chodziło mi po głowie wzbogacenie aDVPi i SvxPi o odbiornik GPS i na początku był brany pod uwagę taki na USB
Ale w między czasie była zabawa z urządzeniami LoRa z firmware APRS. W moim mniemaniu LoRa APRS poza usługą geolokalizacji nie oferuje nic więcej - a nie do końca o to mi chodziło w tej zabawie, są duże problemy z APRS-IS usługami , dlatego bardziej przychylnie zacząłem patrzeć na inne rozwiązania oparte o LoRa wspierające protokół MESH.
Obecnie bawię się Meshtastic w trybie "krótkofalarskim" na częstotliwości 439.9125MHz. No i właśnie dlatego ze mam taki LoRa Meshtastic który posiada wbudowany odbiornik GPS to postanowiłem całe to urządzenie połączyć z SvxPi.
Ale aby była jasność, Mashtastic jest obsługiwany prze telefon i w pełni zachowuje swoją niezależność pracy, ja tylko uznałem że nie chcę mieć kolejnej ładowarki / zasilacza to tego urządzenia i spokojnie mogę zasilić je z RaspberryPi a w zamian dzięki USB Serial pozyskiwać z niego pewne dane GPS i inne które mogę wykorzystać w SvxPi.
Dlatego aby uruchomić monitorowanie USB Serial wchodzimy w Ustawienia i wybieramy LoRa
Następnie wybieramy rodzaj firmware jaki mamy w naszym LoRa urządzeniu.
Następnie wybieramy START i nasz RaspberryPi zacznie pozyskiwać dane z urządzenia LoRa.
Uzyskujemy dzięki temu podgląd w odebrane wiadomości wysłane za pośrednictwem Meshtastic
ale co bardziej mnie interesujące uzyskuje dostęp do danych geolokalizacyjnych, które będę wykorzystywał w dwóch celach.
Pierwszym z nich jest zmiana położenia na mapie SvxReflector a drugi to będzie wysłanie znacznika na APRS-IS. Meshtastic nie potrafi jeszcze sam z siebie współpracować z APRS-IS ale chyba to wynika z faktu że nie jest to projekt krótkofalarski.
Elementy te nie są jeszcze działające i prace nad tym trwają. Założenie i plan jaki realizuje w ramach zabawy w HUBLINK który jest kompatybilny z oryginalnym SVX jest takie że chcę doprowadzić do sytuacji gdzie znacznik na mapie nie będzie statyczny jak do tej pory dzięki danym wpisanym w node_info.json, a będzie w miarę aktualna pozycja - to wodotrysk upodabniający NetworkRadio do tradycyjnych TRX z wbudowanym GPS
Z plikiem node_info.json są pewne problemy ponieważ co sieć to innego formatu używa , dlatego postanowiłem się bawić na oryginalnym jego formacie, takim jaki uzyskujemy po instalacji svxlink.
Prezentacja działania z Meshtastic na YouTube https://youtu.be/HyrLenBJMGY
Cała ta zabawa z GPS ma doprowadzić do sytuacji że pozycja stacji będzie w miarę aktualna i możliwe będzie wyświetlanie na SvxPi w trakcie odbioru transmisji położenia stacji
( zdjęcie poglądowe )
SvxPi Full dostał coś co można nazwać edytorem plików konfiguracyjnych poprzez www. Obecnie jest na etapie kreowania co tam się powinno znaleźć , dlatego dam tylko kilka zdjęć.
SvxPi-Full - jest i będzie koncepcyjny, a opublikowane materiały na jego temat mają jedynie pokazać kierunek w jakim można to rozwijać - można powiedzieć że to takie DEMO. Jest to moja zabawka testowana zarówno na reflektorze HUBLINK i na FM_UK z uwagi na fakt że są one kompatybilne z oryginalnym svxlink / svxreflector