Well:
- Made a 16MB FAT filesystem in linux, copied some MP3 files.
dd if=/dev/zero of=fs.bin bs=1M count=16
sudo mkfs.vfat fs.bin
mkdir fs
sudo mount fs.bin fs
sudo cp /some_folder/*.mp3 fs/
sync
sudo umount fs
- Wrote fs.bin into a 25Q128.
- Connected as shown in the pictures, even simpler, SDO+SDI connected together without resistor.
- Sent Play command: "7Eh FFh 06h 0Dh 00h 00h 00h FEh EEh EFh"
- Audio started playing. SPI activity, 12MHz clock, transfers every 25ms.
- Queried number of files in flash: "7Eh FFh 06h 49h 00h 00h 00h FEh B2h EFh"
Response: "7Eh FFh 06h 49h 00h 00h
0Ah FEh A8h EFh", 0xA=10 files (Correct)
Attached some commands, layout for
YAT.
Actually it seems there're fakes:
https://forum.arduino.cc/t/dfplayer-play-file/468612/11