LINUX.ORG.RU

Чековый принтер+тонкий клиент. Нужна помощь.

 , ,


0

2

Суть проблемы: Есть тонкий клиент Kraftway Credo vv18 и чековый принтер Posiflex P6800U-B. Нужно заставить их работать вместе из под терминальной сессии.
Что сделано:
1. При подключении принтера его видно в lsusb, видно также из панели управления терминальной станцией (веб морда на localhost), CUPS отказывался его видеть до тех пор, пока вручную не прописал

lpadmin -p Posiflex1 -v serial:/dev/ttyACM0?baud=115200

После данных манипуляций появилась возможность выбрать параметры печати и драйвер.
2. Вручную при каждой перезагрузке выставляю права 666 на /dev/ttyACM0, потому как базовая система терминальной станции грузится из образа, соответственно, изменения в файлах не сохраняются. С этим можно и позже разобраться. Главное-заставить печатать хотя-бы так. С установленными правами принтер успешно печатает пробную страницу с веб-морды CUPSa.
3. Настраиваю принтер из терминальной сессии (ipp://hostname/printers/Posiflex1), жму кнопку «проверить», получаю сообщение «Этот общий принтер доступен». При попытке что-либо напечатать, принтер программно отключается (снимается галка «разрешить» в гуёвине) и задание печати зависает со статусом «Запланировано».
Доп. инфа:
Сервер NX (CentOS), на терминалах установлена Kraftway Terminal Linux 3.27 (собрана на основе gentoo, кажется), перенаправление портов (COM, USB) на терминальной станции включено.
Логи:
Access log
Error log

Собственно, нужно сделать так, чтобы принтер можно было увидеть из под терминальной сессии на COM3 (/dev/ttyS2), потому как специфичная софтина шлёт текст чека именно туда. Наверно, тут даже драйвер необязателен. Принтер успешно и без кракозябр печатает hello по команде «echo hello > /dev/ttyACM0» до входа в терминальную сессию.


Создай символьную ссылку /dev/ttyS2 на /dev/ttyACM0 . Создай правило в /etc/udev/rules.d и укажи группу и права на устройство.

steemandlinux ★★★★★ ()
Ответ на: комментарий от steemandlinux

Про ссылки в курсе. Делал уже. Сейчас стоит такая задача: увидеть этот принтер из под терминальной сессии и заставить его печатать хоть что-нибудь. Пусть даже через echo text > /dev/ttyACM0. Там дальше разберусь.

xoma ()
Ответ на: комментарий от steemandlinux

Спасибо за tty over ip. Завтра проверю, есть ли что-нибудь подобное в составе образа. Если нет, придётся ломать мозг над тем, как изменить образ базовой системы на терминальной машине. Вся фс монтируется именно из него.

xoma ()

Разобрался

Почему-то думал, что этот kraftway terminal linux-прошивка на неполноценном ПК. Таки нет. Зашёл в биос, указал режим работы флешки HDD Mode, выбрал флешку в Hard Drive Boot Priority и накатил lubuntu. Правда, пока проблемы с правами доступа (cups только с livecd может нормально печатать). Но это, скорее, проблема убунты. Качаю федору и mint 15.

xoma ()
Ответ на: Разобрался от xoma

Может я влез не в ту тему. НО хотел бы попросить у вас помощи настроил принтер pp6800U через /dev/ttyACM0 но он полностью отказывается печатать. Не могли бы помочь настроить? Что делаю не так? Спасибо заранее.

a_andru ()

настроил по вашему примеру lpadmin -p pp6800 -v serial:/dev/ttyACM0?baud=115200

по echo text > /dev/ttyACM0 текст печатается на принтере...

установил драйвера с сайта производителя принтера. В CUPS вижу свой принтер

Description: pp6800

Location:

Driver: Posiflex PP7000/PP8000, 1.03 (grayscale, 2-sided printing)

Connection: serial:/dev/ttyACM0?baud=115200+bits=8+parity=none+flow=hard

Defaults: job-sheets=none, none media=om_x80-mmy320-mm_90.31x361.24mm sides=one-sided

Но при попытки напечатать тестовую страницу из CUPS не получается, пишет ошибку

pp6800-82 Test Page anonymous 1k 1 held since Fri 04 Apr 2014 01:22:05 PM EEST «Unable to open serial port: Permission denied»

дал права sudo chmod 666 /dev/ttyACM0

Ошибка та же. Что делаю не так?

a_andru ()
Ответ на: комментарий от a_andru

Проблема была решена с помошью...

sudo /etc/init.d/apparmor stop sudo /etc/init.d/apparmor teardown sudo apt-get remove --purge apparmor

После этого принтер запечатал.(может кому поможет)

a_andru ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.