Настройка сканера штрих кода Opticon (USB) для работы на терминальной станции под Linux RDP
Содержание
Задача: Настроить Linux машину в качестве терминала для Windows сервера и подключить к ней сканер штрих кода Opticon OPR-3201.
Настройка сканера
Для нормальной работы ма должны настроить сканер, что бы он эмулировал последовательный порт и читал штрих код PDF417.
- Идем на Opticon страница документации и загружаем Manual configuration English: Universal menubook.
- Распечатываем страницы U6 и U37.
- Подключаем сканер к компьютеру и настраиваем:
- Эмуляцию сканером COM порта (U6). Сначала подводим луч к SET, далее USB-VCP и затем END.
- Чтение 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, то все работает нормально.