orangecrab-fpga / orangecrab-examples

Example projects/code for the OrangeCrab
MIT License
104 stars 27 forks source link

Sending data to/from the FPGA with a ValentyUSB core #33

Open Jelvani opened 1 year ago

Jelvani commented 1 year ago

I am trying to access the W25Q128JVP flash on this board (r0.2.1) using a QSPI flash controller, but I want to confirm if there might be an easier way to do this. I want to send data to and from the board using the DFU interface, which lets me read and write to the flash. Is there an example of a QSPI flash controller that interfaces with the flash on this board, or will some existing controller such as this work? Or is there a way to interface with the DFU bootloader from within the FPGA fabric?

I don't think it's possible to write to arbitrary memory locations on the flash via DFU since this device doesn't implement DfuSe. The question I have now becomes: What is a good solution for sending data to/from the board from a host PC? There is not an FTDI chip on this board so the only solution I know of is to use a valentyusb core which I think exposes a uart interface to the FPGA. But I am not sure how to use this core without a SoC, all the examples I see demonstrate it's usage with liteX and a SoC.