| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Программирование под Unix/Linux > помогите разобраться с HID девайсом win>linux |
| Автор: _Vad_ 22.7.2007, 18:10 |
| Гигантская просьба ко всем, кто хоть как-то сможет помочь... сталкивался.. или не дай бог сталкнется с такой проблемой как у меня.. Купил себе дорогущий девайс... погодную станцию..METEOSCAN PRO 923 (еще она выпускается под именами Mebus TE923 / Honeywell TE923W / IroxUSBpro) ![]() мегадевайс конечно.. давно мечтал собирать метеоданные в комп... доволен был минут 40.. как обещано было USB порт, то - се ... но... никакой поддержки софтом, драйвером... или даже намеком... под *NIX.. ВООБЩЕ... НИГДЕ... весь интернет перерыл.. на буржуйских сайтах нашел упоминание, что основная проблема в том, что в винде программа общается со станцией через поставляемый в комплекте USB.dll (действительно есть такой.. на диске..) для винды есть прога нашего "производства".. убогая во всех отношениях.. как в общем и виндовс в целом.. но со станцией данными обменивается... (могу перехватить обмен) теперь собственно к делу.. в системе она определяется как dmesg пишет: hub.c: USB new device connect on bus1/1, assigned device number 9 hiddev0: USB HID v1.10 Device [1130:6801] on usb1:9.0 cat /proc/bus/usb/devices пишет T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 9 Spd=1.5 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=1130 ProdID=6801 Rev= 1.02 S: Product= C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=hid E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl= 10ms тоесть это HID девайс... у него на борту есть ~ХХ кб памяти в которую он складывает записанные значения с датчиков эти ~ХХ кб и нужно забирать.... вот собственно вопрос - просьба.. есть у кого-нибудь наработки связанные с общением с HID устройствами? достаточно консольного приложения без всяких наворотов, которое моглобы забирать данные из станции.. (а яб все это в MySQL складывал бы.. дальше, что все что угодно можно...) протокола обмена нет..! есть dll'ка.. (я ее приаттачил) ее можно разобрать.. + могу перехватить обмен станции в винде... я в отчаянии.... ПОМОГИТЕ ПОЖАЛУЙСТА! |
| Автор: smalcom 23.7.2007, 01:26 |
| скарей всего сначала мона попробывать пасматреть обмен какимнибудь снифером ком-портов |
| Автор: GrayCardinal 23.7.2007, 08:51 |
| _Vad_, Знаешь, мог бы помочь, будь у меня такая же штуковина Как насчет бюджета проекта (если нормально, то дальше - в приват) ? |
| Автор: bsa 23.7.2007, 11:23 |
| А может стоит написать производителю на мыло, мол я такой-то такой-то хочу написать драйвер/прогу под Linux, вышлите мне спецификации протокола обмена. |
| Автор: _Vad_ 23.7.2007, 11:40 |
| дело в том что производитель как таковой неизвестен.. внутри на платах везде написано Hideki под таким брендом оно не продается и по всей видимости им оно не нужно... (ОЕМ чтоли...) но Hideki замутило свой бренд Honeywell http://pdfserver.prweb.com/releases/2006/03/prweb357480.htm откуда взялись Irox, Mebus, RSB, (RSB такое тоже есть) не известно... а вот корни RST Meteoscan Pro 923 известны... в россии оно продается только под этим брендом хотя и написано что швеция... на самом деле на всех датчиках написано www.rusmeteo.ru есстественно все по русски.. и отсутствует модуль приема сигналов с DCF77... комплектуется программой от "ООО Аверос" http://averos.narod.ru/about.htm (сайт на народе! это модно наверное ;-)) ) с разработчиками -писателями я связался... мычат невнятные вещи о том что производитель якобы дал только dll .. и все.. (ну оно и так понятно... ктож те SDK даст... ;-) ) в результате... производитель настолько далеко от конечного пользователя что его и в телескоп не увидишь.. а в Хидеки я писал... молчат как рыба об лед! вот такой попадос |
| Автор: GrayCardinal 23.7.2007, 14:29 | ||
ОК. Почешу репу на досуге |
| Автор: JUmPER 23.7.2007, 14:36 |
| грузимся под винду, запускаем IDA (interactive disassembler) и смотрим, что и где в dll лежит, и что это "что" с устройством делает т.е. стандартный реверс инженеринг. |
| Автор: _Vad_ 23.7.2007, 14:47 |
| JUmPER, то и так ясно... я уже пытался разобрать dll'ку на в ассемблере для x86 не силен.. я больше в mcs51 а они хоть и похожи.. GrayCardinal, эндпоинтов у него 2 0 - ну как и у всех.. и 81 не знаю у всех или нет... я не сталкивался на таком уровне с USB ;-) всю требуемую информацию дам по запросу... могу дать шел на машине куда он будет воткнут |
| Автор: JUmPER 23.7.2007, 14:59 |
| _Vad_, а ида не чистый асм выдаёт, а что-то похожее на C-- |
| Автор: _Vad_ 23.7.2007, 15:04 |
| а я ИДУ не нашел... она за деньги.... а покупать для 1 несчастной M$дллки... ммм... нашел какойто W32dsmv10 оно в ассембер... ну а я ниче не понял ;-) JUmPER, если есть у тя ида... разбери плизз дллку... она приатачена к первому посту.. |
| Автор: JUmPER 23.7.2007, 15:18 |
| _Vad_, ida на работе нет... |
| Автор: _Vad_ 23.7.2007, 15:29 |
| а дома нету инета? 44 кб...всего... ;-) |
| Автор: JUmPER 23.7.2007, 15:33 |
| _Vad_, а дома комп не пережил нападение младшей сестры сестры с кошкой =( сорри. |
| Автор: _Vad_ 23.7.2007, 15:42 |
| почти обнадежил ;-) |
| Автор: _Vad_ 26.7.2007, 20:59 |
| Изыскания продолжаются.. |
| Автор: Damarus 27.7.2007, 20:15 | ||
Ну вот что выдала IDA... |
| Автор: _Vad_ 27.7.2007, 22:34 |
| Ну в общемто почти тоже самое выдают все остальные.. особливо не понятно.. я расковырял инфу кое какую.. в общем в девайсе запаяно 8 килобайт памяти, кажется 24с64.. из девайса ДЛЛка выкачивает то что в этой 24сХХ выкачивает в виде 8 килобайтного RAW файла.. а потом программа разбирает-раскидывает данные сама... как разобрать RAW я придумал, там все предельно понятно.. (смесь BCD и HEX ;-) кто это придумал - незнаю подозреваю что в USB-HID инкапсулирован протокол сериальной памяти! просто посылается туда то что обычно посылается в этих случаях на 24Схх адрес+команда - данные - адрес+команда - данные... с этими делами я знаком работал, встречался, писал (на MSC-51)... по прежнему нужна прога которая умеет посылать и слушать эндпоинты.. или как там на языке HID это называется... в голове каша от чтения всех этих стандартов, форматов мануалов... систематизировать надо... както.. хотябы кусок рабочего кода в качестве примера.. на С... как все начинается как посылается как принимается как подтверждается как заканчивается.. чтоб увидеть, собственно, как там все это описывается.. ну не встречался с гребанным УСБ... сложно с нуля самому... |
| Автор: _Vad_ 6.9.2007, 00:32 |
| UP |