___________________________________________________________________________________________________________________________________________________________________________
___________________________________________________________________________________________________________________________________________________________________________

26 września 2026

PANEL 2.8" ESP32-2432S028R AS A MONITOR FOR MMDVM

 

CYD podczas pracy. Wyświetlana temperatura CPU jest lekko przesunięta ale w programie jest to już poprawione.
 

Emulator wyświetlacza NEXTION dla MMDVM DUAL — wersja na ESP32-2432S028R (CYD)

 

UWAGA !

Projekt przetestowany z HotSpotem MMDVM HS DUAL w trybie SIMPLEX.

Z innymi modelami MMDVM nie był testowany ale powinien też działać.

MMDVM HS DUAL

 

Skąd ten projekt ?

To kolejna odsłona mojej serii projektów łączących świat DMR/MMDVM z tanimi modułami ESP32 z wyświetlaczem. Tym razem zamiast dedykowanego wyświetlacza Nextion, jako panel dla hotspota MMDVM_HS_Dual_Hat posłużył popularny "żółty moduł" ESP32-2432S028R (CYD) w wersji 3, z dwoma złączami USB (micro-USB i USB-C) oraz 2,8-calową matrycą ST7789.

 Poprzednie wersje modułu CYD (Ver.1 i Ver.2) mają inny wyświetlacz i trochę inaczej zdefiniowane PIN-y a to może kolidować z transmisją z modułem MMDVM.

 

    Sam pomysł nie jest nowy — ESP32 od dawna potrafi udawać wyświetlacz Nextion, odbierając te same ramki protokołu, które Pi-Star normalnie wysyła do prawdziwego panelu dotykowego.

 https://hf5wwl.blogspot.com/2026/09/emulator-wyswietlacza-nextion-do.html

Nowością w tej wersji jest dopasowanie sprzętowe do konkretnej płytki CYD, która ma swoją specyfikę utrudniającą podłączenie.

Problem: złącze P5 jest zablokowane

Naturalnym miejscem do podłączenia hotspota wydaje się złącze P5 na płytce CYD — wyprowadzone są tam piny Vin, Tx, Rx i GND, czyli dokładnie to, czego potrzeba. Niestety w praktyce się nie da: sygnały Tx/Rx na tym złączu są blokowane przez układ obsługujący port USB i nie reagują na dane przychodzące z MMDVM.

Rozwiązaniem okazało się złącze CN1, na którym dostępne są piny +3,3V, IO22, IO27 oraz GND. Z tego zestawu wykorzystane zostały tylko IO22, IO27 i GND — pin 3,3V pozostaje niepodłączony, ponieważ na złączu SRV modułu MMDVM napięcie zasilające to +5V, a wpięcie go w pin opisany jako 3,3V uszkodziłoby płytkę. Stąd duże ostrzeżenie na schemacie: 3,3V !!!

Ostateczne połączenia wyglądają więc tak:

  • +5V (z MMDVM) → VIN na złączu P5 CYD — zasilanie całej płytki idzie tędy, mimo że linie danych na tym samym złączu są bezużyteczne
  • GND (MMDVM) → GND na P5
  • Tx / Rx (MMDVM) → IO22 / IO27 na złączu CN1 — tu faktycznie płynie komunikacja z hotspotem
  • Pin 3,3V na CN1 pozostaje wolny

To rozdzielenie zasilania (P5) i danych (CN1) jest sercem tej adaptacji — bez niego moduł CYD po prostu nie odbierałby żadnych ramek z MMDVM.

W kodzie odzwierciedla to prosta definicja pinów i inicjalizacja drugiego portu szeregowego:

#define MMDVM_RX 22
#define MMDVM_TX 27
...
Serial2.begin(9600, SERIAL_8N1, MMDVM_RX, MMDVM_TX);
 
Schemat poglądowy połączeń pomiędzy MMDVM i CYD
 
 

Połączenia wykonałem za pomocą kabelków z odpowiednimi wtyczkami:
 

 

Co potrafi program ?

Firmware (zapisane w module CYD) emuluje protokół Nextion na tyle wiernie, że Pi-Star/MMDVMHost nie widzi różnicy między prawdziwym panelem dotykowym a modułem CYD:

