USB superspeed peripherals Forum Discussions
Hi all,
I have observed that the FX3 driver installed with SDK is not completely having the driver for "Cypress USB BootLoader" the default bootloader running with FX3 with VendorID="04B4" and ProductID="00BC" . I have opened the driver "cyusb.inf" file present inside the driver folder of FX3 SDK installation location, I did see that the PID of Bootloader is mapped to "00F3". If this value is "BC" instead of "F3", device is detected properly. So, Please let me know if there is cypress signed driver with BootLoader assigned to "00BC" or any other suggesstions for solving this issue is also welcome.
Thanks,
KCNGP
Show LessWhen using DmaMultiChannel, MANY_TO_ONE (2 producers, one consumer, 2 sockets) I set the dmacfg.count = 4. Does this allocate 4 DMA buffers, or is it actually allocating 8 buffers because of the MANY_TO_ONE configuration?
Show LessHi,
I'd like to know how much memory the FX3 hardware-driver uses from the 512KB SRAM-size (besides the 12KB initial stack and DMA-descriptors)? So how large is the code- and data-size and how much heap and stack is roughly used by the driver?
I want to roughly calculate the remaining memory size which can be used by user-specific firmware.
Regards,
Robert
Show LessI have created a new project from and exisitng project which is now being used on almost identical boards but they need different PIDs. So I am wanting to create a command line build where I can pass a different define that will build the file with a different PID. This way when I have bug fixes and upgraded, I can test it on one and then just run the command line which will force muiltiple builds and create a img file for each of my boards.
Where do I find any documentation of doing a build via a command line?
Ken
Show LessOur application requires 16 GPIF data pins for reading from a peripheral device and 4 GPIF data pins for writing to the peripheral device. Unfortunately this means the GPIF must be configured in 32-bit mode because of those 4 extra data pins (24-bit mode appears to not be an option currently). This means that during every read event, we must transfer 32 bits, only half of which (the lower half) contain valid data.
We want to transfer this 16-bit data as rapidly as possible over USB to our host. What is the fastest way to strip out those upper 2 bytes to avoid doubling the size of our data transfer?
Can the GPIF be placed in 16-bit mode for the data readout phase, and back to 32-bit for the write phase? If so, can this be done on the fly, or would separate state machines need to be loaded?
Alternatively, the CPU could perform the byte stripping or memory remapping, but this could add substantial latency to the overall data transfer to the USB endpoint.
Any suggestions? Thanks in advance.
Show LessHi,
I have merged the bulkloop and the i2c exemple together. When i EEPROM_WRITE i made those line of code so i can see what is being transfered to i2c which works fine.
status = CyU3PUsbGetEP0Data(wLength, glEp0Buffer, NULL);
taille=sizeof(glEp0Buffer);
for(i=0;i<taille;i++) CyU3PDebugPrint (1, "%x",*(glEp0Buffer+i));
I made 7 endpoint (1 EP0 for I2C and 6 for bulkloop kind of tranfer) Now i want to see what is tranferred in the endpoint BULKLOOP by the debug interface. I conected 2 endpoints to 1 DMA socket 3 times. (i need all those EPs my API need it)
My goal here is to
-receive a structure of data from one endpoint which will be sent from the host.
-Do what the data has to do (read eeprom, write eeprom, i2c communication, ect..)
-send informetion to the host
My biggest concern is that i cant see what is in those endpoints can anyone tell me the function to acces this memory.
Show LessHello
I hope to boot EEPROM using I2C, so I want to program to EEPROM. but It can't.
I build for release mode. and I follow the Program section in CyControlCenter.pdf. but the message is "Programming of I2C EEPROM Failed" I don't know why the message printed.
I attached a fail message and properties of img file.
Thank you.
Regards.
Show LessHi,
I want to customize the USB device name. For example, when download the firmware into FX3, it will be shown as "Cypress USB StreamerExample" in control center, can I know how to customize this name in the firmware code?
Thanks.
Zoe
Show Less