USB superspeed peripherals Forum Discussions
text.format{('custom.tabs.no.results')}
I have an application based on the UsbUart example. The only major difference is that I am using the alternative UART TxD and RxD pins, compared to those used on the Dev Kit.
The PC host application polls the hardware attached to the FX3 as ~1 second intervals, the response messages vary in length from a few bytes to ~120 bytes.
My problem is that occasionally return messages get "garbled". My guess is that the periodic, but asynchronous to incoming requests, "wrap up" operation in the `for (;;)` loop in `USBUARTAppThread_Entry()` with its disable/enable of the UART is causing the problem.
If I omit the "wrap up" then incomplete messages are returned, with the tail of the previous coming through with the beginning of the next, and shorter messages don't get through until (I assume) the DMA buffer is filled. I've experimented with different buffer sizes, which can help with the longer responses if larger, but makes it worse for the shorter ones.
If I omit the disable/enable, then after a while (~1 hour) the serial communications over USB lock up altogether.
I have tried making the USB to UART DMA channel "AUTO_SIGNAL" and using the notification of a CONSUME event to set a flag to expect to need to wrap up, which could later be cleared after wrap up to avoid unnecessary disable/enable sequences, but this never seems to get triggered. Would making it MANUAL work?, If so, what should the callback look like? OTOH, should I just bypass the DMA altogether, and if so, can you give me some pointers as how this should look?
I thought that this thread: FX3 : UART to USB minimal DMA size workaround might hold a solution, since the described problem seemed to match mine, but the solution suggested seemed just to point back to implementing the UsbUart example, and thus back to square one.
Show Less你好,
我们公司设计的板卡使用到了cyusb3014这款芯片,但是通过usb control center 对其I2C eeprom编程始终是失败的状态。
板卡的硬件设计默认配置模式使用的是I2C boot,配置电路原理图如下所示:
在使用USB control center对cyusb3014进行固件编程时,选择的是对I2C eeprom进行编程,但是始终是失败的状态。固件使用的cypress官方提供的slave fifo固件。错误信息如下图所示
我查阅了cyusb3014的器件手册,手册上面提到如果配置模式选择的是I2C boot模式,如果I2C模式启动不成功会自动切换成USB boot模式,然后我通过对其RAM进行固件编程,芯片是可以正常工作的,通过主控芯片对其进行数据读写也正常。
希望得到您的解答,谢谢!
Show LessHi,
Is there an application note on FX3 (CYUSB3014-BZXC) boot process which includes the external fash and the boot through USB?
I need to put multiple images in the external flash and boot from golden or updated image.
In addition to flash, I would like to boot through USB (ideally from iPhone connection, linux or windows USB is also fine)
Thanks and best regards,
California
Show LessI have trouble using FX3 in Windows 10 32-bit OS.
Using Cypress FX3 driver from SDK 1.3.4, but appears to be good only for 64-bit OS.
Would like to find the FX3 driver for 32-bit.
Please help.
Show LessHi all,
Usually, we set the HID information in FX3 FW.
Is it possible to change the HID information after the FX3 has been connected to PC?
ex: Modify the product name to "Logan" by PC.
Thanks a lot!
Hughes
Show LessMy company bought recently a Cypress Superspeed Explorer Kit FX3 for development.
Since I installed the EZ USB Suite and I’m trying to do code/firmware, the white theme starts to interfere with my eyes. So, I decided to change it to a black theme or something more darker than the white theme (the original one).
When I go to Window -> Preferences -> General -> Appearance, appears an error “The currently displayed page contains invalid valueS”. It doesn't let me chose a theme.
I searched about this problem and I saw that I’m not the only one who has this problem: https://community.cypress.com/thread/12637?start=0&tstart=0
As you can see, in 2016 someone had the same error.
I would like to know, if possible, if the error has been corrected and how can I correct it.Also, I tried to access "Eclipse Marketplace" and it appears an error "Internet Connection". I already changed Network Connections from Native to Manual and Direct but the error persists. (In my compay I have the IPV6 off).
Thank you very much!
I am using CYUSB3014-BZXI on our board. The assigned i2c pins (58,59) are used for eeprom for booting purposes. But I need another set of i2c pins for programming the other component (LED driver). Can we use GPIO pins as I2C pins? Can we select the pins randomly? which pins are supporting i2c configuration? If so, do we need any further programming to enable GPIO pins as I2C pins? it is highly appreciated if you try to help me.
Show LessHI,there.
the composite device(UVC+usb-uart ----they are all use IADs) is work in windows,but when i use it in linux ,it just only one device can work.
dmesg | tail -20
hope someone can help me to solve my doubt.
Many thanks in advance!
Show LessHi,
Recently, we encounter a problem. When the traffic on USB bus is busy, EP_IN data transfer will stuck, while EP_OUT endpoints work OK.
We were using BusHound to monitor USB communication.
When this error happened, we got an incomplete data package (lost the leading part) but no error message.
After reset the EP_IN endpoint, the IN data flow will resume, but it will happen again.
Also, we print DMA info from FX3 firmware, and got the "CY_U3P_DMA_CB_ERROR", the description of this error is:
CY_U3P_DMA_CB_ERROR = (1 << 6), /**< This event is generated when the hardware detects an error. */
Why this error happened, and how to fix it?
Show Less