Following the threads here: Re: FX3 SDK version 1.3.4 won't put breakpoints while running , is there a fix or workaround for this problem? The workaround suggested in the mentioned thread says to revert back to SDK 1.3.3. But as the OP in that thread pointed out, https://www.cypress.com/documentation/software-and-drivers/ez-usb-fx3-sdk-archives does not contain the Eclipse version and plugins that was included with SDK 1.3.3. Abhinav's reply in that thread says he attached the 1.3.3 SDK installer, but I don't see it. Can someone reupload the 1.3.3 SDK installer?
I am having a problem with my FX3 application where the FX3 no longer respond on the USB3 lines or I2C lines (the two ways I can communicate with it).
The test we are doing is having the host application start up, connect to the FX3, send USB reset and then normal startup actions like set configuration, do some application specific stuff, then finally close down host application. This is repeated every 5 seconds. Everything runs well until hours later, when FX3 would suddenly not respond to the host computer anymore. The host computer is running Linux and the USB driver would throw errors such as "Cannot disable (err = -32)" when the USB3 connect goes away or "Cannot set link state" when trying to restart the connection in the kernel logs. I have a separate debug through FX3's I2C lines for my application and that does not respond either. I also have the watchdog timer set, but it is not tripping and resetting the FX3 either. After the FX3 reached this state, trying to connect the FX3 to different host computers, Windows or Linux, results in the same problem where the FX3 does not respond or enumerate.
The FX3 is externally powered and AFAIK the power was/is steady when this problem occurs. The only way to get the FX3 to respond again is to toggle its reset line or do a power cycle.
Please find the attached trace captures using the Advisor T3 analyzer from LeCroy. The 14:16 trace was taken as follows:
IIRC, the 14:18 trace was similar, except steps 2, 3 and 5 were replaced with simply restarting the host computer. The host computer is running Linux and the kernel logs showed "Cannot set link state" messages.
We purchased a Terasic C5G FPGA board + FX3 Explorer Kit + Altera HSMC adapter board. According to Terasic's manual the voltage standard for the signals on the HSMC port is 2.5V. But on the FX3 Explorer Kit I can only select either 1.8V or 3.3V (with jumper J2). I already tried to find an answer in the Explorer Kit's manual but was unable to. The question is: What to do? Is the FX3 Explorer board 2.5V tolerant when set for 1.8V I/O operation? Afaik the C5G board is not 3.3V tolerant for 2.5V I/Os, right?Show Less
我们使用了TI的 TUSB501 芯片做CX3的 TX信号增强，原理图如下。
我们发现，如果用电脑的 USB3.0 接口下载固件没有问题，一切正常。
当我们使用 USB2.0 口下载固件的时候，发现刚开始枚举下载设备的时候没有问题，选择Program -> SPI flash，等待一会儿就会显示设备未发现（正常情况是可以正常弹出窗口选择固件进行下载。）
I've previously inquired in this forum regarding GPIO sampling synchronous to some other signals with the following timing diagram:
Luckily, someone sent an example firmware (firmware code + GPIF state machine code) which I'm currently using to fully understand and implement the desired mechanism on my board. I just have some questions because there are some items that aren't clear to me even now:
1) I tried getting data using control center and when using one endpoint (0x82), i get a simple loopback. On the other hand, when I use the other endpoint (0x81), I get the following results:
I'm unsure of how to make sense of the received data because based on the timing diagram, I am expecting a 32-bit / 4 byte data.
2) I tried using the firmware and unlike the previous firmware codes I've used, it seems that I'm able to use "transfer IN" even without doing a "transfer OUT". How can I make sure that the data I'm receiving is correct or updated? Because the data might be a duplicate or incorrect.
As of now, these are some things that I need clarification on with regards to the GPIF. Attached here are the files sent to me by one of the engineers from this forum who initially responded to my inquiry.
Thank you for any help you might extend.
Through different questions already asked on your website, we have been able to solve majority of our issues.
However, for the custom we are currently developing, we cannot have the USB3.0 interface working.
We would like to solve this issue in the next iteration of our custom board by understanding what is preventing us from using the USB3.0 interface on this very design.
To avoid you some extra questions, I have resumed most of the things we developed, tested and probed.
As a potential important point, the onboard clock is 19.2MHz and not 24MHz.
I'm absolutely available if you need any more info or if you want me to test something else.
My colleague @cam will also follow this topic and answer your potential questions.
I'm trying to implement a timer on FX3 to measure the length of time for which an input pin (button) stays low. I want to configure the GPIO pin of the button as a Complex Gpio.
I tought that the best option for me would be to configure the pin mode as:
gpioComplexConfig.pinMode = CY_U3P_GPIO_MODE_MEASURE_LOW;
However, this way I am not able to understand where could I see the time measured, as "CyU3PGpioComplexSampleNow" can be used ONLY with CY_U3P_GPIO_MODE_STATIC.
Does anyone have any suggestion? ThanksShow Less
Some settings in my design as follows:
DMA buffer: 16KB(size)X 2(number)
In my firmware:CyU3PGpifSocketConfigure (3,CY_U3P_PIB_SOCKET_3,6,CyFalse,1);
When fpga side transfer a short package(32B) to the host,the fisrt 4B data has losed，and the last 4B data was 00-00-00-00.The timing sequence as show in the picture named fpga.png.And the result of host recevied as show in the picture named host.png.The short package that fpga transfered is"0xcc88bb77 0xffff1007 0xffffffff 0xffffffff 0xabcdef01 0xabcdef01 0xabcdef01 0xabcdef01".And the data recevied by the host is" 0xffff1007 0xffffffff 0xffffffff 0xabcdef01 0xabcdef01 0xabcdef01 0xabcdef01 0x00000000".
what's wrong with the code?What is your advance?Show Less
FX3 Slave FIFO active edge can be set by firmware. If I set,for example, negedge as the Active edge,does it mean both read and write operation use negedge?Show Less
I'm trying to stream 1080P MIPI Raw 10 image sensor . I if configure the MIPI transmitter section and receiver section for 1080p 30 Fps There is no problem in receiver side and It streams correctly. When I done this for 60 FPS I cant change the the output pixel clock in receiver configuration and it shows minimum is 129 and maximum is 100 even if my output video format size is 24-bit.
my camera can support 8/10/20 bit raw output of Bayer format and both continues and gated MIPI clock mode.
Kindly suggest me some settings for 1080P 60 fps.