USB low-full-high speed peripherals Forum Discussions
I took a sample project and started modifying to implement a USB HID mouse. The basic functionality is working, although I would like to get the mouse wheel to work as well. The sample project did not contain the HID descriptor template for this. I tried to modify the HID descriptor using HID Template Editor, but when I edit and Apply, it disappears once I reopen again.
So, my question is how to edit the HID template (to add a new template or edit the existing one) using PSoC Designer?Show Less
I have a problem with CY7C68013A. This is the third time that my usb controller was failed and Be destroyed. I really dont know the reason. While my usb work properly and send/recive data suddenly it disconected and failed. After that when I Plug it again to PC the controller dosn't detected by host in Device manager.
could you please give me a hand and some point to solve this problem.
Is it related to the earthing or grounding ?
I would like to support multiple alternate settings for my ISO endpoind.
The question: how can I catch the standard request, in order to respond correctly to the GET_INTERFACE call?Show Less
Is that possible the CY7C68013 run a firmware larger than 8KB/16KB? How to compile large firmware code of the CY7C68013 under Keil C environment?
I want to control a LCD and a data acquisition unit by the 8051 of a CY7C68013. Due to a mass of functions for the LCD controlling, the code size of the fireware is larger than the allowed band of the Keil compiler (uVision4), which prompt that "Program Size: data=132.6 xdata=4464 code=5063, Target not created" when I build the project.
As I know, there is only 8 KB code and data RAM in the CY7C68013. Is that possible the CY7C68013 run a firmware larger than 8KB/16KB? And how? How to configure the Keil project? Pls. give me some instructions step by step.
Thanks a lot!
PS: My hardware works well with smaller firmware and a 128 KB EEPROM 24LC128 is connected with CY7C68013 through the I2C. The target setting of my Keil project is shown in the attached figure.Show Less
I need to work on CY7C68013A usb high speed micro controller. I am designing my own hardware for small test applications initially, hence I dont have the evaluation kit pack in my hands.
What is the compiler and development IDE I should use for the developing my applications on CY7C68013A controller .
I triied using Keil uvision compiler and IDE, but it throws the error
*** ERROR L107: ADDRESS SPACE OVERFLOW
LENGTH: 0016H when I tried to compile the "Bulkloop" example project from cypress.
I am using FX2LP in slave fifo mode for USB integration with the FPGA on a custom board. The USB controller works fine for small to medium transactions. If I try back to back bulk writes (each of 1M Bytes), the controller becomes non responsive. I can see the transactions being posted by the host, but the FPGA never gets any response from slave fifos. The problem suddenly disappears if I try a smaller write. Then for some time, the larger writes will work and again will run into a halt after a few write cycles.
Any suggestions what's going wrong the FX2LP ?
I have a USB device designed out of Cy7C680-13A usb high speed controller. The design uses an EEPROM IC to store the device firmware. The address lines for EEPROM is hard wired to 0,0,1 for A2, A1, A0 respectively.
Using the Cypress tools, can I download any test firmware directly to the usb controller. After testing the device with the test firmware, will the system revert back to the original firmware from EEPROM IC after a hardware reset.
How can I download the firmware through USB in case I am working on other platforms like ARM9 linux based usb hosts. ?
GIGIN JOSEShow Less
Recently I designed a small usb key using the CYC68023 IC (marked in the package silkscreen). When I plug it to the usb port in windows 7 it appears in the usb devices list, but its VID/PID doesnt match the correct ones (04B4 - 6813). Instead, it shows 04B4 - 8613... which I found it matches with the CY7C68033 IC!
The device is shown with the label "Cypress FX2 - No EEPROM (0x8613)"
Using the NX2LP programmer for the 033 part it sees the NAND IC and I can program it, but Windows isn't able to format it correctly.... any clue?
Thanks in advance.Show Less
Hello, I am currently working through Application Note 56377, and I am having some difficulty in setting up the USB drivers for the vendor and product ID's; I am working on Windows 7 x86 with PSoC 5 and CY8CKIT-001.
The error that I am continually running into is changing the product and vendor ID in the .inf file. I am following the tutorial on how to do that, but when I plug in the device, the PSoC is not detected, although my computer does detect that something is plugged into the USB port. When changing the product and vendor ID's, I am using the ones that are setup in the PSoC USBFS, provided in the Application note; is that correct? I am also following the Cypress CyUSB.sys Manual for changing and setting up the drivers. I have the latest version of the Cypress USB Suite.
I have attached the .inf as a text document if anyone is able to look over it and see if there are any errors.
Thank you for your help!
I am using Win7 + Suite USB 3.4.7 + 68013A PVX 56 + slave FIFO + (FPGA) Cyclone II,
I use CyConsole input" 1 2 3 4 5 6 7 8 9" , to EP2 , but I read "2 4 6 8" from EP6,
half data lose! anyone can help me ? thanks!
below is my firmware and verilog code:
// Called once at startup
CPUCS = 0x10; // CLKSPD[1:0]=10, for 48MHz operation, output CLKOUT
IFCONFIG = 0xE3;
// 48 MHz internal clock source, drive IFCLK, synchronous slave FIFO mode
PINFLAGSAB = 0x08; // FLAGA - EP6 FULL flag
PINFLAGSCD = 0xE0; // FLAGD - EP2 Emtpy flag
PORTACFG |= 0x80;
EP4CFG = 0x02; //clear the valid bits on ep4 and ep8
EP8CFG = 0x02;
EP2CFG = 0xA2; // OUT, 512-bytes, 4x, bulk
EP6CFG = 0xE2; // IN, 512-bytes, 4x, bulk
FIFORESET = 0x80; // activate NAK-ALL to avoid race conditions
SYNCDELAY; // see TRM section 15.14
FIFORESET = 0x02; // reset, FIFO 2
FIFORESET = 0x04; // reset, FIFO 4
FIFORESET = 0x06; // reset, FIFO 6
FIFORESET = 0x08; // reset, FIFO 8
FIFORESET = 0x00; // deactivate NAK-ALL
// handle the case where we were already in AUTO mode...
// ...for example: back to back firmware downloads...
EP2FIFOCFG = 0x00; // AUTOOUT=0, WORDWIDE=0
// core needs to see AUTOOUT=0 to AUTOOUT=1 switch to arm endp's
EP2FIFOCFG = 0x10; // AUTOOUT=1, WORDWIDE=0
EP6FIFOCFG = 0x0C; // AUTOIN=1, ZEROLENIN=1, WORDWIDE=0, INFM = 1;
input flaga, //EP2 empty flag
input flagd, // EP6 full flag
output reg [1:0] faddr,
output reg sloe,
output reg slrd,
output reg slwr,
(* noprune *)reg [25:0] counter;
assign led =counter;
assign beep =1;
reg link = 0; //link控制三态门
(* noprune *)reg [7:0]fdata_reg = 0;
assign fdata = link ? fdata_reg:8'bz;
(* noprune *)reg [3:0] state = 0;
(* noprune *)reg [31:0] recv_count = 0;
(* noprune *)reg [31:0] send_count = 0;
(* noprune *)reg [7:0] fifodata = 0;
counter <= counter + 26'b1;
(* noprune *) reg [7:0] temp[15:0];
faddr <= 2'b00;
sloe <= 0; // IDLE STATE
link <= 0;
slrd <= 1;
slwr <= 1;
state <= 1;
if(flaga == 1) // not empty
slrd <= 0;
state <= 2;
slrd <= 1;
state <= 0;
fifodata = fdata;
temp[recv_count] = fdata;
recv_count = recv_count +1;
faddr <= 2'b10; // ep6
link <= 1;
sloe <= 1;
state <= 3;
if(flagd == 1) // not full
state <= 4;
state <= 3;
fdata_reg <= fifodata;
slwr <= 0;
send_count <= send_count +1;
state <= 0;