Настройка сканера штрих кода Opticon (USB) для работы на терминальной станции под Linux RDP

Материал из Wiki МИАЦ ВО
Перейти к навигации Перейти к поиску

Задача: Настроить Linux машину в качестве терминала для Windows сервера и подключить к ней сканер штрих кода Opticon OPR-3201.

Настройка сканера

Для нормальной работы ма должны настроить сканер, что бы он эмулировал последовательный порт и читал штрих код PDF417.

  1. Идем на Opticon страница документации и загружаем Manual configuration English: Universal menubook.
  2. Распечатываем страницы U6 и U37.
  3. Подключаем сканер к компьютеру и настраиваем:
    1. Эмуляцию сканером COM порта (U6). Сначала подводим луч к SET, далее USB-VCP и затем END.
    2. Чтение PDF417 (U37). Сначала подводим луч к SET, далее PDF417 only и затем END.

Настройка Linux машины

Загрузка модулей

1. Подключаем сканер к компьютеру и проверяем как он подключился.

# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 046d:08ad Logitech, Inc. QuickCam Communicate STX
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 015: ID 065a:0009 Optoelectronics Co., Ltd 
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Обязательно должна быть строка: ID 065a:0009 Optoelectronics Co., Ltd
2. Проверяем подгрузился ли модуль opticon

lsmod |grep opticon
opticon                13656  0 
usbserial              37054  1 opticon
usbcore               172319  12 usbhid,opticon,usbserial,uas,usb_storage,snd_usb_audio,snd_usbmidi_lib,gspca_zc3xx,gspca_main,uhci_hcd,ehci_hcd

если нет, то грузим

#modprobe opticon

3. Проверяем, есть ли файл /dev/ttyUSB0. Если нет то грузим модуль

#modprobe usbserial vendor=0x065a product=0x0009

4. Проверяем, все ли правильно подключено

#dmesg
...
usb 4-2: Manufacturer: Optoelectronics Co., Ltd.
opticon 4-2:1.0: opticon converter detected
usb 4-2: opticon converter now attached to ttyUSB0

Видим, что наш сканер нормально подключился к ttyUSB0
5. Можно проверить работу сканера так

cat /dev/ttyUSB0

Далее считываем какой либо код в pdf417 и он отобразится в консоли.

Запуск терминала с пробросом com портов

rdesktop

rdesktop -u domain\\user -p passwd -g 1024x768 -k 419  -r comport:COM3=/dev/ttyUSB0 -5 -N  ip_addr_win_serv

Вроде все понятно, если нет смотри man rdesktop

xfreerdp

xfreerdp -k 419  -a 16 -x l -z --no-tls   -u domain\\user -p passwd -g 1024x768  \
--plugin rdpdr --data serial:COM3:/dev/ttyUSB0 --  ip_addr_win_serv

Проверка проброса портов в терминале

Заходим в терминал и в окне cmd набираем

change port
AUX = \DosDevices\COM1
COM1 = \Device\Serial0
COM2 = \Device\Serial1
COM3 = \Device\RdpDrPort\;COM3:4\tsclient\COM3

Если видим строку COM3 = \Device\RdpDrPort\;COM3:4\tsclient\COM3, то все работает нормально.