Author Topic: Problem mit LCD 128x64 Bricklet (Touch)  (Read 380 times)

Equinox

  • Sr. Member
  • ****
  • Posts: 267
    • View Profile
Problem mit LCD 128x64 Bricklet (Touch)
« on: March 15, 2019, 21:36:31 »
Hallo,

ich benutze das "LCD 128x64 Bricklet" mit mehreren Tabs. Es kommt bei mir ab und zu vor, dass sich das Display nach einem Tab-Wechsel pausenlos "refreshed", und zwar mit unterschiedlichen Tabs. Es reagiert dann auf keine Berührung mehr. Es sieht so aus, als ob man sehr schnell zwischen den Tabs wechseln würde. Meistens fängt es sich auch nicht mehr.
Kann es sein, dass das Bricklet da ein Eigenleben entwickelt und ständig irgendwelche Events für einen Tab-Wechsel sendet?
Zuerst dachte ich, dass sich da mein Programm irgendwie verhaspelt (was ich auch jetzt noch nicht ausschließen kann) und habe es neu gestartet. Heute habe ich aber das Programm laufen lassen und habe nur den Stapel kurz vom Strom getrennt. Danach war alles wieder gut. Ich denke deshalb, dass es nicht an meinem Programm liegt, da es sich sonst auch nach dem Neustart des Stapels noch in dem "verhaspelt"-Zustand befunden hätte.
Hat sonst noch jemand dieses Problem? An was kann das liegen und was kann ich dagegen tun?

P.S.: Die Variable, welches Tab gerade selektiert ist, setze ich nur in den Callbacks "guiTabSelected" und "guiButtonPressed" und die Methode zum aktualisieren des Displays wird auch nur mit dieser Variablen aufgerufen. Ich vermute deshalb, dass der Callback "guiTabSelected" ständig mit unterschiedlichen Tabs aufgerufen wird, auch wenn gar kein Berührung vorliegt.

borg

  • Tinkerforge Staff
  • Administrator
  • Hero Member
  • *****
  • Posts: 3.096
    • View Profile
Re: Problem mit LCD 128x64 Bricklet (Touch)
« Reply #1 on: March 18, 2019, 12:16:26 »
Wenn du in diesem Fehlerfall bist, bekommst du dann denn irgendwelche Callbacks? Ich würde erwarten dass das Bricklet dann vielleicht irgendwelche Klicks sieht die gar nicht da sind o.ä.?
Wir sind die Borg, Widerstand ist Spannung durch Stromstärke!

Equinox

  • Sr. Member
  • ****
  • Posts: 267
    • View Profile
Re: Problem mit LCD 128x64 Bricklet (Touch)
« Reply #2 on: March 18, 2019, 13:11:33 »
Quote
Ich würde erwarten dass das Bricklet dann vielleicht irgendwelche Klicks sieht die gar nicht da sind o.ä.?

Das ist auch meine Vermutung. Allerdings habe ich im Moment in den Callbacks keine Log-Nachrichten eingebaut :( Wären vmtl. auch zuviele ...

Equinox

  • Sr. Member
  • ****
  • Posts: 267
    • View Profile
Re: Problem mit LCD 128x64 Bricklet (Touch)
« Reply #3 on: May 30, 2019, 18:05:48 »
Hallo,

jetzt ist es wieder passiert. Glücklicherweise habe ich mittlerweile Logeinträge in die Callbacks eingebaut. Es ist tatsächlich so, dass ich laufend Callbacks bekomme, obwohl das Display nicht berührt wird. Das Bricklet "sieht" also tatsächlich Klicks, die nicht da sind.
Jemand eine Idee, woran das liegt und wie man das beheben kann?

borg

  • Tinkerforge Staff
  • Administrator
  • Hero Member
  • *****
  • Posts: 3.096
    • View Profile
Re: Problem mit LCD 128x64 Bricklet (Touch)
« Reply #4 on: June 03, 2019, 09:14:50 »
Loggst du auch den "Pressure"-Wert? Ist der minimal oder so groß wie er auch wäre wenn du echt auf das Display drücken würdest?

Falls der Wert sehr klein ist könnten wir vielleicht eine SetMinimumTouchPressure-Funktion oder ähnliches als Konfiguration hinzufügen.
Wir sind die Borg, Widerstand ist Spannung durch Stromstärke!

Equinox

  • Sr. Member
  • ****
  • Posts: 267
    • View Profile
Re: Problem mit LCD 128x64 Bricklet (Touch)
« Reply #5 on: June 03, 2019, 12:38:45 »
Hallo,

leider nein  :(, da ich das in meinem Programm nicht benötige. Ich verwende nur die
Code: [Select]
GUIButtonPressedListener() und
Code: [Select]
GUITabSelectedListener().
Kann ich an den Druck auch ohne TouchPositionListener() kommen?

borg

  • Tinkerforge Staff
  • Administrator
  • Hero Member
  • *****
  • Posts: 3.096
    • View Profile
Re: Problem mit LCD 128x64 Bricklet (Touch)
« Reply #6 on: June 03, 2019, 14:18:04 »
Du könntest per getTouchPosition dran kommen.
Wir sind die Borg, Widerstand ist Spannung durch Stromstärke!

Equinox

  • Sr. Member
  • ****
  • Posts: 267
    • View Profile
Re: Problem mit LCD 128x64 Bricklet (Touch)
« Reply #7 on: June 03, 2019, 14:56:49 »
OK, danke.
Baue ich ein und melde mich dann, wenn es wieder passiert.