pnp_mechanic 2 13 марта, 2020 Опубликовано 13 марта, 2020 · Жалоба Изобретаю вендинговый аппарат. Есть чековый USB принтер STAR-TUP992. Сейчас успешно получается выводить на печать текст на Linux машине простым способом cat "file.txt" > /dev/usb/lp0 Использовать компьютер или Orang PC и пр. для этого аппарата считаю не оправданно. Весь вопрос к уважаемому сообществу состоит в следующем: возможно ли подобное делать на STM32, какой МК наиболее подойдёт для этой задачи? Ведь не должно быть очень сложно реализовать HOST средствами МК. Видел есть куча библиотек для реализации HOST на МК, но все они заточены либо для мыши, либо для клавиатуры, либо USB флешки. И интересно как работает выше указанная команда, что просто отправляет байты в какую-то конечную точку.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
esaulenka 7 13 марта, 2020 Опубликовано 13 марта, 2020 · Жалоба Если аппарат один, поставить распбери. Если аппаратов много, договориться о поставках такого же STAR'а, но с ком-портом. Ну и договориться о предоставлении документации на их протокол. Потратил 30 секунд, гугл ничего подходящего не выдал... Скорее всего, там стандартный epson, но для презентеров-ретракторов-штрихкодов каждый производитель придумывает свои собственные расширения. UPD. вот, нашёл что-то: http://www.starmicronics.com/support/Mannualfolder/linemode_cm_en.pdf UPD2. https://community.st.com/s/question/0D50X00009XkaNSSAZ/usb-printer-class дорога полна приключений, но чего-то сверхординарного тут нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 83 13 марта, 2020 Опубликовано 13 марта, 2020 · Жалоба 55 минут назад, pnp_mechanic сказал: Изобретаю вендинговый аппарат. Есть чековый USB принтер STAR-TUP992. Сейчас успешно получается выводить на печать текст на Linux машине простым способом Видел есть куча библиотек для реализации HOST на МК, но все они заточены либо для мыши, либо для клавиатуры, либо USB флешки. Скорее всего там реализуется виртуальный COM-port - надо в линуксе посмотреть какой интерфейс получается при подключении. Если этот принтер надо "прибить гвоздями к плате" - можно существенно упростить реализацию USB-хоста. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 13 марта, 2020 Опубликовано 13 марта, 2020 · Жалоба Стояла подобная задача, но с touchscreen-ом. Не хотелось всякие там армы-шмармы изучать. Реализовал ногодрыгом некое подобие хоста на xmega USB 2.0 Full-Speed. Уже пару лет - полёт нормальный Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pnp_mechanic 2 13 марта, 2020 Опубликовано 13 марта, 2020 (изменено) · Жалоба Да, протокол принтера EPSON. Кроме всего прочего для аппарата нужен ещё приёмник денег и GSM модуль, и ещё какой-то экранчик, и куча реле, и кнопок.. Боюсь у Расбери не хватит ног. У принтера судя по схеме есть вывод RX TX, но они "глубоко".Кроме того можно купить другую интерфейсную плату с RS232 интерфейсом, но она стоит как принтер :-) Нужно именно привязать принтер к МК. Интересует как определить куда же всё таки cat "file.txt" > /dev/usb/lp0 отправляются байты этой командой. Изменено 13 марта, 2020 пользователем pnp_mechanic Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Obam 38 13 марта, 2020 Опубликовано 13 марта, 2020 · Жалоба Странно, зная про 'cat "file.txt" > /dev/usb/lp0' , не знете про 'lsusb -t', а там 'man lsusb' и "чем дальше в лес, тем толще партизаны" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pnp_mechanic 2 13 марта, 2020 Опубликовано 13 марта, 2020 · Жалоба 24 минуты назад, Obam сказал: Странно, зная про 'cat "file.txt" > /dev/usb/lp0' , не знете про 'lsusb -t', а там 'man lsusb' и К сожалению мои знания про USB поверхностны. Но подозреваю , что пакет что отправляется от HOST к ус-ву должен каким-то образом попасть в конечную точку. Где и как посмотреть "дескрипторы конечной точки"? Или достаточно просто , как говорилось раньше "простым ногодрыгом" отправить последовательность байт в принтер. Попробую-ка я посмотреть каким нибудь USB сканером...Должны же быть программные способы перехвата USB пакетов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dimka76 62 13 марта, 2020 Опубликовано 13 марта, 2020 · Жалоба 13 minutes ago, pnp_mechanic said: Где и как посмотреть "дескрипторы конечной точки"? http://www.kroah.com/linux-usb/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pnp_mechanic 2 13 марта, 2020 Опубликовано 13 марта, 2020 (изменено) · Жалоба Спасибо! Как раз то что я искал. Изменено 13 марта, 2020 пользователем pnp_mechanic Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 13 марта, 2020 Опубликовано 13 марта, 2020 · Жалоба 1 hour ago, pnp_mechanic said: как говорилось раньше "простым ногодрыгом" отправить последовательность байт да, да, конечно "простым ногодрыгом", но только согласно спецификации usb и на частоте 12 MHz Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 50 14 марта, 2020 Опубликовано 14 марта, 2020 (изменено) · Жалоба 12 часов назад, pnp_mechanic сказал: К сожалению мои знания про USB поверхностны. В чем тогда была проблема поставить принтер с RS-232 и не преодолевать эти героические сложности, тот же Custom, например? Он и работать будет куда надежнее, чем усб... ЗЫ. Не знаю, для какой цели ставится этот принтер, если для чеков, то вообще-то его нужно подключать к кассе, которая уже подключается к автомату, тогда вообще не понятно, зачем сие изыскание... Или ТС и кассу сам изобретает Изменено 14 марта, 2020 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aleksandr-zh 4 14 марта, 2020 Опубликовано 14 марта, 2020 · Жалоба В 13.03.2020 в 17:12, pnp_mechanic сказал: Изобретаю вендинговый аппарат. Есть чековый USB принтер верно вам говорят: 13 часов назад, mantech сказал: поставить принтер с RS-232 и не преодолевать эти героические сложности у меня с В 13.03.2020 в 18:21, pnp_mechanic сказал: Кроме всего прочего для аппарата нужен ещё приёмник денег и GSM модуль, и ещё какой-то экранчик, и куча реле, и кнопок спокойно справляется avr atmega64/126/2561 (зависит от ситуации, плата-то одна :) Так что ставьте принтер с RS232 и не создавайте себе в будущем проблем Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
pnp_mechanic 2 14 марта, 2020 Опубликовано 14 марта, 2020 · Жалоба Да, разумеется принтер с RS232 значительно проще в применение. Но есть в доступности только USB. ( цена, наличие, распространённость и пр.) Пока получилось посредством STM32CubeMx( ох, не нравится он мне) прочитать дескрипторы принтера. А коли чего, так припаяю RX TX прямо к центральному МК принтера и вперёд, благо схема имеется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aleksandr-zh 4 15 марта, 2020 Опубликовано 15 марта, 2020 · Жалоба почему редкость? Буквально месяц назад мой Заказчик выбирал принтер и спокойно нашел с классическим RS232. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k155la3 27 15 марта, 2020 Опубликовано 15 марта, 2020 · Жалоба 14 hours ago, pnp_mechanic said: Да, разумеется принтер с RS232 значительно проще в применение. Но есть в доступности только USB. ( цена, наличие, распространённость и пр.) . . . . А коли чего, так припаяю RX TX прямо к центральному МК принтера и вперёд, благо схема имеется. У Вас, по всей видимости, основная задача - "трудоустроить" имеющийся USB-девайс. Если есть схема и просматривается призрачная возможность прикрутить по USART - имеет смысл начать с этого. Можете потерять много ценного времени на "прикрутку" именно USB вместо решения основной задачи - запуска устройства "в целом". Разве что их (принтеров) не один и не два. Кроме того соединение по USB может слететь и само не восстановиться (по причине недописания софта, например или недо-обработки ошибки протокола), при срабатывании индуктивной нагрузки, электромагнита или тэна, итд. И хорошо, если оно будет слетать через минуту-две. А если сбоить будет по-вражески, раз в час или реже, по непонятной (?) причине. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться