This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP430 USB MSC has 64kB file size limit in XP SP3

Other Parts Discussed in Thread: MSP430F5510

Using code almost identical to the SDCardReader MSC example on the MSP430F5510 (just modified to use a serial flash memory instead of an SD card), everything works fine on Windows 7 and Windows 8.1. I can format it as FAT, and read/write any size of file. 

I tested it on an XP Pro SP3 computer, hoping it would be compatible on there as well. It appears to be able to read files fine, but I can only write files < 64kB, or it will fail with a "path too deep" error. The problem is clearly not that the path is too deep, since it is unrelated to the length of the file name or folder I put it in. Using a USB monitor (USBlyzer), I can see that it fails with "USBD_STATUS_CANCELED" after transferring the first 65536 byte block. It repeats several times, with the same error. On Windows 8.1, the status is "USBD_STATUS_SUCCESS" after that same block. I cannot see any other obvious differences in the USB trace.

Does anyone have any ideas what would cause this?

Thanks!

Malcolm

  • I fixed it :). Turned out the problem was my write timing was too slow due to how I was buffering the data (the flash memory's erase sector size is > the available MSP430 RAM, so I had to place an additional buffer on the flash memory to hold previous data while a sector is being erased). XP must have been timing-out since 64kB was taking too long to write. I streamlined the buffer to erase a larger area less frequently, and it now works with windows XP, 7, and 8.1.

**Attention** This is a public forum