USB superspeed peripherals Forum Discussions
Basically the title.
I needed to upgrade one of my older projects using FX3 CyAPI to build on x64 and I only had CyAPI/SuiteUSB for 32bit.
So I go to download the SDK and it comes in a .exe. Okay, dumb, but I can deal with this.
Fired up a Windows 10 VM and ran it.
---------------------------
Setup
---------------------------
FX3 SDK requires Microsoft .NET Framework 3.5 or above.
Please use Windows Update to install this version,
and then re-run the FX3 SDK setup.
---------------------------
OK
---------------------------
??????????????????????
What year is this? I have Windows 10 which COMES with .NET <someversion I don't give a crap about>.
But not THREE DOT FIVE BEACUSE THATS T W E N T Y years OLD.
TWENTY!
No Software offered for download in 2023 should require 20 years old FRAMEWORK TO INSTALL, ESPECIALLY IF ITS a SDK which is made for MODERN COMPUTERS.
Honestly, I don't even know if I *have* a computer of VM with .NET 3.5 because well IT MAKES NO SENSE TO HAVE THIS STUFF.
Please make the SDK a normal ZIP file and stop trying to make me download shitty installers. Thanks.
Show LessHi,
We have received the FX3 10 Gbit devkit from Infineon, and we are planning to start the evaluation of the same. We need a datasheet, SDK, source code, etc. Please do the needful as soon as possible.
Thanks, in advance,
Vigneshkumar R.
Show Less
Could you please provide 100-ball BGA of HX3 reference schematic to us ?
Hello,
I want to communicate with an MCU (e.g. Arduino) from the FX3 virtual com port. To do this, I have followed the usbuart example from SDK, and that one indeed worked, as the FX3 serves as a USB-UART-Adapter where I can send and receive messages from the Arduino.
Now I want to have one more feature, which is to print the message from the FX3 itself from the serial monitor as well. It could be either from the same COM port or create one more COM port. But I am not able to get the messages from FX3 and Arduino both to the serial monitor, after few tries I am only able to either print the message from Arduino or from FX3 to the serial terminal. I guess it is because the the UART consumer socket (CY_U3P_LPP_SOCKET_UART_CONS) is used by the DMA channel USB->UART (i.e. glChHandleUsbtoUart in the code), as mentioned in the KBA229813
Is there any suggestion to achieve my goal? Appreciated your help!
Best
Zhangshun
Show LessHello,
I am currently working on a project where continuous data from a 16-bit parallel output ADC, operating at 100 MHz, is received by FX3. This data is transmitted without any processing or modification to the USB host application. Here are the project details:
- ADC Output: 16-bit parallel data
- ADC Clock Rate: 100 MHz
- Data Transmission: FX3 receives and transmits data without processing
and project internal parameters:
- DMA Buffer Size: 16384 KB
- Threads: 2
- Input Data: 16 bits in parallel
- External Clock: 100 MHz
- Input Signal: 15 MHz sinusoid
- DMA Mode: Automatic
- Data Streaming Host Application: USB analyzer (capture and export data) and Cypress Streamer (Start / Stop button)
If you need further information or assistance, feel free to ask.
I started with the GPIFtoUSB default example and then added the following modifications:
- added additional thread (Ping Pong scheme)
- added wait state W0 and W1 as seen in https://community.infineon.com/t5/USB-superspeed-peripherals/FX3-ADC-Read-Missing-Data-Using-Two-Threads/m-p/437189?profile.language=en
- manually changed CyU3PGpifWaveData alpha bits as follow:
I also tried to change the value of the internal counter: 8192 or 8191 (tried also 8190 but stream stops working).
The problem is the following:
every 8192 samples I'm missing data as is it possible to notice in the picture:
I read different topics regarding missing data with 2 threads but I'm still unable to get the proper data flow with my basic project.
As attached file is possible to find the State machine and entire project.
Thanks for the helps,
Regards
Hello there,
may I ask how the CX3 is reconstructing the test point signals (H8, G6, H5) from the received MIPI sensor signal?
My assumptions was that H8 will be clocked constantly with the configured PCLK (e.g. 72MHz) and the following (e.g. for the VSYNC signal):
Once CX3 received the MIPI start-of-frame packet it will drive H5 high and once it received the corresponding end-of-frame packet it will drive this pin low again. So that VSYNC signal should stay high for the complete frame and low during blanking, is this assumption correct?
Because we are currently debugging one of our sensor applications on the CX3 Denebola board and streaming via USB seams to work fine, but when we are probing the H5 signal we sometimes once a frame has ended and the VSYNC signal has been already released again, see an additional very short pulse on this VSYNC line. So we are wondering if this is normal or maybe our CX3 MIPI receiver is not 100% correctly configured.
Maybe someone within inside knowledge can explain a bit how the test point signals are derived from the MIPI signal and how they should look like.
Thank you.
Best regards
Hello,
I tested this example project to build a continuously streaming high-speed parallel to USB3 interface:
Unfortunately I noticed that no matter the samplerate the signal is interrupted after every 32KB (tested on two different PCs). Am I doing something wrong? Is this just a general limitation of the FX3 controller or is this a bug/missing feature in the logic analyzer project?
Best regards
Show LessHi, everyone!
Currently, my development board uses the cypress 3014 chip and uses UVC output. However, after the program runs, the device can be recognized on Windows systems, but it can't be recognized on Linux systems. And I am using Ubuntu as my Linux system. What could be the problem? Do I need to modify the cyfxdscr. c file? Could anyone provide some suggestions?
Best wishes.
wind13
Show LessHello,
Now I am using the cyfxusbhost sample program to test the function of cyusb3014 as a host. When I connected the USB flash drive and typec port, I failed to enumerate the USB flash drive device successfully. May I ask what the reason may be? (I also tried to connect the mouse to the host port, but failed to enumerate the mouse device successfully)
Thanks.
Show LessHello
I have a custom CX3 control board (CYUSB3065 chip) that connects to the OV5460 camera using an I2C EEPROM (ST M24M02).
This test uses the routine "cycx3_uvc_ov5640" from FX3 SDK 1.3.4 as is. After compiling and downloading to RAM, the camera image can be obtained successfully. However, if you download the compiled image file to the EEPROM, the system will not be able to boot from I2C, regardless of whether the PMOD is set to Z1Z or 1ZZ.
Use a logic analyzer to test the I2C signal. You can read the data of the first frame at the start. Compared to AN76405, the read data is correct. But oddly enough, the I2C interface stopped working after that.
The logic analyzer tests the I2C signal as shown in the attached figure.
Are there any settings in the routine that affect I2C activation? Does it affect the launch of I2C?
Best regards!
Liu Qimin
smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/USB-superspeed-peripherals/CX3-I2C-startup-failed/td-p/630162
smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/USB-superspeed%E3%83%9A%E3%83%AA%E3%83%95%E3%82%A7%E3%83%A9%E3%83%AB/CX3-I2C%E3%81%AE%E8%B5%B7%E5%8B%95%E3%81%AB%E5%A4%B1%E6%95%97%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F/td-p/630171
Show Less