- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
After upgrading the SDK from 1.2.1 to 1.2.3, it looks like the BulkStream example firmware (1.2\firmware\basic_examples\cyfxbulkstreams) isn't responding to any In/Out transactions with NRDY/ERDY (as observed comparing the newer vs older hardware trace). The firmware's AppThread is producing debug messages 1/second, but it's like the streams I/O is messed up. With the same example build using the 1.2.1 SDK, it works beautifully. In my app/driver, with the new firmware, the HCI is reporting an XACT error, which seems to be the correct thing to do if NRDY/ERDY is missing (1.2.1 firmware is OK). I've attached screenshots of the HW analyzer trace of the working 1.2.1 firmware and the broken 1.2.3 firmware. I scanned the source of the two files side by side, but couldn't see any obvious difference that would have a functional impact.
Is there anyone running the BulkStream example firmware with the latest 1.2.3 SDK?
Thanks,
Perry
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Disabling LPM works around the issue (thanks to tech support, Harikrishnan!). Here is the edit to the example cyfxbulkstreams.c:CyFxBulkStreamsApplnStart() that fixes the issue for me:
case CY_U3P_SUPER_SPEED:
+ apiRetStatus = CyU3PUsbLPMDisable();
+ if (apiRetStatus != CY_U3P_SUCCESS) {
+ CyU3PDebugPrint (4, "CyU3PUsbLPMDisable failed, Error code = %d\n", apiRetStatus);
+ CyFxAppErrorHandler (apiRetStatus);
+ }
glIsStreams = CyTrue;
size = 1024;
break;
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thanks for updating the post with solution to your problem.
Thanks,
sai krishna.