Перейти к содержанию
    

Проблема CyUSB.sys и 64-х битных Windows

Начиная с 2006 года стал в разработках устройств в качестве интерфейсных мх использовать CY7C68013A вместо FT245BM, т.к. иногда требовалась большая скорость передачи. Тогда у FTDI ещё не было мх, которые бы работали на USB2.0. Потом ещё выяснилось, что CY7C68013A и стоит дешевле (на тот момент сохранились накладные в которых их стоимость 2,54$), удобнее в использовании (есть GPIB), для небольших скоростей (<4МБ/с) ассинхронный режим аналогичен FT245BM, превосходная библиотека NET 2.0 CyUSB.dll (ради этого перешёл с любимого Delphi на C#) очень хорошо продокументированная.

Спустя три года поставил 64-битную 7-ку. Надеясь найти обновления качнул Development Kit датированный 2009 годом и там оказался CyUSB.sys версии 1.7.0.0 (в 2006 году была версия 1.8.120.0)! Техподдержка, чтоб её не доставали с подобными вопросами вывесила, что дрова мол работают в режими с отключённой проверкой сертефикатов (проверял не работают) и сертифицировать они ничего не собираются.

FTDI сначала поторопились с версией CDM 2.04.14, написав, что поддерживает Server 2008 и 7-ку (оказались не сертифицированные), но потом быстро исправились в версии CDM 2.06.00 WHQL Certified.

Что делать?

Где бы взять исходники для CyUSB.sys, чтоб попробывать их перекомпилировать в DDK для 64-битки и потом мб сертифицировать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Где бы взять исходники для CyUSB.sys, чтоб попробывать их перекомпилировать в DDK для 64-битки и потом мб сертифицировать?

 

Исходники - не знаю, проще bulkusb.sys из wdk подогнать под задачу и собрать.

 

Что касается "сертифицировать" - то ничего сертифицировать не надо, кроме своей собственной фирмы, купив на нее сертификат от GlobalSign, Verisign, или еще кого, кто там в списке - http://www.microsoft.com/whdc/winlogo/drvsign/crosscert.mspx . После того, как купите такой сертификат, стоит он не так и дорого, что-то типа 170 евро на год, сможете сами им подписать даже их драйвер (если это не нарушает их лицензии на этот драйвер), после чего он начнет ставится без отключения проверок, а винда гордо рапортовать о дровах Вашего изготовления.

 

т.е. WHQL не нужна, чтобы можно было ставить драйвера. Она нужна, чтобы еще и пальцы гнуть можно было, "типа мы и там сертифицировались".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...

Спустя три года поставил 64-битную 7-ку. Надеясь найти обновления качнул Development Kit датированный 2009 годом и там оказался CyUSB.sys версии 1.7.0.0 (в 2006 году была версия 1.8.120.0)!

...

Так ведь, у Cypress есть SuiteUSB 3.4 - USB Development tools for Visual Studio

 

 

...

Техподдержка, чтоб её не доставали с подобными вопросами вывесила, что дрова мол работают в режими с отключённой проверкой сертефикатов (проверял не работают) и сертифицировать они ничего не собираются.

...

Они ведь объясняют причины этого: Why is cyusb.sys not WHQL signed?

 

Поиск в Google ("sign driver for x64") дал вот такое решение:

VISTA: Install unsigned hardware driver in x64 bit,

Guide to Installing Un-Signed Drivers in Win 7 x64

Я пока не использую Windows 7 (x64). Пожалуйста, напишите, работает ли это решение для Windows 7 (x64)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Где бы взять исходники для CyUSB.sys, чтоб попробывать их перекомпилировать в DDK для 64-битки и потом мб сертифицировать?

 

Исходники найти не получится, занимался этоим вопрос, но безуспешно (общался вживую с ребятами из Cypress). Довольно просто можно переписать usbbulk.sys (получается ничуть не хуже, а местами и лучше), как уже было подмечено. А вот сертификовать думаю необходимо будет под Х64. Просто подписью (как упоминул уважаемый SM) не обойтись.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще один вопрос "Проблема с установкой драйверов под Windows7" по данной теме был задан Vitaliy_ARM в теме Помогите c Cypress CY7C68013, Изохронная IN точка и FIFO.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня тоже работает в режиме Test Mode. Подписывать драйвера той утилитой еще не пробовал. Видимо майкрософт решили содрать еще немного денег с производителей. Сколько стоит получить подпись у майкрософт для своего устройства?

 

P.S.

Может тогда уже лучше использовать FT2232H?: http://www.ftdichip.com/Drivers/D2XX.htm

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Полезная утилита для тех, кто использует цифровую подпись для тестирования драйверов (Signing a Driver Package with the Test Certificate), как штатное средство подписи драйверов:

 

Вот web страница автора утилиты и, собственно, сама утилита Remove Watermarks for Windows 7, Vista and Server 2008.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подниму тему.

У пользователей идет обновление парка компьютеров, и на них установливают Windows 7 X64. Спрашивают драйверы для устройств на CY7C68013 FX2 под эту систему соответственно.

 

Поиск в Google ("sign driver for x64") дал вот такое решение:

Guide to Installing Un-Signed Drivers in Win 7 x64

Я пока не использую Windows 7 (x64). Пожалуйста, напишите, работает ли это решение для Windows 7 (x64)?

 

Это решение работает.

В Windows 7 X64 запускаются программы написанные под XP и работают с драйвером для windows 7 X64 при отключенной проверке подписи драйвера.

 

Еще как вариант можно использовать подписанный драйвер для демоплаты http://www.cypress.com/?id=4&rID=53338

Но тогда надо VID PID менять на соттветствующие.

 

Вопрос: есть еще варианты подписать драйвер под свои устройства чтобы в x64 он нормально устанавливался?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подниму эту тему для WINDOWS 7 x64 .

Необходимо подключить ранее разработанные платы с USB на Cypress CY7C68013 к компу с 64-х разрядной WINDOWS 7.

На ХР драйвер ставился и устройство определялось и работало (был задан VID_0547&PID_1002).

Попытка поставить драйвер на 64-х разрядную ось неудачна.

В свойствах устройства стоит ! (воскл знак) и написано -

"Не удается проверить цифровую подпись драйверов, необходимых для данного устройства. При последнем изменении оборудования или программного обеспечения могла быть произведена установка неправильно подписанного или поврежденного файла либо вредоносной программы неизвестного происхождения. (Код 52)"

 

Я брал cyusb.inf файл и добавлял в него свой VID_0547&PID_1002 (cyusb.inf и cyusb.sys брались из CY3684_EZ-USB_FX2LP_DVK).

 

Если я при запуске WINDOWS 7 через F8 выключаю проверку цифровой подписи драйверов, то мое устройство опознается правильно и далее работает (но только до перезагрузки винды).

 

Попытка отключить на постоянно проверку цифровой подписи через gpedit.msc ничего не дает (не понимаю почему?).

 

Как еще можно заставить корректно видеть мое устройство в х64 (менять/перепрошивать vid и pid на предлагаемые cypress VID_04B4&PID_1004 ... во всех платах не хочется)?!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Чем не устраивает работа с отключенной проверкой подписи драйверов (через F8)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...Как еще можно заставить корректно видеть мое устройство в х64 (менять/перепрошивать vid и pid на предлагаемые cypress VID_04B4&PID_1004 ... во всех платах не хочется)?!

  • Использовать цифровую подпись для тестирования драйверов (Signing a Driver Package with the Test Certificate). Только, придется на каждом компьютере использовать TESTSIGNING Boot Configuration Option.
  • Самому подписывать драйвер, соответственно заплатить Certification Authority $400.
  • Перейти на WinUSB.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

to Konst_777

1 пункт - не заработал.

2 пункт - не подходит

  • Перейти на WinUSB.

А вот WinUSB - пока не разобрался откуда взять .inf и .sys файлы (как создать, хотя по вашей ссылке сходил )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 пункт - не заработал...

Похоже, что Вы что-то не сделали или сделали не так. Проверьте, что Вы:

  • подписали драйвер цифровой подписью для тестирования драйверов;
  • добавили Ваш тестовый сертификат в хранилище сертификатов на компьютере.

...А вот WinUSB - пока не разобрался откуда взять .inf и .sys файлы (как создать, хотя по вашей ссылке сходил )

Почитайте тему Подскажите по winUSB

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Похоже, что Вы что-то не сделали или сделали не так. Проверьте, что Вы:

  • подписали драйвер цифровой подписью для тестирования драйверов;
  • добавили Ваш тестовый сертификат в хранилище сертификатов на компьютере.

Этот приём не работает после какого-то там обновления. :( Тоже использовали, а потом перестало работать.

 

В итоге, накопали некий скрипт, который автоматом запускается на старте и загоняет венду в тестовый режим, где всё работает без лишних вопросов. Так и живём.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...