MMDVMHost + Nextion

Sinds 15/11/2017 is mijn code opgenomen in de officiële MMDVMHost code die je kan terugvinden op github. Hieronder staat nog mijn oorspronkelijke motivatie om die code te schrijven.

 

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 MMDVM rustscherm het actieve ip-adres verschijnt.

The font of the Nextion displays for MMDVMHost is rather ugly. This is not a problem of MMDVMHost, but a Nextion problem.
The Nextion displays only supports monospace fonts, while Arial is proportional. The conversion from one to another is not very goodlooking. So I took some time to create better looking monospace fonts.

Another pro for me, would be to see the active interface and IP address of my system on the startscreen.

 

 

 

 

 

 

 

 

 

Als we dan toch bezig zijn, doen we ineens maar verder:

Ook interessant is de Talker Alias.

De MMDVMHost software decodeert de TA al wel (dat kan je in de logs zien) maar doet er verder nog niets mee.
Mijn aanpassingen hebben er dan ineens maar voor gezorg dat die ook op de display verschijnen:

  • Indien er geen TA is, verschijnt de call of DMR id zoals voorheen
  • Van de moment dat de TA binnen begint te komen, zal deze ook op het scherm verschijnen. Om te laten zien dat dit de TA is, verschijnt die in het groen.
    De TA komt in maximum 4 stukken (afhankelijk van de lengte). Dit wordt verzonden tussen de voice data door, ongeveer om de halve seconde. Het kan dus tot ongeveer 2 seconden duren vooraleer de TA volledig doorkomt.
    Voor de geïnteresseerden : de ETSI spec (zie hoofdstuk 7.1.1)
  • De font verkleint tevens naar gelang de lengte van de TA, zodat de TA er volledig op kan.
  • Call of TA wordt grijs bij voice end. Blijft dan nog 3 seconden staan.

Another thing I would really linke, is to see the Talker Alias (when it is available). So I added some code:

  • if there is no TA, the call or DMR id are shown as before
  • the moment there is info about the TA, this will be shown on the screen. To mark it as TA, it will be in green.
    The TA arrives in 1 to 4 pieces (depending on length) inbound with the voice data. It can take up to about 2 seconds to arrive. The parts that already arrived will be shown.
    (I know, the ETSI spec suggests to show the TA only when fully arrived)
  • The font will be adjusted to a lower size if necessary
  • The call or TA will go to gray at voice end and stays for another 3 seconds

 

Sinds 15/11/2017 is mijn code opgenomen in de officiële MMDVMHost code die je kan terugvinden op github (github.com/g4klx/MMDVMHost/)

OPGELET: Je moet in MMDVMHost.ini een optie bijvoegen om de extra mogelijkheden te activeren (lees ook het README bestand in de Nextion_ON7LDS directory).

NB: Als je zelf een nieuwe MMDVMHost wil compileren, denk er dan aan eerst de actieve mmdvmhost te stoppen en dan te compileren en dan pas mmdvmhost terug te starten.

OPGELET: wanneer je een fout krijgt dat het model niet klopt, is waarschijnlijk de firmware van je display nog niet op de meest recente stand. Deze zou S78 moeten zijn.
Hoe los je dat op ?

    - start de nextion editor op windows
    - check of je de laatse versie hebt (menu About -> Check for new version)
    - zonodig de editor updaten
    - laad eender welke file in je display (bv maak een nieuwe, lege display)
    - normaal gezien gaat de editor dan eerst de firmware van de display updaten en dan het project laden
    - nu kan je mijn TFT file laden

Vragen ? Andere formaten nodig ? Suggesties ? Contacteer me !

 

You will find all files on github, my code is part of the official MMDVMHost tree since 15/11/2017

There is a new option in the INI file to choose for the Nextion Display Layout (also see README in the Nextion_ON7LDS directory)