___________________________________________________________________________________________________________________________________________________________________________
___________________________________________________________________________________________________________________________________________________________________________

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.

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. 

 

 

 

 

 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 ale to za jaki艣 czas bo wi膮偶e si臋 to ze przepisaniem programu. Zrobi臋 to w wolnej chwili.


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


Brak komentarzy:

Prze艣lij komentarz

Zastan贸w si臋, czy to co tu napiszesz by艂o by mile widziane na Twojej stornie www lub na Twoim blogu...
Niestosowne komentarze b臋d膮 cenzurowane.