Parser protokołu Nextion

  • Ramki odczytywane są z terminatorem 0xFF ×3, tak jak w prawdziwym Nextionie
  • Program wysyła do MMDVM standardowy handshake (NEXTION + page0), dzięki czemu Pi-Star traktuje go jak legalny wyświetlacz
  • Parser jest świadomy aktywnej strony (page MMDVM / page DMR) — te same numery pól (t3, t5, t7...) oznaczają co innego w zależności od strony (np. t3 to na stronie MMDVM adres IP, a na stronie DMR realny talkgroup), więc rozróżnianie kontekstu jest kluczowe dla poprawnego odczytu danych

Ekran TFT

  • Tryb IDLE: zegar i komunikat o braku aktywności
  • Tryb RX: znak wywoławczy i imię korespondenta, jego miejscowość (dostępna dzięki pełnemu pipeline'owi NextionDriver), aktywny talkgroup, pasek siły sygnału RSSI (0–5 kresek) oraz kolorowany pasek jakości BER (zielony/żółty/czerwony)
  • Historia trzech ostatnio słyszanych stacji
  • Dolny pasek z temperaturą CPU Raspberry Pi (kolorowana wg progów) oraz częstotliwościami RX/TX skróconymi do czytelnego formatu (np. 439.454)
  • Delikatna animacja ikony anteny przy odbiorze, płynna aktualizacja samego zegara bez przerysowywania całego ekranu
  • Wygaszacz gasi podświetlenie po około 3 minutach bezczynności — ale ignoruje telemetrię (temperaturę, obciążenie CPU, adres IP), którą NextionDriver wysyła co 20–30 s nawet bez żadnej transmisji, więc ekran nie budzi się bez powodu

Panel WWW

  • Wbudowany serwer WWW z WebSocketem pokazuje na żywo w przeglądarce to samo, co widać na wyświetlaczu — te same dane, podobna stylistyka, automatyczne przeładowanie połączenia po jego zerwaniu
  • Automatyczne wykrywanie adresu Pi-Star przez mDNS
  • Jeśli nie chcemy łączyć się z Wi-Fi, w stopce zamiast adresu IP pojawia się po prostu "OFFLINE"  
  •  


Ważna uwaga: By wyświetlić obraz na ekranie komputera trzeba znać jego adres w sieci lokalnej. Adres można zobaczyć w monitorze portu szeregowego po resecie modułu CYD: 

 

 === EMULATOR NEXTION - MMDVM v2 ===
Laczenie z WiFi.........
Polaczono, IP emulatora: 192.168.0.203
Pi-Star (pi-star.local) nie odpowiedzial na mDNS.
Serwer WWW uruchomiony.
Serial2 9600 bps
Ready.

 

Różne moduły CYD mają różne adresy IP. W tym wypadku jest to adres 192.168.0.203

Tak więc wpisujemy do naszej wyszukiwarki: http://192.168.0.203 klikamy enter i mamy obraz monitora na naszym komputerze. Nie należy mylić tego adresu z adresem dostępu do Pi-Stara. To dwa różne adresy IP.


Podsumowanie

To praktyczny przykład, że ograniczenia konkretnej płytki (zablokowane P5) da się obejść, jeśli producent zostawił choć jedno zapasowe złącze z wolnymi GPIO — tu właśnie CN1 uratowało projekt. Kod jest w dużej mierze kontynuacją poprzednich wersji emulatora, tym razem dopasowaną pod konkretny, tani i łatwo dostępny moduł z ekranem 2,8".

 

📋 Szybka ściągawka: Konfiguracja Pi-Star dla emulatora CYD
Aby Twój Cheap Yellow Display poprawnie odbierał pełen pakiet danych z MMDVMHost, konfiguracja w panelu administracyjnym Pi-Star musi wyglądać następująco:
  1. Zaloguj się do panelu Pi-Star i przejdź do zakładki Configuration.
  2. W sekcji General Configuration odszukaj pole MMDVM Display Type.
  3. Ustaw parametry dokładnie według poniższej tabeli:
ParametrUstawienieOpis
MMDVM Display TypeNextionWłącza emulację ekranu szeregowego.
Port

/dev/ttyNextionDriver

 

 Kieruje sygnał bezpośrednio na złącze ekranu w modemie MMDVM.
Nextion LayoutON7LDS L3 HSKluczowe! Tylko ten profil wysyła pełną telemetrię (Częstotliwości, Temp CPU).

  1. Kliknij przycisk Apply Changes, aby zrestartować proces MMDVMHost z nowymi ustawieniami. 
💡 Wskazówka: Profil G4KLX wysyła jedynie podstawowe dane o znaku (Callsign). Wybór ON7LDS L3 HS jest warunkiem koniecznym, aby uruchomić zaawansowane funkcje parsowania napisane w kodzie ESP32!

 

Ustawienie konfiguracji komunikacji z wyświetlaczem CYD.

 

Na koniec krótki film prezentujący pracę CYD jako emulatora wyświetlacza NEXTION. Na początku jest trochę ciszy. Po prostu nikt nie rozmawiał. Dalej jest już normalna łączność. Przepraszam za jakość ale film był nagrywany telefonem i bez statywu. 

  
 
 
Tak wygląda praca wyświetlacza z programem w wersji EN (beta): 

Wersja PL jest taka sama tylko po Polsku :)

 

 

