Arduino Mega + 7" TFT + Touch + RTC3232 + nrf24 - komische Probleme

Ich habe für meine Lampensteuerung eine modernere Zentrale gebastelt… die zickt aber etwas. Der Sketch hat 2200 Zeilen - ich weiß nicht ob es Sinn macht den hier hoch zuladen.

Im Sketch vermute ich keinen groben Fehler, da der Sketch auf meiner “alten” Steuerung 1:1 läuft- nur wird da auch dem Display nichts angezeigt, da es ein kleineres Display mit anderem Treiber ist. Die Funktion kann ich aber an meinen Lampen erkenn, die machen was sie sollen.

Die einzelnen Funktionen wie Uhr, Touch, TFT etc. habe ich mit den Beispielsketchen durchprobiert und kann kein Indiz für eine fehlerhafte Verkabelung finden, da auch da alles funktionierte.

Einen der Fehler vermute ich bei der Spannungsversorgung- denn der Fehler ist nicht vorhanden wenn ich den Mega mit dem Rechner via USB verbunden haben- das ist auch der Fall wenn der Rechner aus ist.

Der 1. Fehler stellt sich so dar, dass die Uhrzeit “springt”- das sabotiert alle Zeit abhängigen Funktion. Sichtbar ist es durch die vielen Zeiger die bei der analogen Darstellung sichtbar sind. Bei der digitalen Anzeige sieht man die Uhrzeit direkt springen.

Die ganze Schaltung wird über den Spannungsbuchse des Mega von einem 12V Laptop- Netzteil mit Spannung versorgt- von der Buchse greife ich den Strom für 2 Steppdownwandler ab, die für das Display 5V und 3,3V generieren.

Der 2. Fehler betrifft die Touchfunktion. Ich nutze die UTFT libaries. Da habe ich offenbar noch einen Fehler im Sketch- den finde ich aber noch… Was mich irritiert ist, dass die Touchfunktion überhaupt nicht mehr geht. Ich habe anfänglich die Beispielsketche durchprobiert und diese verändert um die Funktionalität besser kennen lernen zu können.
Nachdem ich das Calibration- Beispiel durchgespielt habe und nach Anleitung die neuen Werte in der U(R)TouchCD.h gespeichert habe geht die Touchfunktion überhaupt nicht mehr (bei einem kleineren 3,5" Display aber ohne Probleme). Ich habe die Libary gelöscht und neu installiert, um die Standardwerte wieder zu bekommen. Die Touchfunktion bleibt aber tot…

Hat jemand eine Idee wie ich die beiden Fehler abstellen kann?

Bilder mache ich noch, damit man wenigstens die Verkabelung und den Display Fehler sehen kann… den Sketch kann ich auf Wunsch anhängen, wenn sich jemand das antun will… :wink:

Achso- was ich auch probiert habe… ich hatte anfangs für das PWM- Signal für die Displayhelligkeit PIN 7, da der den selben Timer nimmt, wie über die UTouch für die Touchfunktion (PIN 2- 6) definiert sind, hab ich die PWM Funktion auf 11 gelegt… dadurch ist das Springen der Zeit sichtbar reduziert… kann aber auch Zufall sein…

Du solltest dich über Techniken zur Fehlereingrenzung, Ausschlussverfahren, etc. informieren. Also den großen Sketch in Teile zu zerlegen und runterzubrechen, und parallel dazu funktionierende Beispiele zum Vergleich hernehmen.

Notfalls sogar IDE mit den entsprechenden Libs auf einem anderen Rechner installieren.

Wenn die Sketche kleiner sind, kompilieren sie schneller und laden auch schneller hoch. Das ist bei der Fehlersuche und Testen nicht zu unterschätzen.

Das 1. Problem habe ich gelöst... ich habe ein paar Netzteile durch getestet- und siehe da, es gibt bei einigen offensichtlich deutliche Störungen- nun habe ich eines welches OK ist, allerdings mit 10A überdimensioniert- aber das ist erstmal egal...

Nun bleibt das Problem mit der Touchfunktion- und wie gesagt, die geht auch mit den Beispielsketchen aus der UTFT nicht mehr. Das einzige was ich da hinzufüge ist eine Zeile die via "analogWrite" über PIN11 die Display- Hintergrundbeleuchtung aktiviert.

Kann ich durch irgendetwas die Touchfunktion hardwareseitig kaputt machen?

Hat irgend jemand eine Idee, ob ich eventl. etwas so verstellt habe, dass es nicht funktionieren kann?

https://eckstein-shop.de/70-MIT-Touchscreen-800480-SSD1963-MCU-Bus-TFT-LCD-Display-Kompatibel-Arduino

Es handelt sich um dieses Display - es ist für 5V / 3,3V ohne Levelshifter geeignet- somit würde ich kein Risiko sehen, dass der Controller kaputt gegangen sein könnte... oder doch?

geht den das

ElEspanol:
Notfalls sogar IDE mit den entsprechenden Libs auf einem anderen Rechner installieren.

Und da die Touch Beispiele ausprobieren.
Wenns nicht geht, anderer Mega. Wenns immer noch nicht geht, anderes Display

Die Beispiele hatte ich durchprobiert. Da die Tasten teils etwas daneben lagen, habe ich den Calibration- Sketch aus den UTFT laufen lassen und gemäß Anleitung die neuen Werte in die UTouchCD.h eingetragen. Seit dem geht es nicht mehr. Um die Werte zurück zu setzen habe ich die UTFT und Touch Libraries gelöscht und neu installiert... Nun geht es aber trotzdem noch nicht. :frowning:

So, ich habe nun alles komplett neu installiert und die Touch Funktion geht wieder... so wie es aussieht hingen also noch irgendwo die Wert von der Kalibrierung.

Nun habe ich dank dem Beispiel "Paint" festgestellt, dass die Orientierung des Touchs nicht paßt.... Ich habe etwas mit der Zeile

  myTouch.InitTouch(0);

gespielt bekomme es damit aber nicht in die richtige Richtung.... mit der Ausrichtung komme ich auch nicht weiter...

Führe ich die Kalibrierung erneut durch habe ich mit den neuen Werten wieder den selben Fehler.... es liegt also an der Ausrichtung des Touchs...

Das Display hab ich übrigens durch Änderung von 2 Werte spiegeln müssen- damit funktioniert das Display aber korrekt...