Pull to refresh

Comments 18

Большое спасибо, может я, наконец, отреверсю свою клавиатуру razer blackwidow, что бы задействовать макроклавиши или вообще запись макросов.
Я пытался заставить работать китайско-индийские 3G модемы. Индусы берут китайский модем, меняют или оставляют корпус, что-то там мудрят, чтобы usb_modeswitch не работал. И eject тоже не работает. Поддержка фирм, выпустивших эти модемы, тоже помогать не хочет. «Наши модемы поддерживают только Windows».

Какое-то время я пытался мониторить команды, которые Windows отправляет модему, чтобы перевести модем из режима виртуального CD-ROM в режим модема, но из-за отсутствия подобной статьи мои усилия не увенчались успехом. Теперь может быть попробую еще раз.
Только почему-то автор как перевод это не оформил и источник не указал.
Из-за этого сначала подумал, что это авторский материал.
Прошу прощения, я периодически забываю оформлять, как перевод. Добавил ссылку.
UFO just landed and posted this here
Перевод не плох, но оригинал никогда не помешает. Спасибо.
А дальше что? его можно закоммитить в ядро или в дистрибутив?
как это происходит?
Про дистрибутив не скажу, а в ядро тут комитить нечего т.к. автор для ядра ничего не делал.
Мало того, он сам пишет что в ядре уже есть драйвер HID который установился для его машинки, но он решил его отключить. Зачем это нужно было делать осталось загадкой.
Дело в том, что сам драйвер HID не зает о том что нужно/можно делать с машинкой.
Так libusb тоже не знает как управлять машинкой.
Драйвер HID делает файл в /dev и позволяет отправлять и читать HID репорты оттуда обычными средствами ОС. Фактически он уже делает все то, что автор сделал с помощью libusb и pyusb.
Я как-то решал «обратную» задачку с реверс-инжинирингом (linux->windows). У меня есть очень старый USB сканер пятнадцатилетней давности, но рабочий. Драйверов по Windows 7 для него, понятное дело, нет. Только под ХР. Я запустил виртуальную машину с ХР, и сдёрнул там весь протокол обмена через оригинальный драйвер. Задачу сильно облегчило то, что нашёлся драйвер под линукс, вот оттуда я практически весь протокол и взял без нудного разбора логов (так что «реверса» как такового я практически избежал). Затем написал программку, общающуюся со сканером напрямую и теперь он у меня под семёркой работает на ура (причём даже лучше чем раньше — он отдаёт картинку в RAW, а калибровки в файле сохраняю, так что он к работе моментально готов и больше не елозит под крышкой перед сканированием. Я использовал довольно специфический инструмент разработки — LabVIEW, что позволило решить задачку практически за вечер. Если интересно, могу написать.
Кто-нибудь понял зачем автор отключил от своего устройства драйвер usbhid и решил работать с устройством через libusb?
Разве python не позволяет открыть файл в /dev и делать с ним read/write?
UFO just landed and posted this here
А нет статьи по разработке какого-нибудь USB-устройства?
Я разрабатывал USB-джойстик + самопальное устройство ввода-вывода (composite device) на контроллере AT91SAM7. Не скажу, что это было просто, поскольку пришлось обрабатывать все транзакции, т.е. фактически, реализовывать весь стек USB со стороны контроллера.
Сейчас, полагаю, есть множество готовых фреймворков для контроллеров с USB, ну а если нужен просто HID, то точно есть, поскольку еще в 2008 году была на свете библиотека для AVRов, где дерганьем пинов реализовывался джойстик.
Sign up to leave a comment.

Articles