GPS monitor for GPSDO

Dit is een standalone monitor kastje dat laat zien of ik mijn GPSDO output kan vertrouwen, en wat de ontvang condities zijn.

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2865__Mietro_GPS_monitor_for_GPSDO-600pix.jpg
Alle plaatjes klikbaar voor grotere versies

Een GPSDO (GPS Disiplined Oscillator) is een mooi ding. 10MHz en 1pps output met zeer hoge nauwkeurigheid. Maar dan moet je z’n output wel kunnen vertrouwen. Het is mij gebeurd, zowel thuis als bij een vriend, dat de 10MHz onverwachts niet meer bleek te kloppen vanwege slechte ontvangst door een flinke regenbui of dikke, donkere wolken.
Dus heb ik m’n GPSDO sinds die tijd gemonitord.

Dat deed ik op m’n meetPC met VisualGPSView, en dat gaat prima. Maar staat er wel steeds een PC aan, met het scherm bezet door VisualGPSView. Niet handig als je de meetPC wilt gebruiken voor metingen, en niet energiezuinig bovendien.

Vandaar mijn idee voor een klein, dedicated apparaatje om m’n GPSDO te monitoren. “Gewoon” de NMEA data uit de GPSDO uitlezen, en daaruit de parameters distilleren die laten zien hoe de GPSDO er bij staat.

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2877__Mietro_GPS_monitor_for_GPSDO_-_front_view-600pix.jpg

En dat laatste bleek toch minder “gewoon” te zijn…. Er bleken meerdere "GPS programmaatjes" te zijn voor Arduino etc. Maar allemaal geven ze de typische GPS data: locatie en GPS tijd. Maar ik weet wel hoe laat het is, en ook wel waar ik ben :-).

Ik wil weten of mijn 10MHz betrouwbaar is. Dus of er een fix is, en wat voor fix. In welke mode staat de GPS ontvanger? Hoeveel satellieten worden er ontvangen, en met welke signaalsterkte?

Dus deze GPS monitor for GPSDO begon met het schrijven van eigen Arduino software. Gelukkig bleek er wel een library te bestaan waarmee je data uit elke willekeurige NMEA sentence kunt halen: TinyGPS++.
(andere GPS libraries ondersteunen alleen de meest populaire NMEA strings, waar tijd en locatie in staan)

.

Het hoofdscherm van de GPS monitor for GPSDO:

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2060__GPSmonitor_-_Home_display-600pix.jpg

Je ziet het aantal satellieten dat gebruikt wordt voor de fix (tracking), en dat de GPS ontvanger een fix heeft (gelockt is).
De PDOP waarde is een maatstaf voor de kwaliteit van die fix. Als laatste de mode waar de GPS ontvanger in staat.

Je kunt dan doordrukken naar vervolgschermpjes, voor gedetailleerdere info. De belangrijkste:

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2064__GPSmonitor_-_Satellite_SNR_display-600pix.jpg

De signaal-ruis verhouding van de satellieten die gebruikt worden.

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2061__GPSmonitor_-_GPS_Mode_display-600pix.jpg

Het GPSDO mode display. Meer info over de precieze settings van de GPSDO.

.

De OK of ERROR indicatie LED

Dat display met precieze informatie over het wel en wee van de GPSDO is natuurlijk mooi, maar je moet het wel aflezen. En dat doe je natuurlijk niet als je ondertussen aan het meten of solderen bent :-). Dus zit er naast het display ook een grote indicatie LED.

Deze LED functioneert geheel onafhankelijk van het display, en geeft in één oogopslag de status van de GPSDO weer.
Zolang alles goed gaat brandt hij groen. Wordt er ergens een conditie marginaal, dan wordt de LED geel. Gaat er iets mis, dan gaat de LED feller rood branden.
En verliest de GPSDO z’n lock, dan gaat de LED nóg feller rood knipperen.
Heb je dat nóg niet in de gaten (of ben je niet in de kamer) dan gaat er bij dat knipperen ook een zoemer piepen.