Pamiętaj o dobrym zasilaczu!  Ma mieć 5V i wydajność minimum 2A.

 

 Na razie to wszystko. Z pewnością będą jakieś zmiany i będę je nanosił na projekt.

73!

 

 

✍️ Autor: Robert HF5WWL
📅 Data projektu: wrzesień 2026 r.
 📍 Lokalizacja: Wołomin, POLSKA
📁 Coś nie jasne? Pytaj poprzez e-mail (hf5wwl@gmail.com) lub w komentarzu 
🛠️ Poziom trudności: Łatwy 

📜 Program jest jak zwykle dostępny za darmo /aktualna wersja/. Wystarczy poprosić via e-mail. 

Jest możliwość otrzymania programu w wersji angielskiej (BETA). Testy trwają i pewnie będą jeszcze jakieś zmiany.


#ESP32 #CYD #MMDVM #DMR #PiStar #Nextion #krotkofalarstwo


24 września 2026

Monitor DMR ESP32-2432S028R

 


Monitor DMR na ESP32-2432S028R ("żółty moduł" CYD) z danymi z BrandMeister

 

Wstęp

Monitor DMR pokazujący na bieżąco, kto nadaje na wybranych grupach rozmównych, pierwotnie zbudowałem na ESP32 WROOM-32U z wyświetlaczem 480×320 i osobną kartą SD. Program pobiera dane bezpośrednio z internetu, więc nie potrzebuje modułu MMDVM ani radia. Wystarczy sieć WiFi.

 https://hf5wwl.blogspot.com/2026/07/dmr-monitor-na-esp32.html

Okazało się, że ten sam program można przenieść na popularny gotowy moduł ESP32-2432S028R, czyli tak zwany "żółty moduł" (CYD, Cheap Yellow Display). Ma on w jednej płytce ESP32, kolorowy wyświetlacz 2,8" i gniazdo karty microSD. Nie trzeba niczego lutować ani łączyć przewodami.

Jak to działa

Monitor łączy się przez WebSocket z serwerem BrandMeister (Last Heard) i odbiera informacje o aktywności w sieci. Każdy pakiet zawiera znak, imię lub alias operatora, jego ID DMR oraz numer grupy rozmównej (TG). Program odrzuca pakiety z grup, których nie monitorujesz, a resztę pokazuje na ekranie.

Co pokazuje ekran

  • Nagłówek: nazwa monitora, status połączenia z BrandMeister (BM ONLINE / OFFLINE), ikona radia zmieniająca kolor podczas odbioru oraz zegar synchronizowany przez NTP (z automatyczną zmianą czasu letni/zimowy).
  • Aktywny operator: duży znak wywoławczy, imię lub alias, numer TG i ID oraz licznik czasu trwania transmisji (MM:SS) z animacją odbioru.
  • Historia: cztery ostatnie transmisje z godziną, znakiem, imieniem i numerem TG.
  • Stan czuwania: gdy nikt nie nadaje, ekran pokazuje listę monitorowanych grup.

 

Konfiguracja z karty SD

Nic nie trzeba zmieniać w kodzie, żeby ustawić sieć i grupy. Wszystko jest w plikach tekstowych na karcie microSD (FAT32). Na karcie tworzymy dwa pliki:

plik config.txt – dane sieci WiFi:

SSID=nazwa_twojej_sieci_WiFi
PASS=twoje_haslo

plik monitored_tg.txt – lista monitorowanych grup, jedna w linii:

260
2602
# linia zaczynająca się od # jest komentarzem na przykład:
#260080
#TG lokalne
#TG podręczne 

Wpis 260* włącza monitorowanie wszystkich grup zaczynających się od 260. Jeśli pliku nie ma, program używa domyślnej grupy 260.

Plik logu powstanie automatycznie. 

