Sunday, March 2, 2008

USB Bulk Transfer Device

In continuation of my previous post (USB-101), USB Human Interface Devices, have a disadvantage. HID devices have a maximum speed of 64Kb/s (or 512 KB/s) in each direction. Sounds like a lot? Not so much. Imagine building a USB based Scanner, or Image acquisition tool. A single image could be up to several hundred megs!! It could take several minutes (or hours :-O ) to transfer data.
But USB is supposed to be a high speed bus, right? Solution: Bulk Transfers. Bulk transfers utilize the full bus speed of USB. So transfer rates of 12MB/s in full speed devices (Like the 18f4550) or 480MB/s in high speed devices are possible.

I've included with this post a file Bulk_transfer_device.rar (298 KB) which contains the PIC's firmware (Once again using the CCS 'C' Compiler for PIC). Which uses Bulk mode transfers for the hardware we built before.

Now, do note one thing: This firmware is NOT an USB HID device, so you will need drivers for this device. USB Bulk transfer devices require writing of drivers (With the exception of Mass Storage Profille devices, which also use bulk transfer endpoints). I've included all the necessary files in the RAR archive, including the INF file, the project written in C#, and the DLL file. I've made some use of the JUNGO WinDriver library for the project files.



The pictures above explain how the device is detected and installed, it should be no problem for anyone who has installed a device on their PC before.

7 comments:

Anonymous said...

Thank for wery useful material. Can you sent code to misterdi@i.ua because I can't get file's from rapidshere.

Anonymous said...

Thank you for sharing your code! It's really very usefull material. I've downloaded it and the file usb.c (used for the PIC's firmware) is missing. Could you add this file to the archive?

Unknown said...

Hi Debu,

really a cool job. But unfortunately the file in the rapidshare seems to be corrupted. Im unable to open it.

Anonymous said...

Cool story as for me. I'd like to read a bit more about that topic. The only thing it would also be great to see on this blog is some pics of some gadgets.
David Watcerson
Cell phone jammer

Anonymous said...

Very congrats! This project is fantastic! very very congrats!

Anonymous said...

Hello!

Could you please reupload the archive?
I would appreciate it a lot!

Thank you!

Prasad Mullappilly said...

Hi,
Could you please upload the file once again.The given link is dead.

Thanks in advance,
Prasad.M