Products > Test Equipment
Stream 10MB/s from PC to GPIO
<< < (3/3)
lemontree:
Thanks everyone for your suggestions. I was hoping a device like this already existed, but apparently not (likely) so.

I will try my luck with an FT2232H. Or maybe a Raspberry Pi Pico, since its PIO can do autonomous DMA transfers and I can let the main program handle the USB transfers and filling up the memory. I have no HDL skills, so FPGA is out.

@tmbinc: good point about what would happen if it data stops. When I AC-couple the loudspeaker, everything should be fine as long as the data is valid in a single byte. As soon as half the bits are off, this might be a problem. But I think both methods that I will try handle all data per byte, so I'm not worried about that.
langwadt:

--- Quote from: lemontree on July 21, 2023, 06:49:21 am ---Thanks everyone for your suggestions. I was hoping a device like this already existed, but apparently not (likely) so.

I will try my luck with an FT2232H. Or maybe a Raspberry Pi Pico, since its PIO can do autonomous DMA transfers and I can let the main program handle the USB transfers and filling up the memory. I have no HDL skills, so FPGA is out.

@tmbinc: good point about what would happen if it data stops. When I AC-couple the loudspeaker, everything should be fine as long as the data is valid in a single byte. As soon as half the bits are off, this might be a problem. But I think both methods that I will try handle all data per byte, so I'm not worried about that.

--- End quote ---

a Pico won't do it only has fullspeed USB (12Mbit/s), maybe the PRU on a beaglebone?
magic:
For completeness, Cypress EZ-USB FX2 may work too. It is often used in the opposite direction as a poor man's 8-channel 24Msps logic analyzer and boards are readily available.

You would need to read some docs, write a little bit of FW for the chip and a PC application to drive it. I suspect that FT2232H may be easier to program, though, as it doesn't need FW upload to work (IIRC).
DavidAlfa:
There're several projects controlling parallel outputs,
https://github.com/jboecker/fx2-usb-display
- I tested this, got a 3.75MHz signal at WR pin, so that's roughly 7MB/s. Probably can be optimized, specially by not using Python?

https://github.com/diamondman/fx2-usb-parallel
Navigation
Message Index
Previous page
There was an error while thanking
Thanking...

Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod