Argox OS-203DT PPLA через lpt2usb

Сканеры штрих-кодов, принтеры чеков, фискальные регистраторы, пинпады, весы
Ответить
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

На [KERNEL] начинается ядерная магия. С ней типовая рекомендация одна: попробовать свежую версию, может ядерщики починили. Почему 5.2.22?

А железка вообще перестаёт печатать, или теряется только текущее задание печати, а дальше работает?
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Стоит попробовать последнюю версию. Если что-то не работает, покажи логи/фотки экрана.

PS: f, fwt6, graphic, initrd, kernel, lib6, print, scan - 15 мегабайт.
PPS: boot.img не нужен.
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

boot.img это от rockchip процессоров. На x86 не используется.
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Варианты:
1. Сказать, что втварь не совместима с этой железкой.
2. Ковыряться глубже. Но ковыряться в первую очеред придётся тебе. Мне нужо толковое описание поведения железки после проблемы, с логами и воспроизведённое более чем "но один раз вчера".
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

w0r0n писал(а):2all: У кого-нибудь вообще есть работающий тонкий клиент с подключенным через lpt2usb (1a86:7584 CH340S) принтер?
Это врядли. Я в первый раз про такую железку слышу.


Смотри, как я понимаю проблему.

Приходят байтеги по сети от виндовса. Виндовс не заморачивается ни с какой буферизацией, создал ты мегабайтное задание на печать - оно весь мегабайт одним куском в сеть отправило. Сеть - 100 мегабит/c - задание проскочит быстро.

Втварь получает байтеги. Тоже ничего умного не делает, а по мере поступления отдаёт их ядерному драйверу USB устройства.

Ядерный драйвер не заморачивается с буферизацией, а сразу отдаёт их в провод USB с такой скоростью, с которой оно пролазит в USB. USB 2.0 - 480 мегабит/с, даже быстрее стомегабитной сети.

И с нормальными принтерами это работает. У нормальных принтеров внутри есть мегабайты памяти, в которые они задание принимают.

Но скорость LPT - не больше 1.2 мегабита/с! На порядки медленнее USB и езернета. А железка тупая, памяти у неё нет, накапливать ей негде. Поэтому когда по USB сыплется много байтиков и железка не успевает их с такой скоростью запихивать в LPT, железка начинает терять пакеты. Сообщает об этом ядру.

Ядро об этом ругается в лог:

Код: Выделить всё

usblp0: nonzero write bulk status received: -71
Но ничего умного не предпринимает. Данные теряются.

Ядро сообщает втвари, что запись не удалась. Втварь тоже не знает, что с этим делать, ведь с нормальными принтерами такой проблемы не случается и отлаживать мне не на чем. Надо как-то обучить втварь, но я пока не поедставляю, чему именно.

Запусти свежую втварь.
Подключи железку.
Зайди интернетэксплорером на IP терминала.
Страница USB Bus.
Найди в списке железку.
Нажми на ссылку под циферкой с номером, слева.
Будет страница с кучей букв. Выложи её.
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Вот это версия USB для железа. Чтоб железо всё понимало и не пыталось отправить что-то из USB 2.0:

Код: Выделить всё

bcdUSB               1.10
А вот это текст для человека. Строка, технического значения не имеющая, зато везде в описаниях устройства всплывающая:

Код: Выделить всё

iProduct                2 USB2.0-Print
Китайцы такие китайцы...


Поставь 5.4.20. И в ней замени вот этот файл:

http://pxe.ru/files/testing/201603131633.zip

Запусти. Оправь большое задание. Покажи лог.
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Ад. Какие там 1.2 Мбит/с. Здесь скорее 1.2 Кбит/c...

В логе 7 кусков примеро по 2Кб с небольшим, в сумме 15Кб. Это сколько было этикеток?

А физически оно сколько времени одну этикетку печатает?

У этого принтера COM порт есть? А у матери?

Попробуй это, ещё тормознутее сделал: http://pxe.ru/files/testing/201603142046.zip
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Всего сколько было этикеток отправлено в том логе? Напечатано только три. А отправлено?
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

w0r0n писал(а):7 разных этикеток по многу одинаковых.
Эээээ. Что значит "много одинаковых"? Можно указать печатать сто штук одинаковых, и принтер вот эти вот два килобайта данных будет обрабатывать пол часа? А втварь об этом каким-то волшебным образом должна узнать, и в эти пол часа не присылать принтеру больше данных? Не сделать такого. Втварь понятия не имеет, что там с принтером творится.

Проверь это: http://pxe.ru/files/testing/201603151959.zip
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Посмотри в лог. Буфер этого принтера размером примерно 10Кб. Два куска по 4Кб в него помещаются, от третьего куска по 4Кб принтер уже тошнит. И в логе отметки времени проставлены, по ним видно, что байтеги заливаются в принтер ооочень медленно, никаких 1.2Мбит скорости LPT там и близко нет.

В логе каждый раз по семь частей входящих данных. И этикеток было по семь. Значит каждая этикетка идёт отдельным куском. Я переиграл print, чтоб оно не объединяло байтеги, а так и писало в принтер кусками. Между кусками сделал задежку 2 секунды. Сколько времени принтер печатает одну этикетку?
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Я не знаю, что с ним ещё делать.

Запусти терминал. Открой втваревый конфигуратор. Выбери терминал в списке, вкладка "Логи", нажми "получить лог". Увидишь тот же лог, и новые строчки будут появляться сами во время работы.

Первая печать. По логу видно, что втварь отдаёт куски раз в две секунды. А принтер когда печатает? Печть очередной этикетки начинается сразу после того, как в лог напишется очередное "хххх bytes written"? Не поинмаю, почему оно последнюю этикетку не напечатало.
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Должен с нормальной. Тормоза только для 1a86:7584.
aka
Разработчик
Разработчик
Сообщения: 11800
Зарегистрирован: Ср окт 01, 2003 12:06 am
Откуда: Роcсия, Тольятти
Контактная информация:

Re: Argox OS-203DT PPLA через lpt2usb

Сообщение aka »

Что за неделя ужасов такая! Один говорит про уже второй usb-lpt. Я их в жизни не видел, а тут два сразу. Второй, в другом чатике, запускает usb-com с двумя com портами на одной железке - и тоже два разных устройства сразу, а я раньше ни одного такого не видел. С ужасом жду двухголовые usb видеокарты. Или usb-ethernet, с двумя выходами езернета.
Ответить

Вернуться в «Торговое оборудование (POS-системы)»