Quantcast
Channel: Cypress.com: Documentation
Viewing all 100 articles
Browse latest View live

AN58764 - Implementing a Virtual COM Port Using FX2LP™

$
0
0

Introduction

The Cypress EZ-USB® FX2LP™ is a Hi-Speed USB peripheral controller. The programmability and flexibility of FX2LP allows you to implement USB device classes such as the Communication Device Class (CDC), the mass storage class (MSC), and the human interface device (HID) class. This application note discusses the implementation of a virtual COM port device using FX2LP.


CCyUSBDevice::Reset () Function of CyAPI - KBA88964

$
0
0

Answer: No. The CCyUSBDevice::Reset () function is not equivalent to performing a hardware reset. CCyUSBDevice::Reset () triggers a USB bus reset. If you wish to execute a specific set of events on this reset, you can do it within the USB reset ISR[ISR_Ures].

For differences between the various resets, please refer to Chapter 7, “Resets,” in the EZ-USB® TRM.

Downgrading to the Older Version of the CyUSB.sys Driver – KBA87931

$
0
0

Answer: When you try to update the driver manually by pointing to the inf file, CyUSB.sys (contained in the folder where you are pointing to the CyUSB.inf) will be copied to “C:\WINDOWS\system32\drivers”.

Because “C:\WINDOWS\system32\drivers” contains a newer version of the CyUSB.sys file, you will get the warning message “The target file exists and is newer than the source.”

If you click Yes to “Overwrite the newer file?” in the Confirm File Replace window, then the older version will be copied to “C:\WINDOWS\system32\drivers”.

For more information see the attached document on how to downgrade to the older version of the CyUSB.sys driver.

EZ-USB® FX1™/FX2™/FX2LP™ Endpoints - KBA88226

$
0
0

Answer: FX1/FX2/FX2LP have seven endpoints consisting of one control endpoint 0; one endpoint 1 IN/OUT (64 bytes); and four large, highly configurable endpoints. For more information, refer to the FX1, FX2, and FX2LP datasheets, or the EZ-USB Technical Reference Manual.

Connecting the Solderable Pad of USB Hubs (CY7C65620/CY7C65630/CY7C656xx) - KBA88955

$
0
0

Answer: The solderable pad does not need to be tied to any specific electrical level, but if the customer wants it to be connected to a specific level, then it can be connected to ground.

Multiple Applications Based on CyUSB.dll Hang On Disconnection of a Device Communicating with One of Them – KBA89229

$
0
0

Answer: The cause of the problem is that both of the applications call the event handler corresponding to the disconnect event. The solution is to check in the event handler which device was disconnected.

This problem occurs because both devices are attached to the CyUSB.sys driver. The driver reports a disconnect event when either one of the devices attached to it is disconnected, calling the handler for the disconnect event. So when you disconnect a device communicating with the first application, the second application still executes the event handler for a disconnect event.

You should check in the event handler in the application if the disconnected device is the one that it was communicating with. If you don’t check, the application will execute further commands as if its device is now disconnected, which will halt, or hang, the communication.

Here is an example of the device removed event handler:

void usbDevices_DeviceRemoved(object sender, EventArgs e)
{
  USBDevice dev = usbDevices[0x04B4, 0x1004]; // if MyDevice is still connected do not stop the communication.
  if (dev == null)
  {
    MyDevice = null;
    EndPoint = null;
    SetDevice();
  }
}

MoBL-USB™ FX2LP18 Technical Reference Manual

$
0
0

The Universal Serial Bus (USB) has gained wide acceptance as the connection method of choice for PC peripherals. Equally successful in the Windows and Macintosh worlds, USB has delivered on its promises of easy attachment, an end to configuration hassles, and true plug-and-play operation.

Crystal Specification of the EZ-USB® HX2™ (CY7C65640A), HX2LP™, and HX2VL™ – KBA87625

$
0
0

Answer: For HX2 (CY7C65640A): Cypress recommends a load capacitance between 20 pF and 33 pF when a 24 MHz ± 0.05 percent crystal is used in the HX2 design.

For HX2LP: A 24 MHz ± 0.05 percent crystal can also be used in the HX2LP design, but please consider the following:

  • A 12 pF rating on the crystal
  • Parallel resonant
  • 12 pF capacitors for load caps
  • 500 μW drive; the 500 μW value is the power that is driven into the crystal. This rating is typically overlooked, with designers using 100 μW or 10 μW, which is not allowed.

For HX2VL: Refer to the Clock Requirement section of AN72332 – Guidelines on System Design using Cypress’s USB 2.0 Hub (HX2VL).


Source Code of ezusb.sys – KBA88221

$
0
0

Answer: The source code of the ezusb.sys driver is available in the folder “C:\Cypress\Usb\Drivers\ezusbdrv” after you unzip and install EZ-USB_devtools_version_261700.zip from the link CY3681 EZ-USB® FX2™ Development Kit.

EZ-USB® HX2VL™ Crystal Stopping after the Hub Out from Reset – KBA87757

$
0
0

Answer: The crystal stops operation in Suspend mode. When there is no activity on the upstream USB bus for more than 3 ms, HX2VL enters suspend mode. Therefore, when you reset HX2VL with no devices connected to any of the downstream ports, HX2VL goes into Suspend mode and the crystal stops operation.

EZ-USB® FX2LP™ Full Flag Issue with EPxAUTOINLEN<Buffer_Size - KBA89286

$
0
0

