Для того чтобы завести данные весы\сканер на кассе с УКМ5 необходимо подключить их через USB-B (Отметил на фото) кабель к моноблоку\системному блоку.
Если используется блок питания, то дополнительно подключаем блок питания, если его нет, то весы и кассу дополнительно запитываем кабелем USB-A.
При подключении в кассу мы увидим два idVendor - один весов, второй сканера.
0557:2008 - Стационарный сканер, полная копия CheckWay 9878-U-S с необходимым префиксом и суффиксом 02/03.
Настроечная таблица - CheckWay CWBDS-9878-U-S.docx
1a86:7523 - Весы, они уже поддержаны в udev правилах УКМ5, но у них одинаковый айдишник с лампой гермеса, совместная работа может быть под вопросом. Разработка в курсе.
Запустили ScanFox достаточно просто. Прописали idVendor сканера в udev правила со списком сканеров на кассе.
Настроили 2 конфига на сервере УКМ5 в разделе оборудования - весов и сканера.
Выполнили перезапуск кассы и всё работает, запустили и сканер и весы в режиме serial. Кнопка обнуления работает исправно. Рабочие конфиги ниже :
{ "scale.seller": { params : { scaleName = Seller scaleNum = 0 transport { #type = serial # Способ подключения по com-port'у" #comPort: { # name = /dev/ttyS0 # Название com-port'а # boudRate = 115200 # Скорость работы бит/сек # dataBits = 8 # Разрядность данных # parity = none # Проверка четности # stopBits = 1 # Стоповый бит # flowControl = none # Управление потоком - none, xonxoff_in # timeout = 500 # in ms. Время ожидания ответа за запросы. #} type = serial # Способ подключения "usb с эмуляцией com-port'а" comPort: { name = /dev/usb_scale_1 # Параметр не изменять! #Параметры com-port'а. Параметры ниже должны соответствовать настройкам самого устройства boudRate = 9600 # Скорость работы бит/сек dataBits = 8 # Разрядность данных parity = none # Проверка четности stopBits = 1 # Стоповый бит flowControl = none # Программный контроль timeout = 500 # in ms. Время ожидания ответа за запросы. Параметр изменять не рекомендуется. } } } } }
# Подключение сканера к кассе # Подключение через usb с эмуляцией com-port'а и подключение через com-port' { "barcodescanner.genericscanner": { params: { scannerType { type = BarcodeScanner } transport { # Подключение в usb с эмуляцией com-port'а type = serial name = /dev/usb_scanner_1 # Параметр не изменять! boudRate = 9600 # Скорость порта dataBits = 8 # Разрядность данных parity = none # Контроль четности stopBits = 1 # Стоповый бит flowControl = none # Программный контроль выключен timeout = 100 # in ms. Время ожидания ответа от сканера # Подключение в com-port # type = serial # # name = /dev/ttyS0 # Параметр не изменять! # boudRate = 9600 # Скорость порта # dataBits = 8 # Разрядность данных # parity = none # Контроль четности # stopBits = 1 # Стоповый бит # flowControl = none # Программный контроль выключен # timeout = 100 # in ms. Время ожидания ответа от сканера } ack = "" # Если сканер настроен на работу в режиме ACK, то тут должен быть ответ для сканера. # ack = "\\u0006" # Пример настройки ответа для сканера. Каждое сканирование подтверждается ACK (0x06) charset = Cp1251 # Кодовая страница сканера valuePattern = "\\u0002(.*)" # Описание формата данных, получаемых от сканера delimiter = "\\u0003" # Чем заканчивается полученный код (разделитель между последовательно считанными кодами). # disableCommand = "D" # Команда отключения луча сканера # enableCommand = "E" # Команда включения луча сканера # Последовательность команд при ошибке отсутствия товара, таймаут между командами в мс (далее , 30 или , 50 ) суммарно не должен привышать 1000 мс # errorBeepArray = "(33 34 0D), 30, (01), 30, (30 31 0D), 30, (01), 30, (30 31 0D), 30, (01), 30, (30 31 0D), 30" # Datalogic Q*24**, Magellan 3450 VSi, Magellan 1500i # errorBeepArray = "(16 07 0D), 30, (16 07 0D), 30, (16 07 0D), 30, (16 07 0D), 30, (16 07 0D), 30" # Honeywell Voyager 14**, Genesis 758* # errorBeepArray = "(7E 01 30 30 30 30 40 42 45 45 50 4F 4E 31 30 30 30 46 35 30 54 3B 03), 50, (7E 01 30 30 30 30 40 42 45 45 50 4F 4E 34 30 30 30 46 35 30 54 3B 03), 50, (7E 01 30 30 30 30 40 42 45 45 50 4F 4E 31 30 30 30 46 35 30 54 3B 03), 50, (7E 01 30 30 30 30 40 42 45 45 50 4F 4E 34 30 30 30 46 35 30 54 3B 03), 50, (7E 01 30 30 30 30 40 42 45 45 50 4F 4E 31 30 30 30 46 35 30 54 3B 03), 50" # Newland FR40** } } }