USB low-full-high speed peripherals Forum Discussions
Hi all , I use AN61345 example(FPGA with slave FX2LP). I change the clock of FX2LP from FPGA(external) successfully ,but i have problem that it seems the fifo flag is useless when I change the clock from external. I use flaga for EP2 . It work normally under internal clock. But when I change external clock , and I put data to ep2, the flaga is always empty. Does anyone have idea?
Show LessI have an older USB Had drive controller (CompUSA) that uses a CY7C68300A. When plugged into USB, it is reporting itself as USB/VID_04B4&PID8613. The 04B4 is Cypress but the 8613 is for the CY7C68013 (EZ-USB FX2). It should report as PID8630. This was observed on multiple PCs.
There seems to be no way to place the device into MFG Mode so that I could use Blaster to investigate. The only option was to lift the power and ground to the external IC2 EEPROM and hope that it would default and report its device ID correctly. Unfortunately, after doing that it still reports as a PID8613.
The documentation does not appear to say what it should report as while in Mfg Mode.
At this point it is more of a thought experiment and/or trouble shooting exercise.
Any thoughts? Counterfeit chip ?
Thanks
Show Less
Hi~
I designed a USB-I2C bridge in school with reference to the datasheet of CY7C65211,CY7C65211 is set as the master and a temperature sensor is set as the slave.
In "USB-Serial Configuration Utility", I successfully set up its configuration(program succeed).But I don't know how to send the control commands and read the data of the temperature sensor in Windows system. Please kindly tell you in detail which software to download and learn.(‘"TEST UNYILITY"appears to be able to test only data)
thanks.
Show Less
I'm using I2Cm with CY7C64315 family chip to read/write and external memory (24C64).
It works fine if the memory address is only 7-bit address.
How can I address a 10-bit memory?
The example in the documentation uses only one byte for the address.
Any advice or example are welcome.
Regards,
Anne.
Show Less
I am looking to create an application that constantly streams in from an FPGA via isochronous transfer via FX2LP.
I am writing the c# source code based on the asynchronous IO section of CyUSB.NET.pdf, as well as the c++ source code for the streamer application and the c# bulk loop source code.
The c++ streamer application provided by the manufacturer streams in correctly, but my application blue screens with a DRIVER_IRQL_NOT_LESS_OR_EQUAL stop code within a minute. (The failed content item is cyusb3.sys. The driver version is 1.2.3.20.)
Is there an incorrect description? How to fix it?
The following is an unsafe thread written in C#.
private unsafe void TransfersThread()
{
int i = 0;
int NumPkts = 8;
int NumQueue = 16;
int BufSz = IsocInEndPt.MaxPktSize * NumPkts;
IsocInEndPt.XferSize = BufSz;
// Setup the queue buffers
byte[][] cmdBufs = new byte[NumQueue][];
byte[][] xferBufs = new byte[NumQueue][];
byte[][] ovLaps = new byte[NumQueue][];
ISO_PKT_INFO[][] pktInfos = new ISO_PKT_INFO[NumQueue][];
for (i = 0; i < NumQueue; i++)
{
cmdBufs[i] = new byte[CyConst.SINGLE_XFER_LEN + IsocInEndPt.GetPktBlockSize(BufSz) + ((IsocInEndPt.XferMode == XMODE.BUFFERED) ? BufSz : 0)];
pktInfos[i] = new ISO_PKT_INFO[NumPkts];
xferBufs[i] = new byte[BufSz];
ovLaps[i] = new byte[CyConst.OverlapSignalAllocSize];
fixed (byte* tmp0 = ovLaps[i])
{
OVERLAPPED* ovLapStatus = (OVERLAPPED*)tmp0;
ovLapStatus->hEvent = PInvoke.CreateEvent(0, 0, 0, 0);
}
}
// Pre-load the queue with requests
int len = BufSz;
for (i = 0; i < NumQueue; i++)
IsocInEndPt.BeginDataXfer(ref cmdBufs[i], ref xferBufs[i], ref len, ref ovLaps[i]);
i = 0;
while (true)
{
fixed (byte* tmp0 = ovLaps[i])
{
OVERLAPPED* ovLapStatus = (OVERLAPPED*)tmp0;
if (!IsocInEndPt.WaitForXfer(ovLapStatus->hEvent, 500))
{
IsocInEndPt.Abort();
PInvoke.WaitForSingleObject(ovLapStatus->hEvent, 500);
}
}
if (IsocInEndPt.FinishDataXfer(ref cmdBufs[i], ref xferBufs[i], ref len, ref ovLaps[i], ref pktInfos[i]))
{
// Add code to examine each ISO_PKT_INFO here
}
// Re-submit this buffer into the queue
len = BufSz;
IsocInEndPt.BeginDataXfer(ref cmdBufs[i], ref xferBufs[i], ref len, ref ovLaps[i]);
i++;
if (i == NumQueue)
i = 0;
}
}
Per KBA218830, migration to 1.3.5 must be accomplished. I remember about 2 years ago there was a KBA about migration steps from 1.3.3 to 1.3.5 but I can't find it. Does anyone know what I'm talking about and know what the number is?
Show LessHi,
I am programming the CY7C68013 and using it to communicate with an external peripheral. I am able to program the basic commands (writing onto the RAM, communication between host and microcontroller). The issue arises when I am trying to use the endpoints to communicate with an external peripheral attached to the microcontroller.
I am getting the [usb.core.USBTimeoutError: [Errno 110] Operation timed out]. What is the correct method to debug it? Which part of the firmware is causing this issue?
Regards
Prerna Baranwal
Show LessHello everyone,
I'm studying FX2LP documents and application notes. most of them are stating that there is attached example code or attached files, but thers is no link or address to find the attached files, for example AN66806 "Getting Started with EZ-USB® FX2LP™ GPIF" has attached files named files.zip that contains GPIF_Clock_Divider.uv2 example i need.
any help will be highly appreciatd
Thanks in advance
Show LessI’m working on CY7C68013A in one of my projects and I’v been facing a thermal problem where controller gets quite hot when I connect the usb cable. When the usb cable is unplugged the heat seems reasonable. Any thoughts on that will be appreciated?
Show Less