Fast Mbed to PC transfer

13 Feb 2011

Hello

for a school project me and 2 classmates are making an USB scope. the idea is to read out an external ADC and dump this data to the PC. but we want some speed, 2 channels and a couple of MSPS (the ADC we have now can go up to 3MSPS 2 channels) the problem we have is that it kinda hard to send all that data to the PC. with a FT232 IC we can go up to 1.5Mbyte per sec. but is it possible to go faster, ethernet or something? the MBED has 3 serial ports, so with 3 FT232 IC's we can reach 4.5Byte per sec in theory but its not a nice and clean solution i think :)

anyone other ideas get a nice data troughput, optimal would be 6Mbyte per sec. its a parallel ADC and we're going to use portin to read out the ADC sh that should go fairly fast.

Rik

13 Feb 2011

I believe to reach the data rates you're looking for you'd need a USB High speed device (480Mbps). Something like a FT2232 can go upto that rate and has two channels. I believe it can also be placed into two channel FT245 style FIFO pass through mode which would probably be easier to shuffle the data at high speed. You'd also need to use FT's D2XX DLL drivers in your PC app to realize the full speed rather the usual VCOM emulator drivers.

If you used a chip like that then using a "port in" attached to a GPDMA channel (ie pass it straight from port to port or via a memory buffer) would probably allow you to reach the sort of high speeds you are after.

13 Feb 2011

the FT2232 popped in my head to, but i was wondering if ethernet would be fast enough. FT2232 is a bit harder to control then a FT232 but we can figure it out i guess :)

01 Mar 2011

USB is faster, the USB on board can be used for that. Ethernet is also fast enough but slower than USB and could cause delays depending on traffic over the network, unless a direct connection (physically I mean).

If you do USB, I recommand HID. That way there are no need for driver on PC. For Host application to talk HID device, use hid.lib from Windows DDK. It has application sample code installed with the DDK. No driver development require.

04 Apr 2011

I am also interested in moving data FROM MBED to PC, (also other way, but much slower)

So far I have not found how to make the MBED a BASIC HID DEVICE.

Does anyonk have an example program ?

I have seen Mouse / keyboard projects, but the HID is a little too diferent.

Cheers Ceri

04 Apr 2011

for our project we decided to use a FT2232H module from FTDI. its fairly simple to use, at the moment we get a speed of 10Mbyte or more, very rarely it goes under the 10Mbyte per sec.

05 Apr 2011

is that with the mbed?

05 Apr 2011

Have a look at this document from NXP. It is written for the LCP214x series but it would give you a very good idea on HID programming.

http://www.nxp.com/documents/application_note/AN10736.pdf

29 May 2011

Andy K wrote:

I believe to reach the data rates you're looking for you'd need a USB High speed device (480Mbps). Something like a FT2232 can go upto that rate and has two channels. I believe it can also be placed into two channel FT245 style FIFO pass through mode which would probably be easier to shuffle the data at high speed. You'd also need to use FT's D2XX DLL drivers in your PC app to realize the full speed rather the usual VCOM emulator drivers.

If you used a chip like that then using a "port in" attached to a GPDMA channel (ie pass it straight from port to port or via a memory buffer) would probably allow you to reach the sort of high speeds you are after.

How much work needs to be done to get the mbed working with the FT223, would I have to learn the USB protocol, or can I get something pre programmed, for high speed 480mbps data rates.