Alle mogelijke condities, en hoe daar op te reageren heb ik in een error handling matrix gezet.

In het dagelijks gebruik vertelt die LED je alles wat je weten wilt, en heb je het display eigenlijk niet nodig.

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2870__Mietro_GPS_monitor_for_GPSDO_-_top_view_rear-600pix.jpg

.

De hardware

De software draait op een ProMicro. ProMicro omdat z'n ATmega32U4 een aparte, geïntegreerde USB aansluiting heeft. Daardoor blijft z'n hardware seriële poort vrij voor de NMEA ingang. (Aanvankelijke pogingen met Soft-Serial leidden tot veel CRC fouten in de uit te lezen NMEA strings...)

.
Het leukst is de ingangstrap:

https://www.miedema.dyndns.org/co/2025/gpsmon/GPS-monitor-for-GPSDO---input-schema-600pix.png

Dit ingangstrapje verwerkt zowel TTL vanaf 3Vtt als RS-232 (tot plus en min 20V). Bij al die ingangsspanningen blijft de ingangsimpedantie tussen 3kΩ en 7kΩ (RS-232 norm). De ingangstrap overleeft probleemloos spanningen tot plus en min 60V.

De ingang is geschikt voor baudrates t/m 57600 baud. De ingang is galvanisch gescheiden. Dat is vooral nuttig als de GPSDO monitor via USB aan een PC hangt. Scheelt weer aardlussen in een meetopstelling :-). Ik meet slechts 8,5pF tussen input en massa.

Sleutel is een snelle, gevoelige opto-coupler, die gevoed wordt uit stroombronnetjes. Door voor de G-S instelspanning voor de FET stroombronnetjes gebruik te maken van (een deel van) de spanningsval over de opto LED (of de anti-parallelle 1N4148s) kon de daar gebruikelijke instelweerstand vervallen. Veel serie weerstand in het ingangscircuit is niet mogelijk omdat ook bij 3V input de opto-fotodiode voldoende stroom moet krijgen. En zo kan alle toelaatbare weerstand verhuizen naar de ingangen, waar het meehelpt met de beveiliging. (en het ingangsfilter)

Ook leuk is, dat verkeerde polariteit van het ingangssignaal automatisch wordt ondervangen. Na de opto-coupler zit een invertertrap, die door de processor aangestuurd wordt. Zo worden de meeste TTL / RS-232 aansluit problemen automatisch ondervangen :-).
(GPSDO fabrikanten maken er een zootje van: TTL, RS-232, of TTL, maar dan geïnverteerd als "nep RS-232", het komt allemaal voor)

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2871__Mietro_GPS_monitor_for_GPSDO_-_rear_view-600pix.jpg

De GPSDO monitor kan zowel via USB als extern 9...15V gevoed worden. Overschakelen gaat automatisch.
De externe voedingsingang is beveiligd tot plus of min 60V. (Meten aan die Tranzorb + Polyfuse beveiliging was leuk met TestController :-))

Dat ik bij dit ontwerp wat meer aandacht heb besteed aan beveiligingen is in nagedachtenis van onze mede CO'er rbeckers. Zijn wijze woorden, en de vele discussies op CO over beveiligen zitten nog in mijn hoofd.

Het complete GPS monitor for GPSDO schema vindt je hier.

.

De hele hardware heeft een jaartje op breadboard geleefd. Nadat het ontwerp uitgekristalliseerd was werd het tijd om het op een print te zetten:

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2863__Mietro_GPS_monitor_for_GPSDO_-_PCB-600pix.jpg

De print is een mengelmoes van SMD en through hole. SMD is fijn, omdat je dan makkelijk een ononderbroken massavlak aan de onderkant van de print kunt houden. Maar ik heb nog veel through hole liggen. En ook componenten die meer moeten dissiperen (bv bij een foutsituatie) heb ik liever in through hole, wat los van de print.

