USB low-full-high speed peripherals Forum Discussions
text.format{('custom.tabs.no.results')}
I have to read data from Barcode Scanner (USB type) to PIC Microcontroller. MAX3421E used as a Host. I can enable to communicate with the Barcode Scanner and Enumerated successfully. But after that, I could not able to receive data from the barcode scanner when reading the barcode label. The barcode sends good-read beep when reading barcode label. In the MAX3421E datasheet, it says it will wake the MCU when it receives data from USB Peripheral thru' RWUIRQ (Remote Wake Up) interrupt. But interrupt not fired when reading barcode label. All interrupts work fine except RWUIRQ (i.e RSMREQIRQ).
Barcode Scanner works fine with PC. But we have to open notepad or similar text editor in order to receive the Barcode Value.
What could be the problem?
I have used USB HOST SHIELD FOR ARDUINO MODULE. Because it has MAX3421E on the board.
PIC MCU VCC = +5V
MAX3421E VCC = +3.3V
BARCODE SCANNER = +5V (100mA, BUS Powered), Powered from Seperate +5V Adapter.
Your help would be highly appreciated.
thank you.
Show LessMy driver works fine in Windows XP, but fails in Win7. Window shows "This device cannot start.(code 10)".
I use CY7C68013-128AC. My computer has 2 system XP and Win7 ( 32-bit ).
Driver outputs the below result. After the driver sends SET CONFIGURATION, return from IoCallDriver
USBD is wrong (c0000001).
............
Entire Configuration Descriptor is at 86127e28, bytes txferred: 25
enter XUsb_SelectInterfaces
0000 78 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0010 28 7E 12 86 00 00 00 00 60 00 00 00 00 00 00 00
0020 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00
0030 00 00 00 00 FF FF FF FF 00 00 00 00 00 00 00 00
0040 00 00 00 00 00 00 00 00 FF FF FF FF 00 00 00 00
0050 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF
0060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0070 FF FF FF FF 00 00 00 00
enter CallUSBD
Calling USB Driver Stack
XUsb_IoIncrement::3
return from IoCallDriver USBD: 0xc0000001
URB status = c0004000, status = 0, irp status = c0000001
XUsb_IoDecrement::2
exit CallUSBD (c0000001)
0000 78 00 00 00 00 40 00 C0 A8 70 D3 84 00 00 00 00
0010 28 7E 12 86 00 00 00 00 10 00 00 00 00 00 00 00
0020 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00
0030 00 00 00 00 FF FF FF FF 00 00 00 00 00 00 00 00
0040 00 00 00 00 00 00 00 00 FF FF FF FF 00 00 00 00
0050 00 00 00 00 00 00 00 00 00 00 00 00 FF FF FF FF
0060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0070 FF FF FF FF 00 00 00 00
exit XUsb_SelectInterfaces (c0000001)
exit XUsb_ConfigureDevice (c0000001)
Firmware is very simple.
{ ...............;
case usb_SET_CONFIGURATION:
Configuration = Xbyte[aSETUPDAT+2];
break;
EP0CS |= bm7
}
I would really appreciate some hints about this issue. Thanks!
Steven
Show LessI went through the driver resell process for cyusb3 for win10, and it appears to be installing and working. Excellent, thank you. However, the modified driver package that I submitted only included our company's USB devices (VID/PIDs). I would like to also add a default Cypress VID/PID to our INF so that we can easily program new/blank boards we receive. From the CyUSB.pdf this seems perfectly fine ? I wanted to check before submitting another modified package on the microsoft hw dashboard.
Specific questions:
1. Are third parties allowed to add Cypress VID/PIDs to their driver package for resell ?
2. If I can add Cypress VID/PIDs (or if I need to add our own new VID/PID), do I need to submit this new INF to cypress or can I just upload another modified driver package to the dashboard (same as initial one)?
2.a. If I need to submit an INF to cypress first, how would I go about doing that now that technical cases are gone ?
Thanks,
Erik
Show LessHi,
I have an Bulk IN endpoint with Auto-IN enabled that is constantly filled with data from the external master.
After a pause in data transfer I might want to discard the presumably old content of the endpoint buffers before I continue with the new transfer.
What do I have to write in which registers to declare the input buffers empty so that they can accept new data from the external master?
I assume this is an easy and silly question, but I have worked overnight on my previous problem and my brains feel like two soaked loafs of old bread.
Many thanks for any help!
Show LessHello,
Maximum 18 mA is specified as the total power consumption of Vcc and Vccio in the data sheet of CY8C65213.
I want to know the power consumption Vcc and Vccio separately.
Please teach me the power consumption each power-pin.
Thanks,
Shimamura
Show LessHi,
I tried to activate GPIO pins on PortA but to no avail.
My minimalistic firmware is this:
IFCONFIG = 0x03;
SYNCDELAY;
REVCTL = 0x03;
SYNCDELAY;
EP6CFG = 0xE0;
SYNCDELAY;
FIFORESET = 0x80;
SYNCDELAY;
FIFORESET = 0x86;
SYNCDELAY;
FIFORESET = 0x00;
SYNCDELAY;
EP6FIFOCFG = 0x0C;
SYNCDELAY;
PINFLAGSAB = 0x00;
SYNCDELAY;
while (1) {}
Now I want to activate PA1 and PA3 as GPIO outputs and inserted this before the while (1) {}:
OEA=0x0A;
SYNCDELAY;
CLR IOA.1
SYNCDELAY;
CLR IOA.3
SYNCDELAY;
I know, syncdelay is not really required here, but it should not do any harm.
The PA1 and PA3 pins are pulled to VCC by 22kOhm resistors and they stay high despite the GPIO pins being enabled as outputs (0x0A to OEA at SFR 0xB2) and cleared by the CLR commands.
Even if I write 0x00 to 0xB0, which should also set the output pins low, they stay at 3.3V.
What am I doing wrong?
Show LessAPI for the GPIO (CyGetGpioValue()/CySetGpioValue()) does not allow us to change the direction/drive of the GPIO pins on CY7C65211. In our system we may have a number of this USB-I2C bridge device and we want to be able to configure the GPIO direction/configuration individually on each of these bridge devices at least at system initialization. Is it possible achieve this with CY7C65211?
I see that you recommend to use the configuration utility to do so; in other posts. Do you have a Linux utility to do so? Even if there is one, it will be difficult to call it form our application. Can you please add APIs for this purpose?
Show LessHi,
From this discussion FLAGC set to not empty after TD_Init , using the same firmware.
I have a problem with this firmware, reading from EP6 (from external master), greater than 1024 cause the last buffer data to be zero.
Let's say, I need 1050 number of data to read, the first 1024 is okay, but the next data is zero.
Please be inform that external master sends PKTEND.
Thank you for your support.
Best regards,
Livie
Show Less
Hi,
I tried to build the Streamer example application from the USB Suite 3.4.7 with VS 2017 Community, but I get a lot of errors.
It does not recognize the System::Windows namespaces, expects or misses tons of declarations and so on.
Can anyone point me to a walk through guide for building these examples with VS 2017 Community?
I don't know if they are buildable with any other VS version, because I only have that one.
Thanks in advance
Show LessI only use CY7C63813,didn't have SPI chip.Move the track ball.Light pulses into the CY7C63813 by IO pin.
The direction of the motion is calculated by different pulses.The difficult is how to calculate the distance???
Show Less