WAŻNE! Stosuj karty max 32 GB sformatowane na FAT32. To powinno działać niezawodnie. 

 

Dziennik transmisji

Po zakończeniu każdej transmisji (po 5 sekundach bez pakietów) program dopisuje wiersz do pliku dmr_log.csv na karcie SD: data i godzina początku i końca, znak, imię, ID, TG oraz czas trwania w sekundach. Plik można otworzyć w Excelu lub LibreOffice i analizować aktywność.


 

Co trzeba było zmienić przy przeniesieniu na CYD

  1. Wyświetlacz: w wersji z dwoma portami USB (micro-USB i USB-C) jest to ST7789 o rozdzielczości 320×240. Użyłem biblioteki Adafruit ST7789, na magistrali HSPI (CS 15, DC 2, MOSI 13, MISO 12, SCK 14, podświetlenie GPIO 21).
  2. Karta SD: na płytce siedzi na osobnej magistrali VSPI (CS 5, SCK 18, MISO 19, MOSI 23), więc nie dzieli już SPI z wyświetlaczem. Uprościło to kod i usunęło ręczne przełączanie linii CS.
  3. Układ ekranu: z 480×320 na 320×240 przeliczyłem ręcznie wszystkie współrzędne. Nagłówek ma teraz dwa wiersze, a w historii zmieściłem czas bez sekund.
  4. Drobne poprawki: program nie zatrzymuje się, gdy brakuje karty SD (pokazuje komunikat i działa dalej z domyślną grupą), zegar odświeża się bez przerysowywania całego nagłówka, a zbyt długi tekst dobiera mniejszą czcionkę i nie zawija się na sąsiednie linie. 
Widok ekranu w starej wersji (480x320 px)

 

Na mojej płytce z dwoma portami USB trzeba było ustawić dwie stałe na początku programu:

cpp
#define TFT_INVERT false
#define TFT_ROTATION 3

Na innych egzemplarzach mogą być potrzebne inne wartości. Jeśli kolory są negatywem, zmień TFT_INVERT, a jeśli obraz jest do góry nogami, zmień TFT_ROTATION między 1 a 3.

Biblioteki

  • WebSockets (Markus Sattler)
  • ArduinoJson 7
  • Adafruit GFX
  • Adafruit ST7735 and ST7789 Library

Płytka w Arduino IDE: ESP32 Dev Module.

Możliwości rozwoju

Sam moduł oferuje jeszcze kilka rzeczy, których ten program na razie nie używa:

  • ekran dotykowy (XPT2046), np. do przełączania monitorowanych grup,
  • wbudowana dioda RGB, która mogłaby zapalać się podczas odbioru,
  • fotorezystor do automatycznej regulacji jasności ekranu.

Wersja z jednym portem USB ma zwykle inny wyświetlacz (ILI9341). Po zamianie biblioteki na Adafruit_ILI9341 i konstruktora (Adafruit_ILI9341(&tftSPI, TFT_DC, TFT_CS, -1)) reszta programu powinna działać podobnie, ale tego nie sprawdzałem. Wersja ILI9341 nie była testowana.

 


 

✍️ Autor: Robert HF5WWL
📅 Data projektu: wrzesień 2026 r.
 📍 Lokalizacja: Wołomin, POLSKA
📁 Coś nie jasne? Pytaj poprzez e-mail (hf5wwl@gmail.com) lub w komentarzu 
🛠️ Poziom trudności: Łatwy 

📜 Program jest dostępny za darmo /aktualna wersja/. Wystarczy poprosić via e-mail. Jest możliwość otrzymania programu w wersji angielskiej.

 

 #DMR #BrandMeister #ESP32 #Krotkofalarstwo #HamRadio #Arduino #Cplusplus 
#IoT #DIYelectronics #EmbeddedSystems #RadioMonitor #OpenSource

. 

04 września 2026

MMDVM z emulatorem wświetlacza NEXTIN.

 

HotSpot podczas uruchamiania systemu (jeszcze bez obudowy).

    Podczas budowy mojego hotspotu MMDVM pojawiła się potrzeba zastosowania większego i bardziej czytelnego wyświetlacza niż typowy 0,96" ekran OLED. Zamiast kupować kolejny gotowy moduł (domyślnie Nextion), postanowiłem zbudować własny emulator wyświetlacza NEXTION, wykorzystujący kolorowy ekran TFT 320 × 240 pikseli oraz mikrokontroler ESP32.

    Urządzenie komunikuje się z hotspotem poprzez interfejs szeregowy dedykowany dla wyświetlacza NEXTION. Z punktu widzenia MMDVM mój emulator zachowuje się więc jak oryginalny wyświetlacz, ale cała grafika jest generowana bezpośrednio przez ESP32.