https://www.miedema.dyndns.org/co/2025/gpsmon/IMG_2869__Mietro_GPS_monitor_for_GPSDO_-_top_view_front-600pix.jpg

.

TestController

Natuurlijk kon ik het niet laten om m'n GPSDO monitor een PC interface mee te geven, zodat met SCPI achtige commando’s de GPS monitor ingesteld kan worden, en natuurlijk ook uitgevraagd.

En natuurlijk heb ik een TestController drivertje geschreven voor de GPSDO monitor:

https://www.miedema.dyndns.org/co/2025/gpsmon/GPSmon-TC-setup-window-600pix.png

Leuk extraatje is dat in dit venster je met een schuif het display contrast van de GPSDO monitor kunt bijregelen :-).

In TestController kun je nu alle parameters van de GPSDO loggen:

https://www.miedema.dyndns.org/co/2025/gpsmon/GPS-monitor-RH20-15-02-2023-clear-sky-10s-600pix.png

Voordeel in de praktijk is dat ik tijdens een meting de GPSDO gegevens mee kan loggen. Als er dan later iets onverwachts zie, dan kan ik kijken of dat GPSDO gerelateerd is.
Maar het is ook interessant om te zien wat er gebeurt als de weersomstandigheden veranderen, hoe goed je antenne dan voldoet etc.

.
Eigenlijk heeft deze GPS monitor for GPSDO tijdens het ontwikkelen zijn nut al bewezen: Ik kwam er achter dat mijn Miller GPSDO sneller zijn fix verloor dan nodig. Met een veranderde instelling in z'n firmware was dat snel verholpen. Maar zonder GPSDO monitor was ik daar nooit achter gekomen :-).

groet, Gertjan.

Goed idee, en ook super fijn afgewerkt zowel mechanisch als elektronisch en softwarematig.

De uitvoering en afwerking zijn inderdaad indrukwekkend - zelf ben ik niet zo goed in die hoek, en ben dus vol bewondering en een klein beetje jaloezie ;) Vooral het schema van de ingangstrap maakt indruk.

Maar waarom toch alweer naar "libraries" grijpen? Het NMEA-dataformaat is uitstekend gedocumenteerd, en het decoderen met een pythonscriptje is een eitje. Maak jezelf toch niet afhankelijk van externe software, die na een upgrade misschien plotseling niet meer voldoet? Eigen programmatuur eerst!

En in de marge: de getoonde getallen vind ik niet indrukwekkend. Mijn zeer simpele opzetje toont - in de auto, tijdens het rijden - galant 15 satellieten, soms zelfs nog meer, GPS plus Glonass. Binnenhuis durft het al eens wat minder zijn, uiteraard, maar 5 of 6 vind ik toch erg weinig.

Een genot voor het oog om te zien, met zoveel aandacht voor detail gebouwd.

En verliest de GPSDO z’n lock, dan gaat de LED nóg feller rood knipperen. Heb je dat nóg niet in de gaten (of ben je niet in de kamer) dan gaat er bij dat knipperen ook een zoemer piepen.

Enige wat er eigenlijk nog ontbreekt is een relais-uitgang om een aan de buitengevel bevestigd zwaailicht met sirene te activeren, zodat ook bij buitenactiviteiten er niets van de status ervan gemist hoeft te worden. En dan weten de buren ook gelijk dat de GPSDO z'n lock kwijt is.... :)

Zonder flauwekul, ik zit likkebaardend naar dit project te kijken.

Op donderdag 16 januari 2025 17:49:49 schreef Paulinha_B:
Maar waarom toch alweer naar "libraries" grijpen? Het NMEA-dataformaat is uitstekend gedocumenteerd, en het decoderen met een pythonscriptje is een eitje. Maak jezelf toch niet afhankelijk van externe software, die na een upgrade misschien plotseling niet meer voldoet? Eigen programmatuur eerst!

