Страница 1 из 1
Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Пн апр 25, 2016 4:10 pm
relocman
WTware v.5.4.16
Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
usbids:
[3] USB ID: 0403:6001, BUS ID: 4-2, class: 0x00, subclass: 0x00, Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
[4] USB ID: 0403:6001, BUS ID: 5-2, class: 0x00, subclass: 0x00, Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
При добавлении в кофиг serial=com1(usb), serial=com2(usb) терминал превращается в чайник (teapot)
Как указать их в конфиге ?
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Пн апр 25, 2016 4:25 pm
aka
Попробуй так, одной строкой:
serial=COM1(usb 4-2); COM2(usb 5-2)
И лог после запуска покажи.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Вт май 03, 2016 12:41 pm
relocman
Спасибо! Данный способ работает.
Правда часто бывает, что после первой загрузки (ТС) терминальной станции , подключенные ККМ не отвечают с проброшенных портов. Порты сопоставлены, а ответа от оборудования нет.Причем был найден способ "растормашить ККМ" Просто начать сканирование спец программой поиска ККМ, меняя скорость от 9600 до 115200.
Это проблема проявлется только в ТС с указанной новой строчкой конфига, где подключены по 2 одинаковых ККМ. Там же где конфиг стандартный и задейтвован лишь один ККМ, все работает без нареканий.
Увы, это неудобно.
Нужен более надежный способ.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Вт май 03, 2016 12:44 pm
aka
Сессия точно завершается? Не отключается, а завершается, и соответственно при подключении создаётся новая сессия?
Перенаправленный устройства не любят отключения сессий.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Вт май 03, 2016 1:02 pm
relocman
Да и не просто завершается, приходится делать сброс (выход) сеанса, через диспетчер подключений, на сервере терминалов.
Так как программа 1С Предприятие, запущенная в сеансе ждет ответа от порта и не обрабатывает сигналы.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Вт май 03, 2016 3:29 pm
aka
После того, как работающая с железкой программа была аварийно прибита из диспетчера задач, железка может остаться в подвешенном, неготовом к работе состоянии.
Должно быть так:
1. Завершили сеанс. В Диспетчере подключений сеанса юзера больше нет.
2. Выключили железо. И компьютер, и ККМ.
3. Включили железо.
4. Подключились.
Именно в таком сценарии будут проблемы?
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 04, 2016 10:28 am
relocman
Да, все верно. Именно такая последовательность.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 04, 2016 3:14 pm
aka
Логи покажи. Пожалуйста, чтобы в логах не было лишних действий. Загрузил, подключился к серверу. Сохранил лог. Запустил программу, увидел ошибку. Сохранил. Запустил поиск, растормошил железку, сохранил.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 04, 2016 4:30 pm
relocman
Конечно предоставлю, но уже завтра, с утра. Все терминалы нещадно используются.
Может ли замена версии (v.5.4.16) Wtware на актуальную, решить проблему ?
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 04, 2016 5:13 pm
aka
Ставь актуальную. Хуже не будет.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Чт май 05, 2016 10:50 am
relocman
свежие парные логи
term1_log - ТС с одним ККМ, с которой все ОК
term5_log - ТС с двумя ККМ, с которой все НЕОК (Загрузил, подключился к серверу. Сохранил лог. Запустил программу, увидел ошибку. Сохранил...)
term5_log2 - ТС с двумя ККМ, с которой все НЕОК (...Запустил поиск, растормошил железку, сохранил)
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Чт май 05, 2016 5:44 pm
relocman
Есть ли мысли по решению данной проблемы ?
Не откатываться же нам обратно на WinCE :^)
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Пт май 06, 2016 7:07 pm
aka
Нету мыслей. Попробуй это:
http://pxe.ru/files/testing/201605061958.zip
Те же логи:
1. Загрузил, подключился к серверу. Запустил программу, увидел ошибку. Сохранил лог.
2. Запустил поиск, растормошил железку, сохранил.
Пожалуйста, как можно меньше лишних действий. Лог должен получиться большой.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Пн май 16, 2016 10:18 am
relocman
Все сделано
1. Загрузил, подключился к серверу. Запустил программу, увидел ошибку. Сохранил лог. (log1)
2. Запустил поиск, растормошил железку, сохранил.(log2)
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Вт май 17, 2016 11:07 am
relocman
Тема очень актуальна ! Каждое утро приходиться вручную тормашить эти ККМ
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Вт май 17, 2016 11:29 am
aka
В логе1 нет ни одного обращения к ком-портам. То есть это точно не втварь тупит. До втвари во время тупения ни один запрос к порту не доходил.
В логе2 пошли обращения к портам. Вот это:
Код: Выделить всё
[rdpdr-serial 8] [ 139.624972] rdpdr[]-main.cpp ( 88): IRP_MJ_CREATE
Это самая первая команда "открыть порт", пришедшая от виндовса. Она в логе2. В логе1 такого нет.
Если подключиться (не забываем завершать сессию!), не запускать программу, а запустить виндовую командную строку и написать в ней:
В логе появится много букв?
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 18, 2016 5:10 pm
relocman
Повторил опыт (новые логи в архиве, они с префиксом 1805_)
1. Загрузил, подключился к серверу. Запустил cmd /k "change port" - увидел 2 порта,запустил программу, увидел ошибку. Сохранил лог. (log1)
2. Запустил поиск, растормошил железку, сохранил.(log2)
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 18, 2016 11:19 pm
aka
1. Попробуй без удалённого управления. При удалённом управлении много всего меняется, и работу устройств мы не тестировали. Врядли поможет, но вдруг.
2. Ещё одно шаманство: попробуй ДВА раза сделать change port. Единственная активность между "записали байтик - железка не ответила" и "записали байтик - железка ответила" - переоткрыли ttyUSB0. Врядли поможет, но вдруг.
3. Совсем дикое шаманство: попробовать записать в железку (то есть в ком-порт) этот самый байтик со значением 5. Навеняка под виндовс полно программ, которые справятся записать байт в ком-порт.
4. Вот первая запись байтика в железку /dev/ttyUSB1:
Код: Выделить всё
[rdpdr-serial 9] [ 296.235942] rdpdr[]-main.cpp ( 100): IRP_MJ_WRITE
[rdpdr-serial 9] [ 296.236231] 00000000:05
Затем с железки пытаются читать:
Код: Выделить всё
[ 296.237171] rdpdr[]-main.cpp ( 96): IRP_MJ_READ
Но железка ничего не ответит. Через двадцать секунд открывается железка на другом порту:
Код: Выделить всё
[rdpdr-serial 8] [ 315.318823] rdpdr[serial]-worker.cpp ( 621): Open /dev/ttyUSB0.
Это наверное поиск запустил? Но никакой активности с железкой на /dev/ttyUSB0 нет, её только открыли и закрыли.
Затем долго ждём. Затем втварь прерывает чтение из /dev/ttyUSB1, потому что запрошенные 250 секунд таймаута вышли, а байты от железки не пришли:
Код: Выделить всё
[rdpdr-serial 9] [ 546.264660] rdpdr[serial]-modes.h ( 220): Now: 1463522934.264125. Abort read request due to total timeout.
И от виндовса снова приходит команда записать такой же байтик в железку:
Код: Выделить всё
[rdpdr-serial 9] [ 546.278354] rdpdr[]-main.cpp ( 100): IRP_MJ_WRITE
[rdpdr-serial 9] [ 546.278466] 00000000:05
На этот раз железка сразу же отвечает:
Код: Выделить всё
[rdpdr-serial 9] [ 546.281554] rdpdr[]-main.cpp ( 96): IRP_MJ_READ
[rdpdr-serial 9] [ 546.281734] rdpdr[serial]-worker.cpp ( 1689): abortTimeout 1463523184.279486, now 1463522934.279495, rt 249.999991.
[rdpdr-serial 9] [ 546.281848] rdpdr[serial]-worker.cpp ( 1742): Set wait timeout 250.000991.
[rdpdr-serial 9] [ 546.282586] rdpdr[serial]-worker.cpp ( 1799): Now: 1463522934.279575. 1 bytes read from /dev/ttyUSB1, 1 bytes left.
[rdpdr-serial 9] [ 546.282731] 00000000:15
[rdpdr-serial 9] [ 546.282872] rdpdr[serial]-worker.cpp ( 260): Read completion - 1 bytes read, 0 unreaded.
И дальше уже идёт обмен байтиками.
Ещё дальше, через сорок минут, железку выдёргивают, вдёргивают, и так несколько раз. Это уже не относится к пролеме?
Код: Выделить всё
[ KERNEL] [ 3293.112408] usb 3-2: USB disconnect, device number 3
Шаманства нужны. Я не вижу ошибок.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Вт май 24, 2016 4:48 pm
relocman
Может помогут логи конфигурации с одним ККМ ?
Ведь там все работает замечательно.
Эти ККМ прекрасно работают и в WinCE и в WinXP, и через железные COM-порты RS232, и через USB.
А вот в Wtware все работает только когда подключен только один ККМ и только когда он подключен через и USB.
Подключение ККМ через COM-порт RS232 или работа 2 шт. ККМ через USB выглядит одинаково.
Увы, принтеры эти фискальные и поэтому тренировкой на них можно навлечь уйму штрафов.
Уже готов даунгрейдить на Wtware lite или любую сборку, корректно работающую на данной конфигурации.
логи конфигурации с одним ККМ вложены
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Вт май 24, 2016 6:11 pm
aka
Логи от старых втварей с выключенной отладкой точно не помогут.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 25, 2016 10:51 am
relocman
обновил ТС, и добавил логи отладочной версии
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 25, 2016 1:38 pm
aka
Ээээ. kassa1 - открыли железку, записали в неё тот же байт 0x05, пытаемся читать. Ничего не читается. В точности как и в логе с двумя железками.
Дальше сморю kassa3. Опять в точности те же действия: открыли порт, записали байтик со значением 5, ожиданем чтения из железки MJ_READ. Железка не отвечает. На 204-й секунде завершили RDP сессию, начали новую RDP сессию, и со второй попытки железка поехала.
Не вижу, где один ККМ работает. Вижу ту же проблему, что и в логе с двумя ККМ, железка заводится со второй попытки.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 25, 2016 2:07 pm
relocman
Да, оказывается кассиры скрыли тот факт, что для того чтобы ККМ работал без проблем, они поле первой загрузки ТС, делают еще одну перезагрузку.
После второй перезагрузки, в ТС, где подключен один ККМ, все нормально работает.
Вот и выслал логи этих двух ТС.
Сейчас бы подошел любой костыль способный отослать железке этот байт
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 25, 2016 2:16 pm
relocman
Тут предлагают способ как отослать строку или символ через BAT-файл
_https://batchloaf.wordpress.com/2013/02/12/simple-trick-for-sending-characters-to-a-serial-port-in-windows/
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 25, 2016 2:39 pm
aka
Файл с одним байтом со значением 5 в атаче.
type byte0x05.txt > COM2
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Ср май 25, 2016 2:43 pm
relocman
Спасибо. Завтра, с утра буду пробовать.
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Чт май 26, 2016 9:06 am
relocman
Проверял сегодня
type byte0x05.txt > COM1
результат команды:
Не удается найти указанный файл.
После этого COM1 отваливается.
Это видно при вводе комманды change port
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Чт май 26, 2016 3:08 pm
aka
У меня работает:
- Untitled.png (6.51 КБ) 45131 просмотр
А лог где?
Re: Два одинаковых ККМ Штрих-М, на одном терминале - одинаковые USB ID
Добавлено: Пт июн 03, 2016 9:30 am
relocman
Увы, нет столько времени. Время и Внимание ресурс очень дорогой.
Пошел индийским путем - подключил все ККМ через USB2COM Converter, на основе чипа Prolific Technology, Inc. PL2303
Проблемы исчезли полностью.