Złącze wyświetlacza NEXTION na płytce MMDVM DUAL
 

Co pokazuje wyświetlacz?

Podczas odbioru transmisji na ekranie prezentowane są najważniejsze informacje:

  • znak wywoławczy korespondenta,
  • imię operatora,
  • aktywna grupa TalkGroup,
  • poziom odbieranego sygnału RSSI,
  • wskaźnik jakości transmisji BER,
  • aktywny tryb DMR,
  • numer slotu /opcja/,
  • aktualny status RX/IDLE,
  • trzy ostatnio słyszane stacje (w czasie "oczekiwania").

Interfejs został zaprojektowany tak, aby najważniejsze informacje były widoczne z większej odległości. Zrezygnowałem więc z typowego „terminalowego” wyglądu na rzecz prostego, graficznego interfejsu.



Przykładowy ekran podczas normalnej pracy.
 

Wskaźnik poziomu sygnału

Dodatkowo wyświetlacz posiada graficzny wskaźnik poziomu sygnału. Jego wskazania są uzależnione od wartości RSSI otrzymywanej z MMDVM.

Im silniejszy sygnał, tym więcej aktywnych segmentów wskaźnika. Zastosowane zostało również kolorowe oznaczenie poziomu sygnału:

czerwony → żółty → zielony

Dzięki temu nie trzeba nawet odczytywać wartości liczbowej — jednym spojrzeniem można ocenić jakość odbioru.

Wskaźnik BER

Drugim ważnym parametrem jest BER, czyli Bit Error Rate. Na ekranie znajduje się zarówno wartość BER, jak i graficzny pasek.

Przy małym poziomie błędów pasek pozostaje krótki i zielony. Wraz ze wzrostem BER zmienia kolor na żółty, a przy większej liczbie błędów przechodzi w czerwony.

W przypadku cyfrowego DMR jest to bardzo przydatna informacja, ponieważ sam poziom RSSI nie zawsze mówi nam, czy transmisja będzie poprawnie odbierana.

Ekran oczekiwania

Gdy korespondent kończy nadawanie, wyświetlacz przechodzi w ekran oczekiwania na następnego korespondenta.

Gdy nie pojawia się nowy korespondent i grupa zostaje zamknięta znika sygnalizacja oczekiwania a jej miejsce zajmuje zegar.



 Dzięki temu od razu wiadomo, że hotspot pracuje, ale aktualnie nie odbiera żadnej transmisji.

 

Wygaszacz ekranu

Ponieważ wyświetlacz pracuje praktycznie przez cały czas, dodałem również prosty wygaszacz ekranu.

Po 5 minutach braku aktywności ekran zostaje wygaszony. Nie oznacza to oczywiście wyłączenia hotspotu — ESP32 oraz komunikacja z MMDVM nadal pracują. Opcjonalnie można wyłączyć programowo podświetlenie matrycy wyświetlacza. Ta funkcja jest ujęta w programie.

Pojawienie się nowej aktywności automatycznie wybudza ekran i ponownie pokazuje informacje o korespondencie.


 

ESP32 zamiast klasycznego NEXTION

Najciekawszą częścią projektu jest chyba właśnie sposób działania urządzenia.

Oryginalny wyświetlacz NEXTION posiada własny procesor i interpretuje polecenia przesyłane przez MMDVM. Tutaj jego rolę przejmuje ESP32.

ESP32:

  1. odbiera dane z interfejsu szeregowego MMDVM,

  2. analizuje polecenia przeznaczone dla NEXTION,

  3. wyodrębnia z nich informacje o korespondencie,

  4. rozpoznaje TalkGroup, RSSI i BER,

  5. generuje własny interfejs graficzny na ekranie TFT.

Dzięki temu wygląd wyświetlacza można zmieniać programowo bez ingerencji w konfigurację samego hotspotu.

 

Dlaczego właśnie tak?

    Projekt powstał przede wszystkim z ciekawości i chęci wykorzystania tego, co już miałem w warsztacie.

Zamiast ograniczać się do możliwości fabrycznego ekranu NEXTION, można stworzyć własny interfejs dokładnie taki, jaki jest potrzebny.