Ieder heeft z'n eigen expertize. Ik ben geen programmeur. Tijdens het schrijven van de software voor deze GPSDO monitor heb ik veel tijd doorgebracht met het lezen van C boeken. En dus veel (net genoeg... :-)) geleerd. En dus was ik blij dat ik het decoderen van de NMEA strings kon "uitbesteden".
De afhankelijkheid valt wel mee. Die library staat op m'n eigen harde schijf, en kan dus dezelfde versie een volgende keer weer mee compileren.

En in de marge: de getoonde getallen vind ik niet indrukwekkend. Mijn zeer simpele opzetje toont - in de auto, tijdens het rijden - galant 15 satellieten, soms zelfs nog meer, GPS plus Glonass. Binnenhuis durft het al eens wat minder zijn, uiteraard, maar 5 of 6 vind ik toch erg weinig.

Mijn Miller GPSDO maakt gebruik van een Jupiter TU30-D140 Jupiter GPS engine. Daarmee kun je heel elegant een GPSDO bouwen omdat hij een 10kHz output heeft. Maar inmiddels is het wel een oud beestje, dat een stuk dover is dan moderne GPS ontvangers.

Mijn antenne ligt op zolder, om blikseminslag problemen etc te omzeilen. Met helder weer worden er 7 tot 8 satellieten gebruikt voor de fix.
Maar zolang er 4 of meer satellieten zijn is de 10MHz kwaliteit identiek.

En het is een GPS ontvanger, dus Beidu etc heeft hij geen boodschap aan ;-)

.

Op donderdag 16 januari 2025 17:57:43 schreef nonius:
Enige wat er eigenlijk nog ontbreekt is een relais-uitgang om een aan de buitengevel bevestigd zwaailicht met sirene te activeren, zodat ook bij buitenactiviteiten er niets van de status ervan gemist hoeft te worden.

Ik moet bekennen dat precies deze gedachte door mijn hoofd is gegaan :-). (Ik moest er inwendig om lachen).
Dat was, toen ik in een vrij laat stadium, toch die buzzer heb toegevoegd. Ik bedacht dat als je druk bezig bent, je ook die rode LED kunt missen.

Bij een nieuw ontwerp blijf je altijd functionaliteit bij verzinnen. Het is de kunst om onderscheid te maken tussen wat een zinnige toevoeging is, en wat eigenlijk "over the top" is.

groet, Gertjan.

Inderdaad indrukwekkende kwaliteit van afwerking. Ben wel nieuwsgierig naar hoe je dat doet. Uitbesteed of zelf gedaan?

Het is de kunst om onderscheid te maken tussen wat een zinnige toevoeging is, en wat eigenlijk "over the top"is.

Ben ik met je eens en er zit ook nog een grijs gebied ertussen. De buzzer is wat mij betreft goed genoeg. Maar als je in verschillende ruimte werkt en je meetapparatuur staat ook verdeelt over die ruimtes dan is een extra uitgang wel handig.

[Bericht gewijzigd door benleentje op (61%)]

Op donderdag 16 januari 2025 18:43:49 schreef benleentje:
Inderdaad indrukwekkende kwaliteit van afwerking. Ben wel nieuwsgierig naar hoe je dat doet. Uitbesteed of zelf gedaan?

Ha Benleentje,

In dit geval is het een kwestie van beide.

Het kastje is een standaard Hammond kastje. Normaal zaag/boor/vijl ik dan zelf het frontje en achterkant.

Ik ontwerp frontje en achterkant in Coreldraw:

https://www.miedema.dyndns.org/co/2025/gpsmon/GPSDO-monitor---front-donker-grijs-v10-600pix.png

Vervolgens print dat op dik fotopapier. Na een nachtje drogen plak ik daar boeklon overheen om het krasvast te maken, en het frontje een mooie oppervlakte structuur te geven.
Uit dezelfde Coreldraw tekening is gemakkelijk ook een boormal te distilleren, zodat alle gaten op de goede plek komen.

