Problem of getting 1 M sample/s has been discussed in this forum before and summarized in the "embedded.com":
The bulk transfer to the Linux described here:
Thanks for the embedded link, the author implied that one could probably get 500 ksps SAR ADC data off the PSoC using the full speed isohronous transfer. His final solution seemed to be emulating a high speed usb transfer using the digital blocks and unrolling the c code to control it by hand.
I don't think I will have to go through the same lengths as the author did in order to get the data off of the PSoC in a timely manner.
Thanks for the video about the bulk transfer with libsub. I wish I had watched it much sooner as I would have arrived to the point in time that I am at now were I now think that bulk transfers will not be appropriate for my application since they can not send at a rate any faster than 10 ms per transmission and are limited to 64 bytes per transfer. Please correct me if I am wrong about that last point :).
There is a post by 'dvorakvik' with example, which may be relevant to your question on 64 bytes length:
590 kBs transfer rate using USB CDC reported here (and some other threads):
And here is original thread for "getting 1 MSPS samples off of the PSoC" for the link above (embedded.com)
Hey! Just an update on how this has gone. I was able to get the data rate I needed using the isochronous dma transfer. I have a small lib usb program running on a PI that grabs the data and stores it as it comes in.
I might be able to post source code later is anyone is interested in seeing how I got the isochronous usb transfer to work with a lib usb applicaton.
Thanks for the help!
Please post the code example for common benefit. The question of high-speed transfer of data is commonly asked.
Bump. Is the source available?