Jump to content

[LCD 128x64 Bricklet] Tabs reagieren nicht mehr


Equinox

Recommended Posts

Hallo,

 

seit Kurzem habe ich das Problem, dass die "Tabs" auf meinem LCD 128x64 Bricklet nicht mehr reagieren. D.h., beim Berühren der Tabs passiert nichts. Die Buttons und auch die Wischgesten funktionieren aber weiterhin.

Wenn ich im Log nachschaue, dann kommen auch keine Events an. Für die Wischgesten kommen aber Tab-Events mit Pressure 1 an.

Woran könnte das liegen?

Link zu diesem Kommentar
Share on other sites

Hallo,

 

nein, kein Element über den Tabs und auch die Software hat sich seit langem nicht mehr geändert.

Es ist eher das Gegenteil: Das System läuft nun schon einigen Wochen ohne Neustart. Ich vermute, dass wenn ich den TF-Stapel vom Strom trenne und wieder neu starte (ohne das Programm neu zu starten), es wieder funktioniert. Ich möchte damit aber noch warten, falls ich noch irgendwas im aktuellen Zustand testen/nachschauen muss.

Link zu diesem Kommentar
Share on other sites

Ah, verstehe.

 

Da die Buttons noch funktionieren, muss die eigentliche Kommunikation mit dem Touch-IC ja noch auch noch funktionieren. D.h. das Problem muss irgendwo in der Implementierung der Tabs liegen.

 

Ich wüsste jetzt leider auf Anhieb nicht wie wir das weiter debuggen können. Reicht es wenn du dein Programm neustartest (und dadurch die Tabs neu angelegt werden müssen) oder musst du wirklich das LCD128x64 neustarten?

 

Da ich das letzte mal als ich einen Testaufbau gemacht hab da schon nichts reproduzieren konnte: Wie komplex ist das Programm was da bei dir läuft? Wäre es möglich das ich das hier ausführe um zu versuchen das zu reproduzieren?

Link zu diesem Kommentar
Share on other sites

Hallo,

 

ein Neustart des Programms hat keine Änderung bewirkt, aber nachdem ich den Stapel vom Strom getrennt und wieder eingeschaltet habe, hat es wieder funktioniert. Aus meiner Sicht liegt es also nicht am Programm.

Was mir noch aufgefallen ist: Wenn ich ein Tab "gedrückt" habe, dann hat auch die grüne LED auf der Rückseite des Displays geleuchtet. Das Bricklet hat also die Berührung registriert, allerdings wurde kein Event geschickt.

Link zu diesem Kommentar
Share on other sites

Für mich sieht das so aus als gibt es einen Bufferoverflow o.ä. der die Tab-Konfigurations-Strukturen zerschießt.

 

Wenn du dein Programm neustartest werden ja auch die Tabs neu konfiguriert. Daher muss da schon etwas grundsätzlich kaputt gegangen sein, wenn es nach dem Programmneustart nicht wieder funktioniert.

 

Die Kommunikation mit dem Display und dem Touch-IC funktioniert ja weiterhin. Ich hab hier ein LCD128x64 bei mir durchgängig auf dem Tisch stehen und bisher leider noch nie solche Probleme gehabt. Ich weiß aktuell nicht wie ich es reproduzieren soll.

Link zu diesem Kommentar
Share on other sites

Hallo,

 

du meinst ein "Bufferoverflow" in der Bricklet-Firmware oder in den Bindings? Da ein Neustart des Programms nicht hilft, vermute ich, dass es an der Bricklet-Firmware liegt. Ein Bufferoverflow ist möglich, da das Problem erst nach einigen Wochen Laufzeit aufgetreten ist.

Ich werde es weiter beobachten. Gibt es irgendwas, was ich evtl. in mein Programm einbauen kann, das eine Analyse (wenn es wieder auftritt) vereinfachen könnte?

Link zu diesem Kommentar
Share on other sites

Ich kann da sekundieren: meine kleine App, die Abfahrtszeiten von Bussen an verschiedenen Haltestelle anzeigen soll, habe ich mit dem LCD 128/64 realisiert. 6 Tabs, 6 Haltestellen. Ob nach 12, 24, 48 h -- irgendwann jedenfalls kann ich nicht mehr die Abfrage wechseln: Die Tabs springen zwar um, aber offenbar schlägt das nicht auf die App durch, weil die Abfahrtszeiten nicht mehr entsprechend aktualisiert werden. Hilft nur ein Neustart.

md

Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...