USB superspeed peripherals Forum Discussions
Hello,
We have designed our own board: AD->FPGA->FX3. We capture data using AD and send the sampling data to fx3 via FPGA. We followed the application note AN65974 using 16 bits width GPIF interface and set the watermark to 3. While we transmitted the data to fx3, the DMA buffer is full and the flagb goes low periodically. Then the data transmission paused and the continuously input sampling data got lost. Please see the attached file. I want to know how to stream in the samples without losing data, using two DMA buffers? two threads? It seems that sampling the state of flags will cause latency too. Please give me some advise.
Show Less
Hello,
I'm using an 8bit grayscale scale sensor connected to an FPGA that adds 8bit of U/V values set to 0x80 (no color).
The 16bit from the FPGA is connected to the FX3.
My firmware is based on the AN75779 example and everything works well (with my C# application or VLC player) except for one thing.
The problem is: Every software I found converts the YUV to RGB with a conversion formula like this:
Y -= 16;
U -= 128;
V -= 128;
R = 1.164 * Y + 1.596 * V;
G = 1.164 * Y - 0.392 * U - 0.813 * V;
B = 1.164 * Y + 2.017 * U;
Because my image is grayscale, U and V are zero so I get Y multiplied be 1.164.
This cases values larger then 255 (?!?!?!) and when I look at the image histogram I see values of 7, 14, 21, 28, .... are at zero in the pixel count. (6 * 1.164 = 6.984 and 7 * 1.164 = 8.148).
I want my camera to be a standard UVC camera.
How can I solve it at the firmware level?
Ofer.
Show LessHi,
I'm thinking about using CX3 with the following sensor module.
https://www.waveshare.com/imx219-83-Stereo-camera.htm
is it possible to use it with CX3 ? For a resolution Ultra HD from two sensors ?
Show LessHi Cypress
Whether CYUSB3065 CX3 can support S25FS128SAG and S25FS128SDS for SPI SDR and DDR mode ? Can we use S25FS128SAG or S25FS128SDS with CYUSB3065 ?, If it can work , How about the SPI speed (If SPI speed is 33mhz)? Thank !!
Show LessI have a CYUSB3KIT connected to a Xilinx KC705 eval board. I updated the AN65974 app note to work with Vivado 2020.1. I build slaveFIFO2b_fpga and the image seems good.
So my issue:
I seem to be able to do the loopback test fine. I send a file, and then I can receive the data back using the USB Control Center. I then continued with the examples in the AN65974 app note and could not get BULK IN to work. Here are the steps I do.
- Power up the FPGA with the switches all set to zero (I am using SW11 on the KC705)
- flash the RAM on the FX3 to use the pre-compiled SF_streamIN.img
- flash the KC705 with my slaveFIFO2b_fpga
- set the switch to be OFF, OFF, ON, ON (FPGA continuously writes full packets)
- In the USB Control Center I hit the "Reconnect Device" button so that the FX3 is in the BULK IN mode
- IN the C++ Streamer app, I select the Cypress FX3 USB StreamerExample device and choose the BULK IN endpoint
- I set the packets for transfer to be 128 and the transfer to queue to be 32 (just like the app note) and click start
- All I get is failed packets:
Following the same steps (still using the same img file for the FX3, but setting the jumpers to OFF, ON, OFF, OFF and choosing BULK OUT in the C++ stream seems to work great:
So what am I missing? I checked and the PMODE flags are toggling as they should as I flip the different switches. I am not sure what else I should be looking into next.
Show LessWe're trying to figure out the proper way to connect a USB Type C connector to an EZ-USB FX3S SuperSpeed USB Controller (CYUSB303X). The dev kit schematic has a Type B connector, which is simpler than a Type C. The latter has pins for four differential pairs, and it has CC pins, among other things. The FX3S has only two differential pairs. I believe that we would just connect the FX3S Rx and Tx pair to the corresponding pair on one side of the connector, i.e. pins A2/A3 and B10/B11. What I don't know about is how to handle the CC pin next to the pair. The FX3S doesn't appear to support the Configuration Channel, but my understanding that negotiating the transfer mode via CC is important. How is this handled?
Thanks,
Scott
Show LessHi, I'm using the Denebola CX3 RDK with the image sensor OV5640 and the standard firmware.
Can you explain me how I can grab a still image (for example one image per second) in the firmware and process the RGB data directly on my own? What do I have to change in the standard firmware? Are there any examples?
Thank you in advance!
Show LessUSB3 vision is used for camera on a FX3 solution. the DSI stream DMA callback method has been able to send picture packets successfully. According to USB3 vision protocol, the leader packet must be sent previously. how to do it with DMA?
If the DSI stream DMA channel is used to sebd leader packet in method CyFxUSB3VisionDSIDmaCallback, its buffer contains the valid pixel data. if the leader packet is copied into current DMA buffer, this buffer of pixel data lost. if the method CyU3PDmaMultiChannelSetupSendBuffer is used with a specific DMA buffer to send out leader packet, it always failed to do it. should I use a specific DMA channel to send leader & trailer packet?
Show LessDear support team,
On our next project we need to perform some pre-processing of the image before sending it over USB to the host.
Where can I find information about clock-cycles of the processor operations? like bitwise, or, and etc..
In addition, just to be sure - the cpu clock is 200Mhz without option the change it. Am I right?
Omri.
Show LessHi,
Our new costume image sensor will interface the CX3.
The sensor is able to output any windowing size up to 1300x1000.
As I understand, I need to pre-set the configuration in the "CX3 configuration" tool and it will create a files with the relevant structures (CyU3PMipicsiCfg_t type)
Is it possible to change resolution on-the-fly to a new one that didn't pre-set?
Omri.
Show Less