Wanted to share some info I found regarding a confounding issue controlling the YX5300 MP3 board. Many Arduino users have this board. The playing order of files on the SD flash card is very confusing. The manual stays to order files as 001-xxxx, 002-xxxx, 003-xxxx and so on in numerical order. Wise not skip file numbers. The XXX can be any text -- it's ignored.
Here is the tricky part. Using Windows File Explorer on the SD flash card (FAT32) returns the files in numerical order, for this case, when displayed. However, using the Command prompt and issuing a DIR will display the files in a different order-- the order they were stored on the SD drive! When copying a mass of files to the SD store, Windows can do it in any order, not necessarily in numerical order (this example). Here is the pain point-- the YX5300 chip plays the files in DIR order. There is a lot written on this problem (hair tearing, mostly) but no solutions are suggested other than to copy one file, in numeric order, at a time to the SD flash. This is a non-starter for most people.
Of course, this problem (no hints in the manual, thank you) leads to all sorts of confusion. I found a cool utility to help here. It reorders the SD file contents so that the DIR order is the same as the Windows Explorer file display order. The output of the utility has the files in the order we want for the MP3 player to play numerically. Now file 030-xxx plays when file "30" is called to play (see command structure of YX5300 chip).
FAT-32 Sorter - CodeProject has this nifty utility. Easy to use and I use it now before loading the SD chip into my MP3 player. The code takes the DIR order and reorders to be the same as the numerical Windows Explorer order. Perfect! Thanks to Udi Cohen for coding this!