When setting up a USB Storage Device, do I have to use FATFS or can FileX be used? FileX supports FAT32 & exFAT so it should work, right?
Also, I cannot find a USB Storage Device example anywhere, any pointers?
I found this Configuring CYW943907AEVAL1F as USB device but it has a scary ending: "Note: The USB Device functionality does not work for device classes (For instance, mass storage class) that use a transfer data length which is a multiple of the maximum packet size. Currently there is no workaround for this issue. The issue is being investigated and will be updated once there is a solution or workaround identified"
Solved! Go to Solution.
There are no sample examples for USB Storage class in WICED right now. The device can be configured as a USB device as shown in the blog post but there are issues only when the host requests data in multiples of maximum packet size from the device. If the data requested from host is not in multiples of maximum packet size, there wont be any problem in USB transfer.
We are working on a fix which will allow to send data in multiples of Max packet size.
FYI: If you are looking for mounting filesystem on 43907, you may have a look at this blog: “snip.sd_filesystem” Application in Wiced Studio
Thank you for the input. Does the "multiples of maximum packet size" issue apply to all USB device classes or just MSD? I.e. can I get around it by using MTP or CDC-ACM?
Is there a Cypress combo solution with separate WiFi and USB chips to achieve the desired functional performance? This may be an option if space isn’t a concern until a single chip solution is presented.
This fix for sending multiples of maximum packet size will be part of the next WICED release.
It is not specific to OS. It is related to the requests from USB host. If the host requests data is multiples of maxPacketsize, then the error would occur.
I was hoping for anecdotal info to see if we can limp along until the next SDK release.