A ponieważ ESP32 ma znacznie większe możliwości niż klasyczny sterownik prostego wyświetlacza, pozostaje jeszcze sporo miejsca na dalszy rozwój programu.

Na tym etapie najważniejsze jest jednak to, że urządzenie działa stabilnie i spełnia swoją podstawową funkcję.

Reszta? Jak to zwykle w projektach krótkofalarskich bywa — skoro działa, to zawsze można jeszcze coś poprawić. 😉

 

Schemat połączeń (ESP32 <-> ST7789 & MMDVM)

Wyświetlacz ST7789 -> ESP32:

  • CS     -> GPIO 15
  • RST   -> GPIO 4
  • DC     -> GPIO 2
  • MOSI -> GPIO 23
  • SCLK  -> GPIO 18
  • VCC    -> 3.3V
  • GND   -> GND
  • BL       -> GPIO 32   /podświetlenie matrycy –opcja/

 

Połączenie z Pi-Star (UART):

  • RX2 (GPIO 16) ESP32 -> TX z płyty MMDVM / Raspberry Pi (3.3V Logic)

    TX2 (GPIO 17) ESP32 -> RX z płyty MMDVM / Raspberry Pi (3.3V Logic)

    (GND ESP32 -> GND Raspberry Pi / MMDVM  (WAŻNE!

 
  • Zwróćcie uwagę, że do wyświetlacza z tego złącza wysyłane są dane (Rx i Tx) oraz masa i +5V. Tak więc łączymy go z Vin ESP32 i nie potrzebujemy dodatkowego (osobnego) zasilania do modułu wyświetlacza.

    Należy też pamiętać, że zasilając wyświetlacz przez gniazdo USB modułu ESP32 zasilamy też moduł MMDV i Raspberry Pi. Tak więc zasilanie z gniazda Raspberry należy wcześniej wyłączyć.

     

Konfiguracja w programie Pi-Star

Aby emulator działał poprawnie, w panelu Pi-Star Configuration należy zmienić ustawienia w sekcji MMDVM Display Driver:

  • MMDVM Display Type: Nextion

  • Port: Modem (lub /dev/ttyAMA0 w zależności od połączenia)

  • Nextion Layout: G4KLX


     

✅ Podsumowanie

Mój emulator NEXTION jest więc niewielkim, samodzielnym terminalem informacyjnym dla hotspotu MMDVM.

ESP32 + TFT 320 × 240 + interfejs NEXTION/MMDVM pozwalają uzyskać czytelny, kolorowy ekran prezentujący najważniejsze informacje o aktualnej pracy hotspotu.

Projekt pokazuje również, że nie zawsze trzeba korzystać z gotowych rozwiązań. Czasami wystarczy mikrokontroler, wyświetlacz i trochę wolnego czasu, aby zrobić urządzenie dokładnie dopasowane do własnych potrzeb.

 

  

⚠️   Jeszcze jeden "drobiazg" na który proponuję zwrócić uwagę: Fabryczne "anteny" które były dołączone do MMDVM. Rezonans na częstotliwości 424 MHz. Może tylko mi się takie trafiły? :) Co prawda nadajnik ma około 15 mW ale tak być nie powinno. Proponuję sprawdzić co otrzymaliście w zestawie.



 

📜   Jeśli zainteresował Cię ten projekt i chciałbyś do niego program - napisz.    Z pewnością Ci go wyślę.

 

EDIT 05.07.2026 r. 

 W nowej wersji oprogramowania dodałem prosty interfejs WWW. Teraz można oglądać pracę HotSpota na ekranie komputera, laptopa lub tabletu. Jest to prosty interfejs ale możliwy do rozbudowania. Na tą chwilę tyle wystarcza. Tak to wygląda na ekranie komputera:




 
 
 
A tak teraz wygląda nowy ekran emulatora:
 


 

✍️ Autor: Robert HF5WWL
📅 Data projektu: sierpień 2026 r.
 📍 Lokalizacja: Wołomin, POLSKA
📁 Coś nie jasne? Pytaj poprzez e-mail (hf5wwl@gmail.com) lub w komentarzu 
🛠️ Poziom trudności: Łatwy  (jak się ma oprogramowanie) 
😊

 

 

 #DIY #DoItYourself #HAMRadio #HamTech #ESP32 #MMDVM #DMR #RadioAmatorskie #Krótkofalarstwo #Homebrew #Electronics #Maker #TechProject #DigitalRadio #DMRMonitor