Hi,
I've been trying to set up a SPI <-> USB interface between an FPGA and my PC via the nrf52840 dk. My ultimate goal is to stream 1Mbps+ worth of data, but right now I can only hit 1 kbps (bits! not bytes!). If I try to speed up the frequency of my SPI packet transfers (every spi transfer event triggers a USB transfer), then the USB outputs a bunch of corrupted packets.
I believe the SPI is working at this point because the slave is receiving all the correct packets. In addition, at intermediate speeds (200 kbps or 500 kbps) I will get some correct packets through USB interspersed throughout all the corrupted packets. I have attached a packet id to all my USB packets and it's clear that I'm dropping packets.
Are there any considerations for increasing USB throughput? I've been working out of the nordic provided USBD ACM CDC example. I've gone through some other forum posts: like this one but I'm not even close to achieving they're "slow" speeds. I'd like to hit 125 kBps (Bytes), but right now I'm stuck with 1 kbps (bits).
Any help would be greatly appreciated! Thank you in advance.
- Ryan