USB superspeed peripherals Forum Discussions
Hello,
We are developing custom board with FX3. We took as example SuperSpeed Starter Kit schematics
In both modes I2C boot to USB fallback and USB boot devices enumeration occures: VID=0x000, PID=0x0002.
Currently our I2C EEPROM is empty.
So far we checked:
- AN70707
- AN76405
PMODE[2:0] checked:
- Z11
- 1ZZ
- Z1Z
Also external crystal is OK - 19.2MHz
All VDD, VIO, etc.. also good
Is there anything else that should be checked?
Thanks
Show LessHello,
I wrote a C# application co interface with my Cypress FX3 camera.
To see the video stream, i'm using Aforge and for the command I use the using CyUSB library.
Do you have a sample code in C# that I can play the video instead of Aforge?
Thanks,
Ofer.
Show LessHi,
we using the streamer SDK and we want to understand the meanings of the following failures :
we want to distinguish between the failure types that marked in yellow and red.
we can see that the failure that mark in yellow is depended on the each pkts
also with the failure that marked with red, we tried to understand the FinishDataXfer function and what is failure criteria? what this function actually does?
Show LessHi,
I connect my FX3 card to USB port, it shows FX3 in device type. after programming .img file, it recognize my device type as FX2 in cyusb_linux. why? I attached the screenshot.
CY68013 uses the BulkInEndPt function to read the buffer. It seems that it can only read 512 bytes or more. For example, what should I do if I want to read 128 bytes? Is it a short package submission?
Show LessHi All,
I am working cypress FX3. I changed clock setting in GPIF designer to internal clock. I just modified Clock settings in GPIF II Designer.
and CyU3PPibClock_t is initialized like below..
pibclock.clkDiv = 2;
pibclock.clkSrc = CY_U3P_SYS_CLK;
pibclock.isDllEnable = CyFalse;
pibclock.isHalfDiv = CyFalse;
But, I could not probe the any signal..
How can I set FX3 firmware about Internal Clock.??
should I changed Any other sources?
please give me some advices..
Thanks
Best Regards,
Ted Lee.
Show Lessi try to set a GPIO as an input pin with pull-up internally in FX3. but it is failed. i don't know how to set GCTL_WPU_CFG register in firmware.
who can give me any comments? thanks a lot. ! !
Show LessI would like to change USB mode between USB 2.0 and 3.0 base on SDK 1.3.4 demo module " cyfxbulklpmandcache" , but it cannot be successful.
It always return error.
Could you help me with it? Attached file is for your reference.
Very appreciate.
Show Less
I use test host application provided in the following link.
https://community.cypress.com/message/142801#142801
I didn't change the UVC extension part in uvc.c and cyfxuvcdscr.c files. UVC_EXTENSION_UNIT is enabled in uvc.h file. The test host application works well with the AN75779 UVC firmware in terms of set and get complete firmware version.
Now I am trying to implement SPI read/write sensor registers through UVC extension.
cyfxuvcdscr.c file, UVC EXTENSION UNIT descriptor is modified to be
#ifdef UVC_EXTENSION_UNIT
/* Extension Unit Descriptor */
0x1C, /* Descriptor size */
0x24, /* Class specific interface desc type */
0x06, /* Extension Unit Descriptor type */
0x03, /* ID of this terminal */
//static const GUID <<name>> =
//{ 0xacb6890c, 0xa3b3, 0x4060,{ 0x8b, 0x9a, 0xdf, 0x34, 0xee, 0xf3, 0x9a, 0x2e } };
0x0C, 0x89, 0xB6, 0xAC, /* GUID specific to AN75779 firmware. Obtained from Visual studio */
0xB3, 0xA3, 0x60, 0x40,
0x8B, 0x9A, 0xDF, 0x34,
0xEE, 0xF3, 0x9A, 0x2E,
0x02, /* Number of controls in this terminal */
0x01, /* Number of input pins in this terminal */
0x02, /* Source ID : 2 : Connected to Proc Unit */
0x03, /* Size of controls field for this terminal : 3 bytes */
0x03, 0x00, 0x00, /* Controls supported */
0x00, /* String descriptor index : Not used */
uvc.h file add wvalue for SPI command
#ifdef UVC_EXTENSION_UNIT
/* Extension Unit Terminal Controls specific UVC control selector codes */
#define CY_FX_UVC_XU_GET_FIRMWARE_VERSION_CONTROL (uint16_t)(0x0100)
#define CY_FX_UVC_XU_SPI_COMMAND (uint16_t)(0x0200)
/* Customer specific controls can be added here */
#endif
But I am not sure on how to modify the function below to match like to identify read/write in the following function. There are 2 sensors needs be be configured using SPI. For example, SPI write sensor 1, register 0x02 with value 0x0001,
SetGetExtensionUnit(xuGuidAN75779, 2, 2, flags, (void*)SPIparameter, 3, &readCount),
in UVCHandleExtensionUnitRqts () function, bRequest value is used to identity which sensor, read/write operation. How the parameters in the above function is related to the bRequest value?
case CY_FX_UVC_XU_SPI_COMMAND:
switch (bRequest)
{
case CY_FX_USB_UVC_SPI_SENSOR1_WR: /* write to sensor 1 */
apiRetStatus = CyU3PUsbGetEP0Data (CY_FX_UVC_MAX_PROBE_SETTING_ALIGNED,
glEp0Buffer, &readCount);
if (apiRetStatus == CY_U3P_SUCCESS)
{
/* Copy spi parameters sent by Host application */
CyU3PMemCopy(glFxUvcSPIbuf, glEp0Buffer, 3);
}
CyFxSpiWriteReg2B(RegAddr,RegVal)
break;
case CY_FX_USB_UVC_SPI_SENSOR1_WR: /* read from sensor 1 */
CyFxSpiReadReg2B(RegAddr, rd_buf)
CyU3PMemCopy(glEp0Buffer, glFxUvcSPIbuf, 5);
sendData = CyTrue;
break
If it is the flags parameter, how to use it? for KSPROPERTY_TYPE_SET | KSPROPERTY_TYPE_TOPOLOGY ?
Thank you in advance.
Show Less