AnsweredAssumed Answered

USB Secondary bootloader for external memory

Question asked by Varun Rajendran on Jul 15, 2019
Latest reply on Aug 8, 2019 by ZhangJennie

Hi,

 

By using LPCOpen v1.03 and AN10866 LPC1700 secondary USB bootloader as reference and used example software available from NXP. The example will show the system’s flash memory as a folder in a Windows, and the user can update the flash with a binary image using drag-and-drop (e.g., using Windows Explorer).

 

The same way I done for external flash memory to show as a folder in Windows.

/* FAT12 Root directory entry constants */ 
const unsigned char RootDirEntry_LUN0[DIR_ENTRY] = {
 'u', 'C', 'O', 'N', 'T', 'O', 'L','L', 'E', 'R', ' ', 0x28,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 'F', 'I', 'R', 'M', 'W', 'A', 'R', 'E', 'B', 'I', 'N',0x20,0x18,0xbc,0x41,0x97,
0x37,0x38,0x37,0x38,0x00,0x00,0x3d,0x6e,0x2b,0x38,0x02,0x00,0x00,0xD0,0x07,0x00,
 };

 

/* FAT12 Root directory entry constants */
const unsigned char RootDirEntry_LUN1[DIR_ENTRY] = {
 'F', 'P', 'G', 'A', ' ', ' ', ' ',' ', ' ', ' ', ' ', 0x28,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
 'F', 'I', 'R', 'M', 'W', 'A', 'R', 'E', 'H', 'E', 'X',0x20,0x18,0xbc,0x41,0x97,
0x37,0x38,0x37,0x38,0x00,0x00,0x3d,0x6e,0x2b,0x38,0x02,0x00,0x00,0xD0,0x07,0x00,
 };

 

Used SPI bus as communication between LCP1769 and external flash memory.  Everything is working fine with Windows7, both system flash memory and external flash memory is showing as folder and I am able to copy and delete the binary inside the folder.

 

But when I use with Windows 10(it is not working) and try to open the folder, Windows explorer will get hang or closed without opening the selected folder.

From AN10866 document it shows it will support only till Windows9X. I want to know whether this will work with Windows 10?  For that we want to modify anything in the source code? or it is not possible to make AN10866 application to working with Windows10?

In document it is mentioned as it will support in Linux, I want to know till what version of Ubuntu it will support?

 

Thanks,

Varun

Outcomes