Vandaar dat ik blij ben met deze Hammond kastjes: er zit een bezel om front en achterkant. Ik monteer die bezels verkeerd om, zodat ze wat uitsteken. Zo blijven de zijkanten van het fotopapier verborgen.

Dit keer wilde ik uitproberen hoe het is om een frontje bij een printboer te laten maken. De achterkant komt dus bij JLCPCB vandaan. Het bevalt goed: keurig op maat, ziet er netjes uit, en goed te betalen. (5 achterkanten voor iets van 4...5 Euro)

Het karton+boeklon opplakfrontje op het frontpaneel was ook nodig om de verzonken boutjes voor de displaybevestiging te bedekken.

De bij het kastje meegeleverde parkertjes gebruik ik niet. Ik tap M4 draad in het kastprofiel, omdat ik die zwarte inbusboutjes mooier vind :-).

groet, Gertjan.

Mooi project en netjes afgewerkt!

Op donderdag 16 januari 2025 17:49:49 schreef Paulinha_B:
Maar waarom toch alweer naar "libraries" grijpen? Het NMEA-dataformaat is uitstekend gedocumenteerd, en het decoderen met een pythonscriptje is een eitje. Maak jezelf toch niet afhankelijk van externe software, die na een upgrade misschien plotseling niet meer voldoet? Eigen programmatuur eerst!

Ah, het not invented here syndroom. Ik besteed mijn tijd liever aan andere dingen, dan aan het maken van libraries die anderen al (beter) hebben gemaakt :).

Heel erg strak gebouwd.

Ha Gertjan,

mooi stukje werk. Allereerst de gedachte er achter en de uitvoering. Strak!

Ga je er verder nog wat mee doen? De bekende vraag "Is er een printje van"? ik denk dat er wel liefhebberij voor is.

Groet,
N.

Keurig gedaan! Blauw is je favoriete kleur?

Ha NKHteB,

Dank :-).

Ik heb nog 4 printen liggen. Dus je bent van harte welkom :-)

Wel is het goed om te beseffen dat het een GPS monitor for GPSDO is.
Hij is dus bedoeld voor, en werkt goed met, de NMEA strings uit GPS ontvangers.

Veel moderne ontvangers zijn GNS ontvangers. (Global Navigation Systems, = Multi satelliet systeem ontvangers). Ze ontvangen naast GPS ook GLONASS, BeiDou en Galileo.
Helaas zijn daardoor ook hun NMEA strings anders. Die strings beginnen met $GN... (Global Navigation System) in plaats van $GP... (Global Position System).

Deze NMEA strings worden daardoor door mijn monitor helaas niet herkend. Toen ik daar achter kwam was ik eigenlijk al klaar, en het processor geheugen al bomvol.
Hier is dus wat te doen als ik een nieuwe GPSDO aanschaf....

Maar voor jouw HP GPSDO's zou het prima moeten werken.
Stuur maar een mailtje als je interesse hebt.

groet! Gertjan.

Ha Raaf,

Mijn favoriete kleur is eerder geel. Maar een geel kastje is ook zo wat :-).
Het kan natuurlijk wel, Prema heeft bv gele DMM's uitgebracht. Maar of ik dat mooi vind??

Een beetje eenheid in uiterlijk van mijn producten is toch wel leuk. Grijs met blauw is een goede combi. Ooit mee begonnen, en nu dus "traditie".

Eerdere behuizingen waren vaak zwart, zoals m'n MasterClock of Rubidium.
Nu dus maar eens wat vrolijkers uitgeprobeerd :-)

groet, Gertjan.

Op donderdag 16 januari 2025 17:49:49 schreef Paulinha_B:

En in de marge: de getoonde getallen vind ik niet indrukwekkend. Mijn zeer simpele opzetje toont - in de auto, tijdens het rijden - galant 15 satellieten, soms zelfs nog meer, GPS plus Glonass. Binnenhuis durft het al eens wat minder zijn, uiteraard, maar 5 of 6 vind ik toch erg weinig.

James gebruikte een Rockwell GPS module van eind jaren '90.

Die module heeft overigens behalve NMEA ook een rockwell binary mode, die veel gedetailleerder info van de satellieten uitgeeft.

Ha joopv,

Inderdaad, de Rockwells zijn twee talig.

Het Rockwell taaltje is fabrieks-eigen, en specifiek voor de Zodiac GPS receiver engine.
Ik heb het gebruikt om m'n Miller beter naar wens in te stellen.

NMEA daarentegen is een wereldstandaard. Niet alleen voor GPS maar voor veel meer. Bijna alle GPS ontvangers kunnen NMEA data uitgeven.

Dus door voor NMEA te kiezen is mijn monitor veel universeler bruikbaar.
(Op het moment gebruik ik hem voor m'n Trimble Thunderbolt.)

Overigens geeft NMEA zeer gedetailleerde info over de GPS ontvanger. Dingen als receiver status, 2D of 3D mode, GPS quality indicator, GPS of Diff. GPS fix, zitten er allemaal in. Wel moet je die info uit verschillende NMEA sentences peuren.

M'n GPS monitor for GPSDO laat meer dan voldoende info zien om te beoordelen of m'n 10Mhz betrouwbaar is. Maar laat me ook zien hoe de GPS ontvanger is ingesteld.

groet, Gertjan.

Ah, het not invented here syndroom. Ik besteed mijn tijd liever aan andere dingen, dan aan het maken van libraries die anderen al (beter) hebben gemaakt :).

Toch is er veel voor te zeggen om dit ff zelf te maken. Het is ZO triviaal dat het zoeken naar een werkende library en die ook nog begrijpen meer tijd kost. En dan moet je maar hopen dat die library ook nog precies doet wat je nodig hebt, en je dus niet tegen iets stompzinnigs als een $GP / $GN dingetje oploopt (en dat is waarschijnlijk makkelijk in de libray te fixen, de strings die er anders uit zien en ongetwijfeld ook andere informatie bevatten minder makkelijk).
Kortom voor Gertjan z'n doel is het prima gelukt. Als de volgende een GNSS-ding is: back to the drawing board! (ofwel: andere library scoren. En welke het ook wordt: de interface naar je eigen code is ook anders).

Dat 'soft serial' zo beroerd werkt, kan bijna niet anders dan aan gebruikte libraries liggen - de kwaliteit is erg wisselend. Normaal 'doet' GPS NMEA 4800bps. Dat is met een timer interrupt appeltje-eitje in software...

Mooie afwerking, Gertjan. Waar heb jij display en bezel vandaan? LCDs vind je op elke straathoek. Bezels lijkt toch wat moeilijker te liggen. Iets passends vinden en dan ook nog een plastic en geen 'gouden*' variant...

*Niet vastgesteld, maar de prijzen die men er zo her en der voor vraagt doen het vermoeden.

Ha EricP,

Ik begrijp dat ik voor m'n volgende software aanpassing even bij jou moet aankloppen, omdat het voor jou toch een fluitje van een cent is :-).

Wat serieuzer : ik was inderdaad al van plan om voor dat $GP / $GN dingetje in de library te gaan neuzen, om te kijken of ik het daar aan kan passen.

Wat betreft soft serial: Had je meegekregen dat m'n monitor werkt tot baudrates van 57600 baud? Niet elke fabrikant houdt zich aan de officiële norm van 4800 baud (en er is een nieuwere NMEA norm van 38400 baud). Daarnaast moet de monitor zo snel mogelijk antwoorden op vragen via z'n USB poort. (Uitlezen van data kan sneller/vaker dan de data binnenkomt). Verder vind ik soft-serial bepaald niet elegant.

