Hello,
I'm developing a USB device, using the microprocessor JM32, and a Windows software for communicating with it, using Visual Basic 2010 and the library SimpleUSB.dll provided by Freescale (I've followed the tutorial "USBJM_Training GUI").
I've no problem under Windows XP SP3 (communication ok, all data bytes sent and received correctly).
Instead under Windows 7 64 bit I've this issue: the driver seems to have been correctly installed (after a little modification to the inf file generated by the tool "WinUSB INF Generator"), but the software isn't able to connect to my device.
The question is: is SimpleUSB.dll compatible with Windows 7 64 bit?
Thanks in advance to anyone who can help me.
.
Solved! Go to Solution.
Above INF file is fine.
SimpleUSB.dll refers to FSLwinusb.dll, a simple WinUSB wrapper DLL made by Freescale for ColdFire MCF522xx. SimpleUSB.dll is a .NET DLL for Any CPU, but FSLwinusb.dll is an unmanaged 32bit DLL.
1) Build your application for x86 platform, instead of Any CPU (Project > Property > Build: Platform target)
2) Place your application with these DLLs into a folder under C:\Program Files(x86) of Win7 x64.
Tsuneo
I have the same problem when using jm60 with win7 64 bit
below is my inf file. I wonder if someone could give us advice.
[Version]
Signature = "$Windows NT$"
Class =TESTUSB
ClassGuid={53ccbae0-fa18-48d6-b01f-24aceb83abd1}
Provider = %ProviderName%
DriverVer = 07/05/2009,7.0.0
;CatalogFile=MyCatFile.cat
; ================== Class section ==================
[ClassInstall32]
AddReg=SampleClass_RegistryAdd
[SampleClass_RegistryAdd]
HKR,,,,%ClassName%
; ========== Manufacturer/Models sections ===========
[Manufacturer]
%ProviderName% = MyDevice_WinUSB,NTx86,NTamd64
[MyDevice_WinUSB.NTx86]
%USB\MyDevice.DeviceDesc% =USB_Install, USB\VID_15A2&PID_0050&REV_0100
[MyDevice_WinUSB.NTamd64]
%USB\MyDevice.DeviceDesc% =USB_Install, USB\VID_15A2&PID_0050&REV_0100
; =================== Installation ===================
;[1]
[USB_Install]
Include=winusb.inf
Needs=WINUSB.NT
;[2]
[USB_Install.Services]
Include=winusb.inf
AddService=WinUSB,0x00000002,WinUSB_ServiceInstall
;[3]
[WinUSB_ServiceInstall]
DisplayName = %WinUSB_SvcDesc%
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\WinUSB.sys
;[4]
[USB_Install.Wdf]
KmdfService=WINUSB, WinUsb_Install
UmdfServiceOrder=WINUSB
[WinUSB_Install]
KmdfLibraryVersion=1.9
;[5]
[USB_Install.HW]
AddReg=Dev_AddReg
[Dev_AddReg]
HKR,,DeviceInterfaceGUIDs,0x10000,"{05f2aaf3-b265-4c31-8ffb-0128cd72bbda}"
;[6]
[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
; ================= Source Media Section =====================
;[7]
[SourceDisksNames]
1 = %DISK_NAME%,,,\x86
2 = %DISK_NAME%,,,\amd64
[SourceDisksFiles.x86]
WinUSBCoInstaller2.dll=1
WdfCoInstaller01009.dll=1
[SourceDisksFiles.amd64]
WinUSBCoInstaller2.dll = 2
WdfCoInstaller01009.dll =2
; =================== Strings ===================
[Strings]
ProviderName="MyDevice_WinUSB"
ClassName="TESTUSB"
USB\MyDevice.DeviceDesc="TESTUSB"
WinUSB_SvcDesc="TESTUSB"
DISK_NAME="Drivers"
Above INF file is fine.
SimpleUSB.dll refers to FSLwinusb.dll, a simple WinUSB wrapper DLL made by Freescale for ColdFire MCF522xx. SimpleUSB.dll is a .NET DLL for Any CPU, but FSLwinusb.dll is an unmanaged 32bit DLL.
1) Build your application for x86 platform, instead of Any CPU (Project > Property > Build: Platform target)
2) Place your application with these DLLs into a folder under C:\Program Files(x86) of Win7 x64.
Tsuneo
It works.
Thank you very much Tsuneo,