Ich probiere gerade eine Nummersiche-Tastatur auszulesen und zu verarbeiten.
In meinen ersten Versuchen bin auf diese Methode gestoßen.
Code: Alles auswählen
cat /dev/input/event1 | hexdump
Ausgabe
Code: Alles auswählen
0000000 a0c1 4af0 d240 0007 0004 0004 0004 0007
0000020 a0c1 4af0 d25d 0007 0001 001e 0001 0000
0000040 a0c1 4af0 d26a 0007 0000 0000 0000 0000
0000060 a0c1 4af0 0ad3 0009 0004 0004 0004 0007
0000100 a0c1 4af0 0aec 0009 0001 001e 0000 0000
0000120 a0c1 4af0 0af5 0009 0000 0000 0000 0000
0000140 a0c2 4af0 d3b0 000c 0004 0004 0005 0007
0000160 a0c2 4af0 d3c5 000c 0001 0030 0001 0000
0000200 a0c2 4af0 d3d1 000c 0000 0000 0000 0000
Als erstes wollte ich dabei die Zeilen in "Echtzeit" von einander trennen.
Code: Alles auswählen
cat /dev/input/event1 | hexdump | while read line
do
echo TEST: $line
done
Code: Alles auswählen
TEST: 0000000 ecd0 4af0 2141 0007 0004 0004 000b 0007
TEST: 0000010 ecd0 4af0 215a 0007 0001 0023 0001 0000
TEST: 0000020 ecd0 4af0 2165 0007 0000 0000 0000 0000
TEST: 0000030 ecd0 4af0 e381 000a 0001 0023 0002 0000
TEST: 0000040 ecd0 4af0 e398 000a 0000 0000 0001 0000
TEST: 0000050 ecd0 4af0 7796 000b 0001 0023 0002 0000
TEST: 0000060 ecd0 4af0 77ab 000b 0000 0000 0001 0000
TEST: 0000070 ecd0 4af0 13ec 000c 0001 0023 0002 0000
TEST: 0000080 ecd0 4af0 1401 000c 0000 0000 0001 0000
Die Pipe scheint zu Puffern und erst nach einer gewissen Anzahl von Zeichen es an das $line zu übergeben.
Das macht es leider unmöglich in "Echtzeit" es zu verarbeiten und abzufangen.
Weiß jenand evtl. rat wie ich die Pipe aktiver machen kann?
Das Problem scheint durch hextdump ausgelößt zu werden.
Solange es direkt an die Console geht. Sehe ich direkt die ergebnisse.
Doch sobald ich es an ein weiteres Programm weitergebe oder in eine Datei schreibe und die mit tail oder cat beobachte, habe ich erst nach einigen Tastenanschlägen plötzliche eine Kolonne von Zeilen.
Gleiches Problem gilt auch wenn ich statt hexdump od -x versuche.
Beste Grüße, Ohje, ist das wieder spät geworden. Doofe console manchmal. Aber ich könnte nicht mehr ohne^^, wäre sie nur nicht immer so bockig