Het display is inderdaad van het model "op iedere straathoek".
Een passend bezel vinden bleek tot mijn verbazing lastig. Het display is immers super standaard 16x2. Uiteindelijk vond ik het hier bij (tegenwoordig) mijn favoriete leverancier. (Ik schrok toen ik net de prijs zag! 6 Euro duurder dan toen ik het in november kocht....)

Dus als iemand een idee heeft voor een bezel voor een 16x2 LCD display?

Dat "op iedere straathoek" moet je ook mee uitkijken: Ik had mijn frontje getekend aan de hand van de tekening van de fabrikant van het LCD. Maar bij het bouwen bleek het display 1mm lager op z'n print te zitten.... Nameten dus in het vervolg!

Het valt me wel op dat op dit elektronicaforum er veel meer reactie is op de software dan op de elektronica.... :o .

groet, Gertjan.

Op zaterdag 18 januari 2025 08:38:29 schreef miedema:

NMEA daarentegen is een wereldstandaard. Niet alleen voor GPS maar voor veel meer. Bijna alle GPS ontvangers kunnen NMEA data uitgeven.

Dus door voor NMEA te kiezen is mijn monitor veel universeler bruikbaar.

Het is geen gratis, open standaard. In theorie kan iemand die het protocol publiceert of gebruikt in een eigen ontwerp een copyright case aan z'n broek krijgen.

Het zal wel loslopen voor een hobbyproject, maar stel dat je de markt op gaat dan moet je je wel indekken.

https://www.nmea.org/nmea-0183.html

NMEA 0183 pricing is as follows:
NMEA 0183- Marine Industry $1,150 (NMEA Member), $2,300 (Marine non member)
NMEA 0183- Government / Industrial / Testing $7,500
NMEA 0183- Consumer Electronics $10,000
To Purchase NMEA 0183 Standard please fill out the "Request to buy the NMEA 0183 Standard" button above.

Ha joopv,

Die prijzen die je noemt zijn voor het toegestuurd krijgen van een exemplaar van de NMEA 0183 standaard :-)

Gelukkig zwerven er ook nog wel oudere versies op het internet ;-).

NMEA is een protocol waarmee een zender informatie op een bus zet, en vele ontvangers die data kunnen aftappen en verwerken.
Fabrikanten van zo'n zender moeten inderdaad een licentie hebben. Ze krijgen dan een eigen 'Manufacturer Mnemonic Code" uitgereikt. Zo heeft Rockwell een eigen NMEA sentence die begint met $PRWIZCH (Proprietary Rockwell ...)

groet, Gertjan

Ha Gertjan

NMEA2000 is een ander paar mouwen, maar 0183 is - voor GPS zaken - eigenlijk altijd 4800bps (dat is net zoiets als 4800baud, maar toch net ff anders). 38k4 wordt gebruikt voor AIS - met 4k8 krijg je bot gezegd de hoeveelheid data niet door de pijp. Verder houdt ook dat zich netjes aan string lengten enzo.

Uiteraard kun je vaak andere bitrates instellen. En lang niet iedereen doet het 'netjes' (ik heb hier nog ergens een 'mouse GPS' zwerven die 9k6 doet... tot je die met wat config op 4k8 zet en dat gaat weer goed tot de backup goldcap een keer leeg is). Maar goed, dat had je zelf ook al vastgesteld...
Overigens legt de NMEA0183 spec ook de bitrates vast. Daarmee is dat ding wat 9600bps doet DUS geen NMEA - al klopt het data format wel. Voor jou totaal irrelevant (maar op bootjes best belangrijk): de spec legt ook vast waar galvanische scheidingen moeten zitten. Het gaat dus ruim verder dan 'zo zou een string er uit kunnen zien'.
(voor jou irrelevant omdat je op RS232 interfaced en dat is geen NMEA; die galvanische scheiding heb je blijkbaar zelf verzonnen, met goede reden, en, erg charmant uitgevoerd).

