Hallo,
seit neuestem werden meine AVR's nicht mehr korrekt von LibUSB32 unter
Windows 10 erkannt. Ist das nur lokal bei mir so ? In der Preview
funktionierte alles erwartungsgemäß.
Danke für Hinweise
K.
Hi
also ich nutze nicht die Option als HID-Gerät wie Maus Joy oder Key.
Statdessen wird das Gerät unterhalb von usb_lib_23 gelistet
(HardwareManager)
und von mir direkt angesprochen, aus einem cpp Programm.
Die Auflistung findet nun nicht mehr statt.
Ging auch immer prima, im Moment ist es so, das ich zb. mit ArduinoIDE
via Digispark den Code auf den AVR laden kann, dann aber dieser nicht
als win_usb_lib_32 device gelistet wird, und somit auch nicht iteriert
werden kann. Das ist jetzt neu unter W10 aufgekommen in der Preview von
W10 lief alles.
Ich befürchte das sich da etwas verändert hat, bezüglich der ID und der
zuordnung des Gerätes..
Danke für Hinweise
Grüße
K.
Abhilfe: Libusb mittels Zadig installieren:
http://zadig.akeo.ie/
Achtung: Du muss wissen, ob deine Software LibUSB-Win32, LibUSBk oder
WinUSB braucht,, und das korrekt einstellen. Kann man aber auch notfalls
durchprobieren, ich würde auf LibUSB-Win32 tippen.
Hallo,
genau das war es, ich habe mir ein Driver "Kit" erstellen lassen mit dem
Tool libusb-win32-bin-1.2.6.0/Bin/inf-wizard.exe
Das funktinierte dann sofort, heißt das ich kann davon ausgehen,
das auf einem fremden Rechner das erstellte "Kit" = (inf datei drv usw)
nicht funktioniert so wie ich es nun erlebt habe mit dem alten
erstellten "Kit" ?
Danke für Hinweise
K.
Doku Lesen. Das Zertifikat für die .inf macht Zadig jeweils neu und
schmeisst den Root-Key weg, nachdem er im System als "vertrauenswürdig"
installiert wurde. Dadurch geht das "Kit" immer nur auf genau dieser
Windows Installation.
Ausname: Mann nimmt auch das "vertrauenswürdige" Zertifikat auf die neue
Installation mit, aber einfach Zadig.exe ausführen dürfte viel schneller
gehen.
Karsten S. schrieb:> also ich nutze nicht die Option als HID-Gerät wie Maus Joy oder Key.> Statdessen wird das Gerät unterhalb von usb_lib_23 gelistet (HardwareManager)> und von mir direkt angesprochen, aus einem cpp Programm.
Ich würde dir empfehlen, falls möglich, die Firmware WinUSB-kompatibel
zu machen. Der Zugriff über den LibUSB-Treiber ist dann immer noch
möglich, aber auf modernen Windows-Versionen kannst du stattdessen den
WinUSB-Treiber benutzen, der nicht mehr extra installiert werden muss.
Karsten S. schrieb:> WinUsb , aber dann wieder nicht für Windows XP ?
Die "eigentlichen" Funktionen deiner Firmware werden dadurch nicht
verändern, du kannst also immer noch mit LibUSB darauf zugreifen.
Karsten S. schrieb:> Ja WinUsb , aber dann wieder nicht für Windows XP ?
Doch. WinUSB wird ab XP SP2 mit ausgeliefert. Die Firmware kann so
bleiben, es sei denn, du benutzt ISO Streaming. Das kann WinUSB
zumindest bis einschließlich Windows 7 nicht.
Wir haben extrem gute Erfahrungen mit WinUSB, läuft absolut zuverlässig
und ist einfach ansprechbar.
Naja einfach, es ist wohl ein heiden Aufwand habe gerade die
specs gesichtet. Die fülle der Informationen zum Theme ist
umfangreich, hast Du einen Hinweis für ein "Easy" Example ?
Danke für Hinweise
Lg
K.
Peter II schrieb:> steht zumindest nichts davon da.
Oben schreibst Du,Du hast das schon gemacht und hier schreibst Du, dass
Du es nicht weisst. Was nun?
Pit schrieb:> Peter II schrieb:>> steht zumindest nichts davon da.>> Oben schreibst Du,Du hast das schon gemacht und hier schreibst Du, dass> Du es nicht weisst. Was nun?
eventuell mal die Namen vergleichen? Ich hatte hier noch gar nichts
geschrieben.
Peter II schrieb:> eventuell mal die Namen vergleichen? Ich hatte hier noch gar nichts> geschrieben.
Da war ich wohl etwas übereifrig - ich bitte um Nachsicht.
Pit schrieb:> Wenn ich auf WinUSB umstelle brauche ich dann noch den ganzen Mist mit> .inf und Zertifikaten oder fällt das dann auch weg?>> Gruß Peter
Naja eine inf brauchst du schon, bei LibUsb genauso. Die gibts als
Template da auf der msdn Seite. Signatur muss nicht sein, denn WinUSB
ist ja schon im Windows drin, also muss nix kopiert werden. Noch
einfacher gehts mit der neuen WinUsb Erkennung über die OS String
Descriptoren von MS, aber das geht dann meines Wissens erst ab Windows 7
oder 8. Da wird dann automatisch der Treiber zugeordnet und das Gerät
taucht als WinUSB Gerät auf. Naturlich geht dann kein eigener Name und
keine eigene Driver GUID.
Hallo,
ich habe jetzt via VS2015 mit dem XP DDK einen Opener geschrieben mit
dem
ich den AVR auslesen kann. Leider verwende ich noch immer zdiag.exe um
mein Treiberpaket zu installieren. Ich möchte natürlich eine *.inf
Datei die direkt nur WinUSB.sys verwendet.
Meine *inf von ZDiag verwendet also immer libusb.sys
jede Veränderung bezüglich Vendor oder anderer Einträge führt dazu, das
der Baustein nicht mehr als Universal Serial Gerät in der Hardwareliste
erscheint. Lediglich mit dieser *.INF von ZDiag.exe kann ich das Gerät
als
WinUSB Gerät mit meinem c++ Programm erfolgreich öffnen.
Vielen Dank für Hinweise was ich da verändern kann.
Karsten
; DigiUSB.inf
; Copyright (c) 2010-2014 libusb (GNU LGPL)
[Strings]
DeviceName = "DigiUSB"
VendorName = "Van Ooijen Technische Informatica"
SourceName = "DigiUSB Install Disk"
DeviceID = "VID_16C0&PID_05DF"
DeviceGUID = "{23F89E5D-616F-4DA0-AA2B-D08123AFDF2C}"
[Version]
Signature = "$Windows NT$"
Class = "Universal Serial Bus devices"
ClassGuid = {88bae032-5a81-49f0-bc3d-a4ff138216d6}
Provider = "libusb.info"
CatalogFile = DigiUSB.cat
DriverVer = 06/18/2013, 6.1.7600.16385
[ClassInstall32]
Addreg = WinUSBDeviceClassReg
[WinUSBDeviceClassReg]
HKR,,,0,"Universal Serial Bus devices"
HKR,,Icon,,-20
[Manufacturer]
%VendorName% = libusbDevice_WinUSB,NTx86,NTamd64,NTia64
[libusbDevice_WinUSB.NTx86]
%DeviceName% = USB_Install, USB\%DeviceID%
[libusbDevice_WinUSB.NTamd64]
%DeviceName% = USB_Install, USB\%DeviceID%
[libusbDevice_WinUSB.NTia64]
%DeviceName% = USB_Install, USB\%DeviceID%
[USB_Install]
Include = winusb.inf
Needs = WINUSB.NT
[USB_Install.Services]
Include = winusb.inf
AddService = WinUSB,0x00000002,WinUSB_ServiceInstall
[WinUSB_ServiceInstall]
DisplayName = "WinUSB - Kernel Driver 06/18/2013 6.1.7600.16385"
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\WinUSB.sys
[USB_Install.Wdf]
KmdfService = WINUSB, WinUsb_Install
[WinUSB_Install]
KmdfLibraryVersion = 1.9
[USB_Install.HW]
AddReg = AddDeviceInterfaceGUID
[NoDeviceInterfaceGUID]
; Avoids adding a DeviceInterfaceGUID for generic driver
[AddDeviceInterfaceGUID]
HKR,,DeviceInterfaceGUIDs,0x10000,%DeviceGUID%
[USB_Install.CoInstallers]
AddReg = CoInstallers_AddReg
CopyFiles = CoInstallers_CopyFiles
[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller01009.dll,WdfCoInstaller",
"WinUSBCoInstaller2.dll"
[CoInstallers_CopyFiles]
WinUSBCoInstaller2.dll
WdfCoInstaller01009.dll
[DestinationDirs]
CoInstallers_CopyFiles = 11
[SourceDisksNames]
1 = %SourceName%
[SourceDisksFiles.x86]
WinUSBCoInstaller2.dll = 1,x86
WdfCoInstaller01009.dll = 1,x86
[SourceDisksFiles.amd64]
WinUSBCoInstaller2.dll = 1,amd64
WdfCoInstaller01009.dll = 1,amd64
[SourceDisksFiles.ia64]
WinUSBCoInstaller2.dll = 1,ia64
WdfCoInstaller01009.dll = 1,ia64
Eine eigene Frage?
Dieser Thread ist über 11 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.