Hi,
i am new to USB communication. I am using LPC1768 and using USBCDC example to communicate. In this example it makes virtual com port over which we can send or receive data.
I am confused that com port maximum bandwidth can be known by its Baudrate that is 9600, etc etc. The question is that can virtual com port in my case have bandwidth like USB over which we can send huge amount of data i.e files and other large data. Please help me Thanks in advance.
It is possible to use many different methods to transfer data over a USB cable.
But a common implementation will use control transfers, which has a limit of max 64 bytes/transfer and one transfer per millisecond. So a maximum transfer rate of 64000 bytes/second. With 8 bits/byte, the maximum transfer rate excluding handling of handshake etc would then be 512000 baud.
With own drivers that makes use of other transfer modes, you can get higher transfer rates. The following is an example of such an implementation: www.pjrc.com/.../usb_serial.html As you can see, the benchmark indicates transfer sepeds of 1MB/s - or about 8Mbaud. A decent result from a 12Mbit/s USB link.
Thanks for answer.
The point that i got from your answer is using control transfer we can only send a maximum of 64000bytes/sec.
but i want to configure my device so that i can send data like 5 to 10 MB/s. I appreciate your effort to send me link i have downloaded the files and trying my level best to configure my device accordingly.
If you have any more data than please do send me thanks.
Well that's not going to happen over a USB FS 12 Mbps link, you'd need to start with a USB HS 480 Mbps one.
Note (b)its vs (B)ytes
Yes - 5-10 Megabyte/second is not going to happen on a 12 Megabit/second full-speed USB link.
If you really do need 5-10 MB/s, I would suggest that you consider a Linux-class solution, since you are likely to require one or more other devices to also run at these speeds. And quite probably a significant amount of memory to be able to buffer your data. So maybe a Raspberry Pi?
@Westonsupermare Pier @Per Westermark
sorry for confusing you. From MB/s i mean Megabits per second and is it possible with USB FS? What changes i require in my class USB CDC to make it operational for the 5 to 10 megabits per second? Thanks