====== Barcode-Scanning über Bluetooth ====== COBI.wms unterstützt die Verwendung von Barcodescannern, die über **Bluetooth 4.0** oder höher mit dem Android-Gerät verbunden werden. Diese Technologie wird auch als Bluetooth Low Energy, Bluetooth LE oder kurz **BLE** bezeichnet. Bei der Nutzung eines BLE-Scanners ergeben sich einige Herausforderungen. Das Hauptproblem besteht darin, dass es keine standardisierte Bluetooth-Spezifikation zur Übertragung von Barcode-Scan-Daten gibt. Aus diesem Grund geben sich die meisten BLE-Scanner als Tastatur (**HID-Gerät**) aus und senden die gescannten Barcodes als eine Reihe von Tastatureingaben. Aus diesem Grund empfehlen wir dringend, ein Android-Gerät mit integriertem Barcodescanner zu verwenden, anstatt einen externen Scanner per Bluetooth zu verbinden. Dennoch werden auf dieser Seite die Herausforderungen und mögliche Workarounds beschrieben. ===== Verwendung von Scannern, die als HID-Gerät arbeiten ===== Wenn ein BLE-Scanner im HID-Modus verwendet werden soll, muss das Gerät in den Android-Einstellungen (außerhalb von COBI.wms) gekoppelt werden. Achten Sie darauf, dass es als Tastatur registriert ist. Anschließend muss in COBI.wms die **[[de:COBI.wms:app-optionen|]]** **„Barcode-Scan über Tastatureingabe“** aktiviert werden. **Während dies bei einfachen (nicht-GS1-) Barcodes funktionieren sollte, kann es bei GS1-Barcodes wie GS1 DataBar, GS1-128, GS1 DataMatrix und GS1 QR-Codes zu Problemen kommen.** Der Grund ist komplex: GS1-Barcodes enthalten ein spezielles Symbol, den „Function Code 1“ (**FNC1**). Dieser erscheint sowohl am Anfang eines Barcodes, um ihn als GS1-Barcode zu kennzeichnen, als auch an verschiedenen Stellen innerhalb des Barcodes, um Datenfelder voneinander zu trennen. Wenn beispielsweise ein Chargennummern-Feld nicht alle 20 Ziffern nutzt, die der GS1-Standard erlaubt, muss es mit FNC1 abgeschlossen werden, bevor das nächste Feld (Seriennummer) beginnt. Das Problem dabei: Das FNC1-Symbol entspricht keiner Taste auf einer Tastatur. Scanner im HID-Modus können dieses Symbol daher oft nicht übertragen – und damit sind GS1-Barcodes mit solchen Scannern nicht nutzbar. Einige Scanner senden FNC1 dennoch als spezielle Tastenkombination (z. B. unter Verwendung der STRG-Taste). Dies wurde bei BLE-Scannern der Marke **Inateck** getestet (Modell **BCST-40**). Bitte beachten Sie jedoch, dass COBISOFT nicht garantieren kann, dass diese Geräte für den industriellen Einsatz geeignet sind. In COBI.wms gibt es einen Workaround unter Verwendung pseudo-GS1-konformer Barcodes, die allerdings nicht standardkonform sind. Das Semikolon-Symbol (**;**) kann dabei überall dort eingesetzt werden, wo sonst ein FNC1 erscheinen würde. Wenn Sie den folgenden Text beispielsweise als Code-128- oder DataMatrix-Barcode kodieren, wird COBI.wms diesen als GS1-Barcode erkennen:
;24012345;10BATCHXYZ;21SERIALXYZ
Wie Sie sehen, beginnt der Text mit einem Semikolon als Kennzeichnung für einen GS1-Code. Weitere Semikola trennen die Datenfelder 240 (Artikelnummer) und 10 (Chargennummer). Bei eindimensionalen Barcodeformaten wie Code 128 kann dies zu **sehr langen Barcodes** führen, die schwer zu scannen sind, da die Kodierung von Sonderzeichen wie dem Semikolon mehr Platz benötigt als das FNC1-Symbol. Bei zweidimensionalen Codes wie DataMatrix oder QR sollte dieser Workaround problemlos funktionieren. Bitte beachten Sie jedoch: Diese Lösung ist eine **COBI.wms-Spezialisierung** und funktioniert nicht mit anderen Barcode-Systemen, sofern diese nicht ebenfalls speziell für solche „Fake-GS1-Codes“ angepasst wurden. ===== Verwendung von Scannern mit benutzerdefiniertem GATT-Service ===== In der Bluetooth-LE-Terminologie steht **GATT** für Generic Attribute Profile und beschreibt ein System, mit dem BLE-Geräte (z. B. Barcodescanner) und Host-Geräte (z. B. Android-Tablet) Daten über definierte **Services** und **Characteristics** austauschen können. Wenn ein BLE-Scanner einen speziellen GATT-Service bzw. eine spezifische Characteristic zur Übertragung von Scan-Daten unterstützt, kann COBI.wms diese Daten ggf. auswerten – ohne HID-Modus. Um diese Betriebsart zu nutzen, muss das BLE-Gerät **innerhalb von COBI.wms** auf dem Bluetooth-Bildschirm gekoppelt werden. Bisher wird diese Methode nur von einer Scanner-Marke unterstützt: **Eyoyo** (getestet mit dem **EY-R30 2D** Fingerscanner). Leider überträgt dieses Modell das zuvor erwähnte FNC1-Symbol nicht, wodurch die Unterstützung von GS1-Barcodes ebenfalls nicht möglich ist. Zudem könnte dieses Modell für industrielle Anwendungen ungeeignet sein.