[hpsdr] Ozy and WinUSB

Dick Faust k9ivb at arrl.net
Thu Jul 23 17:36:24 PDT 2009


Went through some of this when I wanted to do a WDM driver for Janus - 
Ozy about a year ago.
Some things that I found out is that it is quite involved.  Cypress has 
some nice tools that will allow you to talk to the uP - USB and set up 
the endpoints that you want / need.  Some of this should be [I was told] 
in the original source code for the Ozy.  perhaps you can find it in the 
SVN area.
Another thing that appears to be needed is the SDK and DDK's from M$ for 
the VStudio of choice.
MSDN has much info if you can navigate, for USB Design Guides and 
Reference try:
http://msdn.microsoft.com/en-us/library/ms790518.aspx
If you could write all of the code in a "Generic C compiler" it would be 
usable for all OS's and be independent of M$ idiosyncrasys and  my 
unfavorite environment of Net.framework, maybe the Linux people could 
help here.
Hope this is of some help, it has been a while since I poked arround in 
this area.
DIck Faust K9IVB

Alberto I2PHD wrote:
> ***** High Performance Software Defined Radio Discussion List *****
>
> I started to write a WinUSB interface to talk to Ozy. I am doing this 
> essentially for two reasons :
>
> 1) The current libusb interface won't likely be supported by the 
> 64-bit version of the upcoming Windows 7,
>    while WinUSB  will. At least M$oft guarantees this.
>
> 2) I know nothing about USB nor WinUSB, and this looks like a good way 
> to learn something...:-)
>
> So far, I have been able to code an INF file, and to install 
> successfully the drivers needed by WinUSB.
> Additionally, I wrote a small sample code that successfully issues the
>
> GetDevicePath, SetupDiGetClassDevs, SetupDiEnumDeviceInterfaces
> OpenDevice
> WinUsb_Initialize
> WinUsb_QueryDeviceInformation
>
> calls (not necessarily in this order). As a last thing I issue the 
> WinUsb_QueryInterfaceSettings API,
> to know the characteristics of the USB device, i.e. the Ozy card.
>
> And here is where I am having problems, and the reason for making this 
> post.
>
> That API fills a structure of type USB_INTERFACE_DESCRIPTOR, which has 
> a field that contains the number
> of the endpoints of the device. I find that field always set to zero.
>
> Being totally ignorant, as said, of the USB architecture, I made an 
> hypothesis which could be totally
> wrong, so I ask those expert in this field.
> Does that depend from the fact that the firmware hasn't (at that 
> point) been loaded yet into the Ozy FPGA ?
> If this is true, how can I load that firmware into the FPGA using 
> WinUSB (libusb is out of the picture),
> given that I have no endpoints to contact ?
>
> Please enlighten me, this USB stuff is a bit confusing, at least 
> initially...
>
> Thanks
>
> 73  Alberto  I2PHD
>
> _______________________________________________
> HPSDR Discussion List
> To post msg: hpsdr at openhpsdr.org
> Subscription help: 
> http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org
> HPSDR web page: http://openhpsdr.org
> Archives: http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/
> ------------------------------------------------------------------------
>
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 8.5.392 / Virus Database: 270.13.23/2254 - Release Date: 07/22/09 05:59:00
>
>   

 1248395784.0


More information about the Hpsdr mailing list