DMR Software

Ik knutsel zelf graag aan de software als die mij niet helemaal bevalt.
In een aantal gevallen is dat mogelijk omdat het open source is :

 

MMDVMHost met Nextion (project 2)

Extra software op de host is niet altijd wat je wil om je display aan te passen. Misschien ben je niet zo thuis in programmeren op een Linux systeem.
De Nextion displays hebben wat beperkte intelligentie aan boord en kunnen dus eigenlijk zelf ook wat actie ondernemen.

Dit project heeft als doel ervoor te zorgen dat MMDVMHost enkel gegevens naar de display stuurt, geen formatting, en dat dan alle verwerking betreffende fonts, groottes, kleuren, ... in de display zelf gebeuren.
Daardoor zal het veel eenvoudiger zijn om ingrijpende wijzigingen aan de layout te doen, enkel door de HMI van de Nextion display aan te passen !
Je kan dus zelf kiezen wat er moet gebeuren als een text te lang is, of als er bepaalde waarden overschreden worden, of ...

Dit kan doordat MMDVMHost na elk stuk gegevens ook een code stuurt die aangeeft wélke gegevens dat waren en vervolgens wordt een event gestart zodat de display dit kan verwerken.

Deze functie wordt ingeschakeld door Nextion Layout 3 of 4 te kiezen in MMDVMHost.ini

Deze code is opgenomen in de officiële MMDVMHost code !

It is not that straightforward to modify the MMDVMHost code if you want to change your Nextion display layout. Maybe you are not used to programming. Or you just do not want to.
The Nextion displays have some intelligence, so they can do a little processing themselves.

This projects makes MMDVMHost send only data to the display, no formatting whatsoever. This way the user is totally free to choose its fonts, colors, ... by just changing the Nextion HMI.

This is done by sending a code after each piece of data that was sent, and then starting an event on the display so you can process the just received data.

This function is activated by choosing Layout 3 or 4 in MMDVMHost.
(the code is part of the official MMDVMHost code!)

 

 

MMDVMHost met Nextion (project 3)

Diegenen die uitgebreide wijzigingen aan de Nextion willen doen, hebben dan ook vaak nood aan wijzigingen binnen MMDVMHost.
Dit is niet altijd evident en het kan ook wel even duren eer die wijzigingen in de MMDVMHost code worden opgenomen.

Daarnaast is er nogal eens een verschil in displaygrootte of ideeën, wat een algemene binary niet vanzelfsprekend maakt.

De oplossing is hier te vinden: een tussenprogramma dat de MMDVMHost commando's aan de Nextion display onderschept, analyseert, aanpast, wist, wijzigt, uitbreidt, ...

Er zijn al een reeks voorbeelden beschikbaar, van een eenvoudig voorbeeld waar TA lengte en kleur in de display worden aangepast, tot een geavanceerd voorbeeld waarbij de rustpagina wisselt tussen 2 schermen, met CPU temperatuur, load, freq. enz.

Als extra is het mogelijk knoppen op je display te voorzien die een actie op de host (bv de Raspberry Pi) uitvoeren. Als voorbeeld is er een 'systeem' pagina gemaakt met enkele knoppen (o.a. start en stop van MMDVMHost, uitzetten of herstarten van de Pi).
Het is mogelijk linux commando's te programmeren in de display, die dan uitgevoerd worden op de host. Je moet daarvoor op de Pi niets programmeren !

Indien er een bestand met TG <--> naam aanwezig is, kan de TG nummer vervangen worden door de TG naam.

Ook kan een bestand 'stripped.csv' (hetzelfde als voor de md380tools) aangeboden worden, dan worden de gebruikersgegevens opgezocht en getoond. Er is een voorbeeld inbegrepen dat de huidige spreker en de vorige spreker op het display toont met hun bijkomende gegevens (naam, woonplaats, land) !

NB: deze voorbeelden maken ook gebruik van de functionaliteit van 'project 2', dus het is nodig dat MMDVMHost met Layout 3 of 4 loopt.

 

Whan you want extensive changes to the Nextion Display layout, you have to change MMDVMHost. This is not always easy and not all code will be part of the MMDVMHost release. The solution here is to use an intermediary program, one that takes all communication from MMDVMHost, changes it as you wish and feeds it then to the display.

This software does this and can do a lot of things: just changing TA length and color or  adding data as temperature, CPU load, frequency, ...

And as an extra feature it is possible to define buttons on your display to do some actions on the host (mostly a RPi), i.e. (re)starting MMDVMHost, powerdown, ... without having to program something on the host itsself !

And when you have a file with TG vs Name and the stripped.csv from the md380tools, the TG name and userdata will be searched and shown on the display. See the example in the movie :

 

 

 

 

    Klik voor een filmpje !

    Clickfor a movie!

 

 

 

 

 

 

Code beschikbaar in mijn NextionDisplay repository op github

Code available in my NextionDisplay repository op github

 

 

md380

Wat betreft de md380 firmware, had ik graag een andere kleur van achtergrond zodat het contrast beter is en de call (en eventueel naam) gemakkelijker afleest.
Daarnaast zou ik het ook leuk vinden als mijn toestel een seintje geeft als een bepaalde persoon op het netwerk komt.

 

 

     Kijk hiervoor op de betreffende pagina.

 

 

 

 

MMDVMHost met Nextion (project 1)

Bij MMDVMhost krijg ik kriebels van het letterype op de Nextion displays. Dit is geen probleem van MMDVMHost, maar van de Nextion software.

De Nextion displays maken enkel gebruik van monospace fonts. Als je dan een Arial gebruikt, wat een proportional font is, ziet dat er niet uit.
Ik heb me dan maar eens geamuseerd met een mooier uitziend font te maken voor de nextion.

Daarnaast zou het ook wel handig zijn als op het MMDVMHost rustscherm het actieve ip-adres verschijnt.
Maar het is toch ook zeker fijn als de Talker Alias op het scherm komt :

 

Kijk ook nog op de betreffende pagina.

NB: Sinds 15/11/2017 is mijn code opgenomen in de officiële MMDVMHost code die je kan terugvinden op github.

 

SMS met openSPOT

Wil je een bericht op je DMR toestel van je eigen computer of servertje ?
Ik had graag een berichtje als er thuis iemand aan de voordeur belt.

Hoe ik dat oploste, vind je op de betreffende pagina.

 

 

Vragen ? Suggesties ? Contacteer me !