Seite 1 von 1
uinput Keypress steuern
Verfasst: Dienstag 7. März 2017, 13:23
von djevil
Hallo,
ich habe hier diese Funktion:
Code: Alles auswählen
def keys():
data = dev.read(0x81, 29 , 0)
## Keys
knr=data[26]
### Emit Keypress
if data[25] == 0:
device.emit_click(keycode[knr])
leider gibt sie mir meist 2 manchmal auch 3 Buchstaben aus, gibt es eine Möglichkeit dies auf einen zu begrenzen?
Mfg d
Re: uinput Keypress steuern
Verfasst: Dienstag 7. März 2017, 13:32
von BlackJack
@djevil: Ich glaube ja nicht das *die* Funktion das tatsächlich macht, sondern das mehrere Aufrufe der Funktion das machen. Denn ansonsten wäre das Problem ja in ``device.emit_click()`` zu suchen das nur einmal aufgerufen wird und dann mehr als eine Ausgabe machen würden. Ohne mehr Kontext kann man da nur raten. Ich würde raten das ``dev`` ein bisschen zu hardwarenah ist und Du Dich selbst ums entprellen von Tasten kümmern musst.
Re: uinput Keypress steuern
Verfasst: Freitag 10. März 2017, 00:32
von djevil
Hallo,
ja, die Funktion wird in einer Endlosschleife aufgerufen:
und vermutlich läuft die Schleife während eines Tastendrucks eben 2-3 Mal durch.
Mit einem:
lässt es sich zumindest etwas optimieren,
bremst aber auch die Joysticks(Analog) und ist natürlich auch keine vernünftige Lösung.
Und wie meinst du das die Tasten zu entprellen?
Mfg
d
Re: uinput Keypress steuern
Verfasst: Freitag 10. März 2017, 02:00
von BlackJack
Re: uinput Keypress steuern
Verfasst: Freitag 10. März 2017, 16:01
von djevil
Ok,
einfach einen Zähler rein und ein paar Zyklen überspringen..
und es läuft endlich..
Mfg d