Vor kurzem habe ich mich hier im Forum angemeldet und mir die benötigte Hardware (und auch Software) zum Aufbau meines eigenen Rehoilers zugelegt. Vielen Dank an dieser Stelle vorweg für die tolle Unterstützung seitens der Community und allen voran natürlich Dete, der das Projekt ja maßgeblich vorantreibt (so, genug geschleimt...;-)
Ich habe also entsprechend der Anleitung die Hauptplatine (Oiler) zusammengelötet und mit einem ISP (testweise verschiedene) Hex-Files auf den AT168 geladen. Verschiedene daher, da ich über einige Hürden gestolpert bin und wild umherexperimentiert habe.
Zunächst hatte ich eines der berühmt-berüchtigten BT-Module vom Typ HC06 geordert, welches nicht zur Zusammenarbeit zu überreden war und ist. Man kann zwar kurzfristig eine Verbindung aufbauen, aber keinerlei Parameter verändern. Ein zweiter georderter BT-Adapter ließ sich dann mithilfe eine Arduinos ohne Probleme umkonfigurieren, so dass ich diesen mit den von mir gewünschten Prametern versehen konnte.
Bei meinen ersten Konfigurationstests habe ich festgestellt, dass er bei BAUD8 (115200 Baud) nur sehr unzuverlässig Daten transferiert. Den von Dete zur Verfügung gestellten HEX-Files entsprechend habe ich ihn dann auf BAUD3 (4800 Baud) gesetzt. Lesen und Schreiben per Terminal waren nun zuverlässig möglich. Dementsprechend habe ich final auch die Version 11.7 4800 Baud auf den AT168 überspielt. Dennoch war nach dem Zusammenstecken mit der Platine und dem Verbinden auf den HC06 eine Kommunikation mit dem Oiler nicht möglich, obwohl das BT-Modul generell eine stabile Verbindung ermöglicht hat.
Die Tücke lag hier wieder im Detail - ein Fuse Bit war schuld. Dieses Fuse-Bit, welches ich darauf hin entgegen der Empfehlung abgeändert habe, ist der Clock Divider. Dieser ist jetzt deaktiviert (CKDIV8=1). Der AT168 läuft jetzt also mit 8Mhz und siehe da - nach der Änderung hatte ich Zugang sowohl vom Handy als auch vom PC aus bia BT auf den Oiler. Ich musste die Software/Fusebits allerdings mit AVRDUDE brennen; das MyAVRProg-Tool scheint die Fuse-Bits nicht zuverlässig zu setzen. Auslesen geht damit ohnehin nicht wirklich.
Vom PC aus lässt sich der Oiler nun problemlos konfigurieren und vom Handy aus (Huawei P30 Pro) funktioniert die App mit kleineren Abstrichen auch recht gut. Meine Anregung ist - ich vermute, dass viele Komunikationsprobleme auf den Umstand der nicht optimalen internen Clock zurückzuführen sind - ließe sich bei einem etwaigen Modell 12 ein externer Quarz als Taktgeber in die Schaltung einbauen? Kosten tun die ja nicht viel zusammen mit den zwei benötigten Kondensatoren...
Der Funktions-Test mit dem Board verliefen erwartungsgemäß - die Tasterimpulse wurden stets mit der entsprechenden LED-Blink-Sequenz beantwortet und der Counter hat auch zuverlässig inkrementiert. Ich habe auch ein Tachosignal simuliert, um den Oiler in den Normal-Modus zu versetzen. Auch das verlief problemlos und die Cockpit-LED verlosch.
Als nächstes baue ich die GPS-Platine auf und werde dann auch hiervon berichten. Viele Grüße Daniel
Willkommen in der Runde und vielen Dank, dass Du über Deine Erfahrungen berichtest. Einmal mehr Gehirnschmalz und eine weitere Sichtweise schadet nie! Auch wenn es mir nicht viel sagt, aber das hat zum Glück nicht viel zu sagen.
ZitatDieses Fuse-Bit, welches ich darauf hin entgegen der Empfehlung abgeändert habe, ist der Clock Divider
Wo hast du denn diese Empfehlung her? ich habe hier schon öfter die Fusebit ins Forum geschrieben. Default wäre, der Clock Divider ist eingeschaltet. Also muss man ihn für unsere Schaltung ausschalten. Du hast sicherlich mit Khazama AVR programmiert, der verwirrt mich auch immer. CKDIV8=1 würde eigentlich heisen 1 = programmiert also eingeschaltet. Da aber der Defaultwert "Clock Divider" eingeschaltet ist, muss man ihn ausschalten also auf 1 setzten. Also stimmt es so betrachtet. Mit MyAVRProg-Tool habe ich es auch noch nie geschafft die Fusebit mit einem USBasp zu setzen. Das klappt bei mir mit dem MyAVRProg-Tool nur mit der Orginalhardware zuverlässig. Aber es gibt ja genügend Programmiersoftware für den USBasp mit dem man die Fusebit setzen kann.
Du hast recht - im Forum hast Du das Fuse-Bit richtig geschildert. Ich habe mich von den offiziellen Specs leiten lassen und dem tatsächlichen resultierenden Takt nicht so viel Bedeutung beigemessen. Ich hatte mich nur darauf fokussiert, dass keine externe Clock verwendet wird. Dann wird es nämlich eklig... Kann man so ein Brenn-Topic nicht pinnen, um die Suche nach solch esentiellen Informationen zu erleichtern? Die umgekehrte Logik beim Setzen der Fuse-Bits ist mir bekannt - das war tatsächlich nicht das Problem. Ebenso benutze ich avrdude, da MyAVRProg selbst mit dem MyAVR-USB-ISP nicht ordentlich bei den Fuse-Bits arbeitet. Khazama habe ich nicht benutzt. Erfreulicherweise läuft der Oiler jetzt genau so wie er soll - es fehlt noch das GPS-Modul.