Hallo Eugen,
langsam werde ich ratloser.
In HoTT2Duplex.ino steht:
... if (sensor.probe(HOTT_GPS_MODULE_ID)) ...
Und in HoTTClient.ino steht:
... if (sensor.probe(HOTT_GPS_MODULE_ID)) ...
Also der identische Quellcode, nur einmal funktioniert er, einmal nicht.
Zu deinem Vorschlag nach mehr Feedback durch das Modul.
Prinzipiell gehe ich dir recht, das das aktuell hilfreich wäre.
Allerdings funktioniert das, soweit ich die JetiExLib verstanden habe nicht, da ich erst die Start()-Funktion aufrufen muss und dann erst Ausgaben über die Sensoren oder JetiBox machen kann. Und die Start() wiederum muss wissen, welche Sensoren sie anzeigen soll. Das wiederum steht erst fest, nachdem ein HoTT-Modul erkannt wurde, da die ja unterschiedliche Sensorwerte liefern.
Zum Programmablauf von HoTT2Duplex:
nachdem der Bootloader des Arduino fertig ist (Dauer geschätzt ca. 1s), wartet das Modul nochmal 3s, um einem evtl. angesteckten Graupner-Regler mit Telemetrie Zeit zu geben zu starten.
Dann fragt es im 100ms-Intervall die verschiedenen möglichen HoTT-Module ab. Sollte sich eines melden, stellt sich HoTT2Duplex auf dieses HoTT-Modul ein. Während dieser Abfragezeit, blinkt die LED mich ca. 1 Hz.
Wenn es also dauerhaft mit ca. 1 Hz blinkt, bekommt HoTT2Duplex keine passende Antwort. Entweder sendet der Graupner-GPS keine oder eine falsche. Letzteres glaube ich nicht.
Sobald es ein Modul gefunden und erkannt hat, wechselt das Blinkintervall auf ein leicht hektische 10 Hz, während es den Sensor abfragt und die Daten an den Empfänger weiter gibt.
Kann es sein, dass das Graupner-Modul in der Konfiguration Graupner-GPS <-> HoTT2Duplex <-> Empfänger keinen Strom bekommt? Ist da eine LED dran, die leuchten sollte?
VG,
Norbert
PS: sh. PM