USB superspeed peripherals Forum Discussions
text.format{('custom.tabs.no.results')}
Hi,
I have been able to set up the Master FIFO example like in the AN87216 app note after modifying the usb descriptors. This solves my bulk transfer needs.
However, I want to be able to pass and read short control signals to a FPGA. What would be the best way to do this?
I believe the example code only uses two of the 4 threads you can have active. So, I made a project similar to the example but with two more endpoints to use as message in and out, without modifying the state machine yet. I am able to see the 4 endpoints in the control center. But when I try to test if the original endpoint channels work, I am able to transfer data out, but my data in transfer times out (error 997). Any idea on why this is happening.
Please email me and I will provide my current firmware files.
Regards,
Camilo
Show LessHi,
In the CX3 Denebola Eval board, how to work with registers in I2C instead of using API? For scanning the I2C bus, we need to iterate from 0x00 to 0x7F to understand how much the slave device is connected. Is it possible we can try simple code?
1. CyU3PI2cWaitForAck(API -waits for an ACK handshake from the slave) receiving CY_U3P_SUCCESS status for NAK devices too. my code will be :
CyU3PReturnStatus_t MyI2C_SensorWrite(uint8_t slaveAddress, uint16_t count, uint8_t *buf)
{
CyU3PReturnStatus_t status = CY_U3P_SUCCESS;
CyU3PI2cPreamble_t preamble;
preamble.buffer[0] = slaveAddress;
preamble.length = 1;
preamble.ctrlMask = 0x0000;
status = CyU3PI2cTransmitBytes (&preamble, buf , count ,0);
CyU3PThreadSleep(1);
if (status == CY_U3P_SUCCESS)
{
CyU3PDebugPrint(4,"\r\n buff=0x%x");
// break;
}
status = CyU3PI2cWaitForAck(&preamble, 200); //waiting for slaveAddress ack
if (status == CY_U3P_SUCCESS)
{
CyU3PDebugPrint(4,"\r\n ack");
}
return status;
}
Show Less
For some context, we have an old board that uses the older SX2 chip. We've made a new board that replaces the SX2 with an FX3 and I've written firmware to make it work. The new board works great.
The thing I'm running into now is that I have the newer cyusb3 drivers installed on the machine, but the older chip worked with older cyusb drivers. Now, I can see the old board with the device manager, and when I try to connect to it, sometimes it works, and sometimes it doesn't.
As far as backwards compatibility goes, should the old board work with the new drivers, and if so, what things can I do to make it more consistent?
Show LessHello everyone,
We have an issue with our new PCB design.
This is the first time we have used the FX3 for a new project and on some cards the PC does not recognise the FX3. We had three prototypes made, one works well and the other two have the problem.
On the boards with the problem, we have no crystal oscillation, DP and DN signals are at 2V and 2.7V but not moving, power supplies are good, reset is high, PMODEs are well connected for USB boot, VBUS is on the 5V of USB. Regarding the AN70707 document, we are in compliance except for the connector ground connection via a snubber.
Do you have any ideas for me to continue debugging?
If not :
- How can I know if my component is good (different date code)?
- On a new board, what are the first steps to do to start the FX3?
I attach the schematic in PJ.
With kind regards,
Show Less
Hi,
My UVC video reference is running at 640x480 30fps. In this case, within my understanding the bitrate is calculated as below.
640 x 480 x 16(2bytes per pixel) x 30(fps) = 147,456,000 bps = 147.456Mbps
Then, what is the maximum bitrate of isochronous endpoint running on usb2.0/3.0? It would be great if I can have a simple formula like the above.
Regards,
Rossi
Show LessHi infineon team,
I tried to use GPIO[32]/PMODE[2] pin as simple GPIO after the boot sequence in FX3 . but i am getting setsimpleconfig failed error code=0x44. I searched in the community by using below link and found that this issue is solved by some patch file. kindly provide us the same patch file.
community link:GPIO[32:30]: After boot-up, these signals can be u... - Infineon Developer Community
Note : Im using 1.3.1 SDK for this project. but in 1.3.4 also we are facing this issue.provide patch file for 1.3.1 SDK.
Thanks and regards,
Rakesh
@AliAsgar @Rashi_Vatsa @JayakrishnaT_76
Show LessHi
we are using CYUSB3035
i have build Fx3 firmware example from AN65974, build is done
but after putting .img file in FX3(sram), FX3 does not enumerate/ detect
but if we use .img file available in folder its works fine.
same with AN65974
Show Less
I am attempting to make a FX3 firmware which extracts UVC data from a FIFO populated by an FPGA, attaches UVC headers and then sends the packets to the USB host however my video data is not being consistently sent to the host. Looking at the USB bus in Wireshark I can see 1 or 2 full packets of UVC data are sent to the host but after that the FX3 seems to ignore requests from the host for more data and I am not sure why. The packets that are sent are full, so they should not be marked as EOF and I can verify that by looking at the packet's headers in Wireshark. Additionally, the FPGA is constantly outputting data to the FIFO therefore the FIFO should have data and the FX3 should be able to fill its buffers with that information and invoke the callback functions. Since the sending of the UVC data handled by a callback function, I don't think the issue is a failing API call which results in an endless loop but I cannot verify this. I am basing my firmware off the AN75779 and USBVideoClassBulk example firmwares and I am following the same setup and logic for sending UVC packets to the host. The descriptors only allow for 1080p60 and the parameter negotiation with the host seems to complete successfully.
I have included my firmware as well as 2 different Wireshark captures showing 1 and 2 packets being sent. Help diagnosing why my firmware is hanging would be appreciated. Unfortunately I do not have access to the debug logs despite them being activated in the firmware.
Show Lesshello guys,
I am new to famous cypress usb peripheral products. Now, I need to connect a FPGA to industial control board, which runs Windows Linux or Android with USB3.0 interface.
The requirement is to send FPGA raw data to control board at a speed as high as possible.
After using product selection guide, it seem that both SX3 and FX3 could meet my design, both of them has GPIF interface.
I am confused on the main difference between SX3 and FX3 product. It seems tha FX3 has more GPIO, and more general fit to FPGA design. I wonder if there's some function difference between them.
Which is best for my design requirement?
Thanks,
Jeff
Show Less