'Software UART' is in elk geval voor 4800bps prima te doen als je een niet te onhandige piepsteen als clock hebt. En er niet een hele sh*tload aan andere interrupts de boel verstiert - voor 4800bps moet dat best veel zijn, want zo kritisch is dat niet. Ik ben het helemaal met je eens dat 'hardware' charmanter is, maar zeker als je libraries bij elkaar harkt, dan is dat ook geen garantie (zoals gezegd: de kwaliteit is sterk wisselend: van 'uitstekend' tot 'de eerste script kiddie kan het beter').

Nameten dus in het vervolg!

Been there, done that :)

Het valt me wel op dat op dit elektronicaforum er veel meer reactie is op de software dan op de elektronica.... :o .

Als ik het zo zie, dan is de electronica ook redelijk 'straight forward' op het stukje RS232-achtige input na (zelf bedacht of ook ergens gejat?). Maar goed, dat schreef Paulinha_B ook al.

Voor wat betreft het uit elkaar peuteren van strings: Die zijn natuurlijk destijds verzonnen om dat 'makkelijk' te maken - het idee van die output is dat een andere controller het gaat lezen. In die tijd zal C wel de standaard taal geweest zijn: strtok en consorten doen dat zo voor je. Het is dus niet een 'doe maar eens wat' format, maar er is bij de ontwikkeling een beetje nagedacht over het parsen.

Die bezels blijft inderdaad een dingetje. Het ene 16x2 display is net het andere niet. En je zou verwachten dat er (vanwege de moeilijke verkrijgbaarheid en de prijs) er wel wat tekeningen voor 3D printers te scoren zijn of dat ze per gros in alle maten bij de internetchinees te koop zijn. Ik heb op beiden al eens gezocht. De oogst was mager. Ik ben dus niet de enige die daar tegen aan loopt...

Ha EricP,

NMEA is inderdaad een strakke norm. Jammer dat fabrikanten van GPS ontvangers er zich zo slecht aan houden. Bij een zoekslag kwam ik van alles tegen. Naast 4800bd, komt 9600bd eigenlijk nog het meest voor (o.a Trimble, U-Blox), maar ook hoger. Tel daarbij op dat die uitgang soms TTL, soms RS-232 en soms "RS-232 op TTL niveau" is.

Daar komt mijn idee uit voort om m'n ingang zo universeel mogelijk te maken. M'n sport was om zoveel mogelijk aan zowel NMEA, TTL als RS-232 standaarden te voldoen. Qua NMEA 0813 dus niet helemaal gelukt. (Een eerdere versie van NMEA 0813 specificeerde nog RS-232 signaal niveau's, daarna zijn ze overgestapt naar RS-422 niveaus.)

Maar aangezien ik mijn monitor niet op een schip ga gebruiken, maar aan verschillende GPSDO's zal hangen, denk ik dat mijn oplossing in alle gevallen wel zal voldoen :-)

groet, Gertjan.

Die verschillende interpretaties zullen er wel mee te maken hebben dal veel mensen denken dat het alleen maar over het data format gaat en voor de rest 'doe wat leuks'.
Idem dat sommige mensen van mening zijn dat alles wat 'serieel' is DUS RS232 is - want dat is serieel.

Overigens weet ik niet zo 1-2-3 of je niet aan de hardware eisen van 0183 voldoet. Als in: qua spanningen zou je die range moeten kunnen hebben en een weerstandje als termination is niet heel spannend (alhoewel het op 4k8 ook prima zonder werkt, maar hey... het ging over 'aan de spec voldoen' :) ).

Gaaf project, en super mooi afgewerkt. Vwb de zou 3D printen en netjes afwerken (indien nodig) ook mijn aanpak zijn. Kun je het exact maken zoals je zelf wil.

Qua modellen vind ik wel eea.
bezel