USB low-full-high speed peripherals Forum Discussions
Hi,
Our FX2LP18 board is quite ready.
I would like to check with you some interrogations.
The VCCIO will be set to 1.8V.
I2C_SDA/I2C_SCL is pullup with a 1K to 1.8V.
One question, concerning WAKEUP (that we do not want to use) : DO we need to PULLUP it to 1.8V ? or 3.3V ?
We also use a LARGE EEPROM (1.8V). We will connect the A0 to 1.8V through a JUMPER. In this case, we can change the I2C ADRESS to 0xA0 by removinf the JUMPER. In this case, the FX2LP18 will not see the LARGE EEPROM ? Right ? It can be usefull in case of corrupted EEPROM, to be able to write it again using the CYPRESS VENDOR Comand.
Last question : What is the difference between IFCLK and CLKOUT if we use the FX2LP18 at the maximun 48MHZ clock ?
Regards.
Show Lesshi
i'm using CY7C68013A-56BAXC, and EEPROM in the board. i have a problem when connect the board with galaxy s9 series. some boards work properly. but other boards does not recognized. and 5v power is not supplied from mobile.
1. If the signal on the DM and connector of the connector is open, the power of the board that was not turned on is also turned on.
2. When the DM and DP signals to the connector are connected, some boards are recognized and others are not.
3. Boards that are not recognized are not powered.
Show LessHi, was following this example (FX3 Fail Safe Firmware Update ) and code but modified this code to boot to SPI.
So, firstly, what works. As demonstrated in the above example, I have separated my EEPROM into multiple sections with these hardcoded addresses
EEPROM Memory organization:
START ADDRESS | CONTENT |
0x0000 | Second Stage Boot-loader image |
0x2800 | Primary Firmware image |
0x34800 | Secondary Firmware image |
0x2600(Single Byte) | Firmware Update Byte (0x00 – Primary FW, 0xFF – Secondary FW) |
Using the Imgcombine.zip file, I made something that did not require C# and verified that it writes multiple image files into a single image file. That is, I write the Bootloader to 0x0, the Primary firmware image to 0x2800, and the Secondary firmware image to 0x34800.
I've used the Cypress flash tool to download this image to SPI
By flipping the Firmware Update byte, I have successfully used the second stage bootloader into the Primary or the Secondary firmware images.
What has NOT been successful is when I boot to the Primary firmware image and try to write a new secondary image. While running the primary image, I have a function that writes a new image that it transfers over USB and writes to SPI address 0x34800. I have verified that the SPI writes are correct (doing a read after the entire contents are written and comparing), and I have also verified that the entire 180+kB image is correctly written byte for byte into SPI starting @ 0x23800.
On reset, the software does not boot.
In stranger behaviour, when I boot to the secondary firmware (starting at 0x34800) and write the USB image to the SPI starting at 0x2800, the software hangs mid write and when power cycled, the hardware I assume has tried to boot from SPI but has done a failsafe fallback to USB. Seems like I'm overwriting the active RAM instance??
Lastly, I have used my read utilities to pull the first 200k off my SPI EEPROM. Other than the first four bytes ( 0x43, 0x59, 0x1C, 0xB0) the data between what is written on the SPI and the image that I flashed on using the Cypress utility is different!
This suggests that the SPI flash process does something to the image?
Is this documented anywhere?
What do I need to do with a compiled .img file to directly burn it to a specific SPI address and have it run?
Show LessGood day Cypress. I have a ML-605 board from Xilinx. On which your usb controller cy7c67300 ez-host is present. I found drivers, as well as some of your programs, for testing usb controllers. Such as control center, cyconsole, etc. Using cyconsole, I ran into a problem when transmitting and receiving data, because I do not have data about the "Request Code", "wValue" and "wIndex", in the cyconsole user guide, it is written that these data can be obtained from the vendor. I will attach a screenshot of the main data page and the controller. I also wanted to inquire about registers. I have written a program in vhdl for reading status, reading registers and writing data. But I ran into the problem of reading after writing to the user space registers, and in internal memory and external memory. Reading is in progress, but the data does not match the written one. As if the registers are reserved. When writing data to the mailbox, and then reading it, the port displays "DEAD", which does not allow you to check the correctness of the program. I tested the program in standalone mode. I would be very happy if you could tell me which registers can be used for writing and reading, without reserved bits. Thanks.
Show LessHi there,
Quick question regarding the CY7C65215:
I am using this device in USB-UART CDC Mode on SCB0, and USB-I2C Vendor mode on SCB1. SCB1 appears to be working fine using the I2C mode using Vendor protocol (we are using it to configure/program a CCG4 device).
The CY7C65215 appears as 3 devices in the Device Manager under Universal Serial Bus Controllers:
- USB-Serial (Dual Channel) Vendor 1 (USB-I2C Vendor Interface?)
- USB-Serial (Dual Channel) Vendor MFG (Manufacturer Configuration Interface?)
- USB-Serial Adapter (I assume this is the UART CDC Interface)
Where I'm having a problem is using SCB0 as a COM port in Windows. I need to be able to use with SCB0 as a COM port from a terminal, but I can't seem to find a way to do so. In Device Manager, which driver should I be using to be able to use this interface as a COM port? I have a number of possible folders containing USB-Serial drivers in the Cypress directory that I've accumulated through various different parts and eval kits:
- Cypress USB-Serial Driver
- CYUSB234 DVK
- EZ-USB FX3 SDK
- USB-Serial Driver
- USB-Serial SDK
Which one of these drivers should be installed to use SCB0 as a COM port?
Show LessHello
My customer is using CY7C65211A as USB-SPI master on Linux.
They have some question like the following.
When isCypressDevice() is called thru printListOfDevices(), this seem to have a memory leak.
Code | while(1) { rStatus = CyOpen(0, 0, &handle); if (rStatus == CY_SUCCESS) CyClose (handle); else printf("CyOpen Fail(%d)\n", rStatus); } |
---|---|
Log message | [ERROR]CY:Kernel driver active on the interface number 0 CyOpen Fail(4) |
Deription :
if System board is connected with good device (as Cypress CY7C65211A) and called CyOpen(),
System board seems to be good working with CyClose() as rStatus == CY_SUCCESS.
but, if System board is called CyOpen() (as No device), it seems to have a memory leak.
if CY_ERROR_DRIVER_OPEN_FAILED as return value thru CyOpen() is repeated infinitely,
They would like to know if there can be happened a memory leak as symptom. also, if yes, could you please let me know method to solve memory leak?
Regards,
Jake
Hi.
I' am using this board with Yaselan Km512 printer.
and getting this message last days :
"[401100E7] the contents of eeprom error eeprom configuration did not complete "
I think it has CY3684.
Does anyone have an idea about error message and where can I find latest CY3684 latest XP drivers.
I couldn't install it with devtools files...
Show Less有没有SPI, USB转多路UART 你们有芯片推荐吗?至少4路,请推荐下,谢谢!
I referred AN75705 -Getting Started with EZ-USB® FX3™ I followed chapter 8 My First USB 3.0 Transfer Using FX3
I have error during building the project
Regards
Esakki
Show Less