Answer: This behavior is expected when EPxAUTOINLEN is less than the buffer size. Use the programmable flag (PF) in AUTOIN mode to correctly track the FIFO status in such a scenario. Please read about the EPxFIFOPFH and EPxFIFOPFL registers in the EZ-USB Technical Reference Manual.

EZ-USB® FX2LP™ CYStreamer Firmware Does Not Enumerate on a Custom Board - KBA86725

$
0
0

Answer: The CYStreamer firmware provided by Cypress to test the throughput capability of FX2LP is specifically designed for the CY3684 DVK. The DVK uses I/O expander ICs on the I2C lines to accommodate the seven-segment LED display.

In the CYStreamer firmware, this LED display is accessed using the EZUSB_WriteI2C() function. On custom boards, such a design may not exist, so the firmware freezes and enumeration fails.

The solution is to remove this functionality in the firmware. Just comment out these two lines in the code:

EZUSB_WriteI2C(LED_ADDR, 0x01, &(Digit[AlternateSetting]));
EZUSB_WaitForEEPROMWrite(LED_ADDR);

EZ-USB® FX2LP™/FX1™ RESERVED Pin - KBA88246

$
0
0

Answer: The RESERVED pin should be connected to ground as per the datasheet. The RESERVED pin is a test mode pin. If it is not grounded, the FX2LP is placed into a test mode and does not operate correctly.

Hex2Bix Utility Tool - KBA88248

$
0
0

Answer: The Hex2Bix utility tool is typically found under “C:\Cypress\USB\bin” once the CY3684 EZ-USB® FX2LP™ Development Kit is completely installed on the computer. A detailed description of how to go about using the Hex2Bix utility is available in the readme.txt file in “C:\Cypress\USB\Util\Hex2Bix”. The source code of this utility is also in the same folder.

AN1158 - How to Switch to a Cypress Customized Mass Storage Driver in a Windows Operating System

$
0
0

Introduction

The various Windows operating systems (OS) require a USB mass storage class (MSC) device driver to communicate with a USB connected mass storage device. Windows 2000, Windows XP, and Windows Vista, all have an MSC driver built into them and do not require a different driver. While these OS do not require a different driver, users may need an added functionality, not provided in the Microsoft driver, but available in custom MSC drivers. For example, Cypress provides customized mass storage drivers. On enumeration, the mass storage device uses the OS class driver; therefore, you need to specify a different driver. This document explains how to install the new driver and switch from provided plug-and-play driver in these operating systems. This document assumes that you have a functional USB host controller, basic knowledge of the Windows operating system, and a plug-and-play driver for your device.


CY7C68001: EZ-USB SX2™ High Speed USB Interface Device

$
0
0

EZ-USB SX2™ High Speed USB Interface Device

Features

  • USB 2.0-Certified Compliant
    • Test ID number 40000713 on USB-Implementor’s Form (USB-IF) integrators list
  • Operates at High (480 Mbps) or full (12 Mbps) Speed
  • Supports Control Endpoint 0:
    • Used for handling USB device requests
  • Supports four Configurable Endpoints that share a 4-KB FIFO Space
    • Endpoints 2, 4, 6, 8 for application-specific control and data
  • Standard 8- or 16-bit external master interface
    • Glueless interface to most standard microprocessors DSPs, ASICs, and FPGAs
  • For more, see pdf


Introduction

The EZ-USB SX2™ USB interface device is designed to work with any external master, such as standard microprocessors, DSPs, ASICs, and FPGAs to enable USB 2.0 support for any peripheral design. SX2 has a built-in USB transceiver and serial interface engine (SIE), along with a command decoder to send and receive USB data. The controller has four endpoints that share a 4-KB FIFO space for maximum flexibility and throughput, and Control Endpoint 0. SX2 has three address pins and a selectable 8- or 16- bit data bus for command and data input or output.

Enumeration of EZ-USB® FX2LP™ – KBA91305

$
0
0

Answer: If both of the EEPROMs are connected, and if the small EEPROM has valid data, then FX2LP enumerates by reading the data from the small EEPROM. If the data in the small EEPROM is not valid, then it will enumerate with default descriptors.

After the power on reset, the EZ-USB® loader code initiates an I2C transfer to address 1010000 (1010 is the EEPROM class address and 000 is the sub-address). If the I2C device supplies an I2C ACK pulse, the EZ-USB loader writes a single EEPROM address byte to initialize the internal EEPROM address pointer to ‘0’. If this transfer does not return an ACK pulse, the EZ-USB loader initiates a second I2C transfer to address 10100001 (1010 is the EEPROM class address and 001 is the sub-address). If an ACK is returned by the I2C device, the EZ-USB loader writes two EEPROM address bytes to initialize the internal EEPROM address pointer to ‘0’.

Troubleshooting USB 2.0 Signal Quality - AN13632

$
0
0

AN13632 describes problems that can occur when measuring the signal quality of the universal serial bus (USB) 2.0. Its purpose is to help the designer isolate setup issues from design issues.

Serial Number Requirement in the Descriptors of Unsigned Drivers – KBA90247

$
0
0

Answer:

Problem:

When you connect the device for the first time, you have to bind it manually with its drivers. Once this is successful, the device will work fine and you can plug and play in this port. If the drivers are not digitally signed, and if you connect the device to some other port (unused port or connected through HUB), the device will appear as an unknown device. You have to bind it again to make it work properly. This has to be done for every unused port.

Solution:

This problem does not appear if the serial number in the device descriptors is a non-zero value. To avoid this problem, use a non-zero serial number in the device descriptors.

For more details refer to Enabling driver use with all USB ports.

Meaning of Error Codes in Control Center – KBA90827

Viewing all 100 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>