Название: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 10, 2018, 21:19 В общем беда... Есть сканер штрих кода Newland em2028, он подключается либо по ком порту, либо как usb-cdc. Завёл с полпинка его на виндовс с компортом. Перенёс его, простите, на проклятый линукс, и началось.. На сайте производителя написано, что в линукс драйвера не надо, там должна быть нативная поддержка usb-pos, usb-cdc. Мои мозги уже неделю бьются с этим безобразием! Они измождены и сроки давно вышли. Он определяется как usb, есть вендор, есть пид. Я использую все так же излюбленный и супер-пупер кроссплатформенный qserialport, который то ли видит, то ли не видит. Не имея чего-то человеческого, как диспетчер устройств, я выискивал и перебирал все ttyS, чтобы добраться до этой пакости. Кто-нибудь, может мне помочь, с какими волшебным правами и матерными словами должен работать простой компорт на этом прям мега-драйв прорывом линуксе? Нет, я не хочу вызвать ненависть тех, что пользуется его sudo. Но когда дело доходит до разработки - это же развалюха, которую надо собирать из палок и всего, что выкинуто добрыми людьми в инете. Люди, помогите, а? Я уже и hidapi там пытался завести - глухо, ни слова. Все компилится, что не работает - не ясно
Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: demal от Май 10, 2018, 21:33 я так думаю для начала нужно указать какой именно линукс ты используешь.
Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 10, 2018, 21:52 Lubuntu, ибо с ним более-менее начал дышать бедный atom от Intel. И оболочка тоже была нужна
Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Alex Custov от Май 10, 2018, 22:37 А как именно он должен работать? Я когда-то работал со сканерами карт, они же вроде работают как клавиатуры, посылая обычный клавиатурный ввод. Мой сканер я просто подключил к Убунте, открыл leafpad, провёл картой и получил текст.
Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 10, 2018, 23:19 Да, я тоже радовался, когда первый раз читал, что эти устройства так определяются, однако на винде 10 не определился и мне пришлось поставить драйвер с его оф. сайта, после чего оче6нь легко все подрубилось по ком порту. Проверял так - открыл текстовый файл, тыкнул туда курсором,и считало штрих код - в источниках пишут, что подобно клавиатуре то, что считано, будет прописано - это же хид. Но увы, не пишет оно просто так. Так только в легендах у кого-то на форумах случалось
Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 10, 2018, 23:27 Если кому-то нужен код, прилагаю, он на Винде работает, он же на линуксе с измененным параметром - не работает, а ведь говорится, что библиотека Qt кроссплатформенная
Код: #include "barcodescanner.h" Как говорится, тут ломаться то нечему. Я не знаю, может, кто-то может научить отыскивать в этом "все есть файл" файл подключаемого компорта.... Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Kurles от Май 11, 2018, 08:47 Обычно все эти usb-com конверторы в линуксах как ttyUSBx определяются.
Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Hellraiser от Май 11, 2018, 09:19 ttyS* - это аппаратный com-порт в линуксе. Чтобы узнать имя порта сканера, надо прочитать журнал сообщений (как правило, /var/log/messages) после его подключения. Кроме того, чтобы работать с com-портом в линуксе, надо быть членом специальной группы. Имя группы можно узнать выполнив команду
Код Один из столбцов вывода будет содержать имя группы, в которую необходимо добавить пользователя. Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: zhbr от Май 11, 2018, 10:51 можно набрать команду dmesg - запомнить последнюю строчку, затем воткнуть устройство, опять выполнить dmesg и увидишь чего нового добавилось.
правами над устройствами обычно udev рулит. можно составить правила под конкретные vid pid. Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: kai666_73 от Май 11, 2018, 10:53 ttyS* - это аппаратный com-порт в линуксе. Чтобы узнать имя порта сканера, надо прочитать журнал сообщений (как правило, /var/log/messages) после его подключения. Кроме того, чтобы работать с com-портом в линуксе, надо быть членом специальной группы. Имя группы можно узнать выполнив команду Код Один из столбцов вывода будет содержать имя группы, в которую необходимо добавить пользователя. И скорее всего это будет dialout. То есть следует добавить пользователя в эту группу и перелогиниться. Также, в качестве превентивных мер, стоит посмотреть не установлен ли modemmanager в систему. Если естановлен, то удалить его и ребутнуться. Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: kai666_73 от Май 11, 2018, 10:56 По поводу dmesg.
Следует вынуть устройство и очистить журнал: sudo dmesg -C Затем вставить устройство и снова выполнить dmesg Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: qate от Май 11, 2018, 11:10 еще покажи
Код: cat /etc/os-release и кто же заставил тебя мучится с этим линуском, ведь на венде то все работало ? Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: kuzulis от Май 11, 2018, 11:17 > Обычно все эти usb-com конверторы в линуксах как ttyUSBx определяются.
Или ttyACMx. ТС, просто возьми terminal пример от qtserialport открой настройки и там будут отображаться все имеющиеся в системе порты. И даже можешь заиспользовать сам terminal для приема данных. PS: А вот гневно писать о том, в чем не разобрался - не нужно. Там просто в гугле 15 минут поиска и все становится ясно. Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 11, 2018, 13:31 Всем снова здравствуйте. Выше писали про группу и добавление туда юзера, это было проделано еще до моего обращения, да - был dialout.
ttyUSB и ttyACM(как указано в оф.доках) я тоже искал , нет - в dev только ttyS и tty. Работать должен просто на считывание - поднесли штрих код, он считал и отправил. Сегодня воспользовался ls usb -v нашел по пид и вид, и обнаружил это чудо в bus 0004, а там в файле 0006(но это выделяется динамически, то есть номер файлика меняется) НЕ ПО ТЕМЕ(этот абзац можно не читать): Гневать защитников мощного линукса я не хотел, и вовсе не писал это со злостью, это мой крик о помощи. Просто поймите, я , вроде как, юзаю кроссплатформенную Qt, и само собой хочу видеть в этом удобство, но самой главной проблемой теперь для меня стало устройство линукса, которое дает о себе знать на каждом мелком шагу. У меня вообще уже складывается впечатление, что чтобы что-то заработало на нем - это большая удача. Например, я хотел повернуть экран, надо найти xorg.conf -> нет файла xorg.conf, надо создать-> создаю, надо остановить gdb -> нет gdb ->устанавливаю gdb, останавливаю gdb, создаю файл, перекидываю его в нужную папку, начинаю редактировать -> нельзя, надо права-> открываю его в лучезарной консоли редактором nano с sudo, редактирую-> отлично! оно после перезагрузки сразу стало перевернутым-> ...а мышки то нет...-> и после этого еще много разных вариантов настроек в секциях device, монитор, inputdevice...но мышь так и не появилась. А ведь мне надо просто перевернуть экран. Что будет, когда я захочу что-то добавить в автозагрузку - боюсь себе представить. Лично для меня его привлекательность пока видится только в его бесплатности и отсутствии тормозов, которые в винде со временем появляются, но за это надо очень дорого заплатить. как сказал бы Шаукан из Мортал Комбата "Your soul is main"^^) В общем, что с этим всем делать, по прежнему - теряюсь в догадках. Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: kuzulis от Май 11, 2018, 14:04 Цитировать нет - в dev только ttyS и tty. Значит нужный драйвер не подгрузился. 1. Смотри что говорит dmesg при втыкании/вытыкании девайса, о чем писали выше. 2. Через lsusb (флаги с какими запускать сам поищи) посмотри дескриптор USB у-ва, он должен соответствовать спецификации USB CDC-ACM. Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 11, 2018, 14:28 переткнул, почистил, использовал dmesg
Код: [ 5584.697623] usb 4-2: USB disconnect, device number 11 Я там в отчаянии использовал wine эмулятор, чтоб поставить драйвер в формате .msi(на оф.сайте было заявлено, что они идут и для линукс, но дистр был в .msi), теперь не ясно - это подцепились собственные дрова или те, что я ставил Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 11, 2018, 14:29 еще покажи Код: cat /etc/os-release и кто же заставил тебя мучится с этим линуском, ведь на венде то все работало ? Релиз такой: Код: NAME="Ubuntu" Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: qate от Май 11, 2018, 14:31 Например, я хотел повернуть экран, надо .... это что я щас прочитал за садомазо отчет ? ты где нашел эти руководства ? на год их написания смотрел ? какой нах xorg, все делается мышой - в окне настройка экранов https://www.youtube.com/watch?v=yQIVMW7QiDM Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: qate от Май 11, 2018, 14:44 А вообще нужно обращаться к производителю железяки - для венды он дрова приложил, а для linux пусть также приложит или инструкцию
Если он этого не сделал, значит ему наплевать на этот вариант использования Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 11, 2018, 15:10 Например, я хотел повернуть экран, надо .... это что я щас прочитал за садомазо отчет ? ты где нашел эти руководства ? на год их написания смотрел ? какой нах xorg, все делается мышой - в окне настройка экранов https://www.youtube.com/watch?v=yQIVMW7QiDM ну-ну, мышкой.. я ведь не фильмы смотреть ставил версию, этот Ubuntu парализует бедный atom, вскоре там вообще не будет оболочки. Как я и писал , производителю не все равно, он просто указывает, что в линушке все должно быть нативным, драйверов не надобно Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: qate от Май 11, 2018, 15:46 Как я и писал , производителю не все равно, он просто указывает, что в линушке все должно быть нативным, драйверов не надобно врет значит напиши им с указанием dmesg, пусть укажут как все "просто" не получается Название: Re: ПРОСТО ПО-МО-ГИ-ТЕ! Qt Linux usb-cdc Отправлено: Tumyq от Май 11, 2018, 16:27 Как я и писал , производителю не все равно, он просто указывает, что в линушке все должно быть нативным, драйверов не надобно врет значит напиши им с указанием dmesg, пусть укажут как все "просто" не получается дело , конечно, благородное, но вряд ли они мне за пару дней новый драйвер накатают. Но , похоже, что скоро напишу |