I'm working on a project using STM32L486RG microcontroller and using IAR 8.11 workbench IDE.
Within this project , I'm required to interface Micron raw NAND flash memory through SPI peripheral and integrate FATFS on it. Next, I was required to integrate the MSC USB class in order to be able to
visualize and manage data written on my Micron flash memory .
So, as a first step , I have succeeded integrating the FATFS and I have used ST FATFS application to validate it and it works pretty well. Then , I have integrated the MSC USB class by following the application that provides ST for Eval boards.
When plugging my board ( as mass storage device ) to Linux desktop , I have my device enumerated successfully and it shows my drive content . Through Linux (Ubunto distribution ) , I can also access the files I have created in my memory through FATFS and modify / add data in these files.
However, when it comes to windows OS , I get strange behavior. In fact, I have tested my USB MSC with 5 different Windows desktops and below are the results:
1- PC N°1 : Windows 10 ( 17.03 version ) . My drive is detected as a mass storage device but windows recommends formatting . When I go to disk management , windows 10 refreshs and the drive is correctly detected and I can then access to my files .
2- PC N°2 : Windows 7 ( don't know the version ) . My drive is detected as a mass storage device but windows recommends formatting . When I go to disk management , windows 10 refreshs and the drive is correctly detected and I can then access to my files 3- PC N°3 : Windows 10 ( 16 version ) . The drive is not detected as a mass storage device but as VCP instead .
4- PC N°4 : Windows 7 ( don't know the version ) . The drive is not detected as a mass storage device but as VCP instead .
5- PC N°5 : Windows 10 . The drive is detected and enumerated successfully but windows shows me an empty drive while I have created files in my drive.
My question : why I have such behavior with windows ? why I get my drive successfully enumerated and I can do whatever I want with my memory and my files created within ?
P.S: I shoud not forget to mention these information :
1- Memory size : 512 Mb
2- FAT Type : FAT16
3- STM32Cube package version : STM32Cube_FW_L4_V1.8.0 ( I have followed the USB_Device MSC_Standalone application found under (STM32L476G_EVAL\Applications\) )
Many thanks in advance ,