Der Datalogic Gryphon GFS 4400 ist ein recht universeller Barcode Scanner der sich wunderbar in Produktionsanlagen verbauen lässt. Ich steuere ihn mit einem Linux Rechner und binde ihn nicht über die USB-Keyboard Schnittstelle an, sondern nutze die USV-COM Variante.
Per Default wird der Scanner laut Handbuch mit folgenden Einstellungen ausgeliefert:
RS-232: 9600,8,N,1,no handshaking,ACK/NAK disabled
Hier kommt die erste Hürde, das Datenblatt muss nach „stty“ übersetzt werden 🙂
Sobald der Scanner am System angeschlossen ist und auf USB-COM umgeschaltet wurde sieht man folgende Anzeige im Syslog:
Jul 18 15:25:33 e002110 kernel: [322458.030720] usb 1-9: new full-speed USB device number 37 using xhci_hcd
Jul 18 15:25:33 e002110 kernel: [322458.180222] usb 1-9: New USB device found, idVendor=05f9, idProduct=4204
Jul 18 15:25:33 e002110 kernel: [322458.180228] usb 1-9: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jul 18 15:25:33 e002110 kernel: [322458.180232] usb 1-9: Product: Handheld Barcode Scanner
Jul 18 15:25:33 e002110 kernel: [322458.180236] usb 1-9: Manufacturer: Datalogic ADC, Inc.
Jul 18 15:25:33 e002110 kernel: [322458.180240] usb 1-9: SerialNumber: S/N G17AB1226
Jul 18 15:25:33 e002110 kernel: [322458.181927] cdc_acm 1-9:1.0: ttyACM0: USB ACM device
Der Scanner läuft also auf der Schnittstelle /dev/ttyACM0.
Mittels stty können jetzt die Kommunikationsparameter wie oben erwähnt eingestellt werden:
stty 9600 cs8 -cstopb -parenb ocrnl icrnl -F /dev/ttyACM0
Ein weiteres Problem das ich beim Einrichten hatte war dass der Scanner bei GS1-128 Barcodes den GS1 Code mit schickt – z.B. als Zeichen „+C1“ vor dem Barcode, das kann man abschalten indem man diese drei Barcodes scannt:
Wenn man jetzt via Bash Script die eingescannten Barcodes verarbeiten will, dann klappt das mit folgendem Befehl wunderbar:
head -n1 /dev/ttyACM0
In eine kleine „while“-Schleife verpackt und schon wird jeder eingelesene Barcode nach Wunsch verarbeitet.
Ich habe schon länger nicht mehr hier im Blog geschrieben, was nicht daran liegt dass…
Man macht es nicht jeden Tag, darum schadet es nicht sich's kurz zu notieren... Hier…
Meine Suche bei Google hatte mal wieder keinen vernünftigen Treffer gelandet, das Problem - ich…
Ich muss mal eben etwas Druck ablassen, ein Kunde von mir setzt einen Drucker von…
Wer beim Server bestellen vergessen hat die erweiterte IRMC Lizenz zu ordern, der steht vor…
Ich nutze seit langer Zeit ein System für meine Backups welches in der Nacht von…