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.
Danke verstehe , Ja WinUsb , aber dann wieder nicht für Windows XP ? Danke euch! Grüsschen K.
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.
Heiden Aufwand? Naja wir sind hier gestartet: https://msdn.microsoft.com/en-us/library/windows/hardware/ff540196(v=vs.85).aspx Zwei Handles anfordern und dann Gerät öffnen...und dann kannst du auf die Pipes schreiben und lesen...
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
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? steht zumindest nichts davon da. https://msdn.microsoft.com/en-us/library/windows/hardware/hh450799(v=vs.85).aspx
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.