Using SD cards with capacity >32GB
-
TL/DR: This may be old news to you, but you can format SD cards larger than 32GB, up to 2TB, as FAT32 volumes, and they seem to work on Duet boards. MacOS and Linux can do this natively, Windows users may need this utility: http://ridgecrop.co.uk/index.htm?guiformat.htm (Edit: apparently Windows 11 now allows you to format FAT32 to any size SD card, not limited to 32GB. Not tested.)
If any user is already using large capacity SD cards, your feedback would be appreciated!I've been modding an old Nintendo Wii, to run games from a USB memory stick. The Wii, like Duet boards, has the 'no drives formatted with FAT32 greater than 32GB' limit... except it's now well-known in the retro gaming community that this doesn't apply, and larger drives of 128GB, 256GB, and even larger USB hard drives up to 2TB work without issue. That's because the FAT32 specification actually supports drives up to 2TB, it's just that the Windows format utility limits the size you can format a FAT32 volume to 32GB for... 'reasons'. Any larger and it foists the proprietary exFAT format on you, that many systems don't support. As it turns out, MacOS and Linux users have been happily formatting USB drives larger than 32GB as FAT32 for ages, without really noticing this limit! These drives are also happily read by Windows.
The same applies to SD cards. The Duet wiki currently recommends SD cards of 32GB or less, or for larger cards to have the first partition be a 32GB FAT32 partition. From what I've learnt from the retro gaming community, I wondered if this was true. I bought a SanDisk Extreme 128GB SDXC card, U3, V30, UHS-I, A2 card, for £14.49 from Amazon. It arrived formatted exFAT, and was not recognised in RRF (3.5.2 on Maestro), with a nice error message:
Error: M21: Cannot mount SD card 1: no FAT filesystem found on card (EXFAT is not supported)
I formatted it on MacOS with the system formatting tool (I expect Linux and the Windows utility I found would be the same) to FAT32, and it works!
M39 SD card in slot 0: capacity 127.87GB, partition size 127.82GB, free space 127.54GB, speed 15.00MBytes/sec, cluster size 32kB
Quick speed test (Maestro, so interface speed: 15.0MBytes/sec):
M122 P104 S10 Testing SD card read speed... SD write speed for 10.0MByte file was 2.60MBytes/sec SD read speed for 10.0MByte file was 1.34MBytes/sec
I have uploaded a 60MB gcode file and run a simulation that seemed okay, but haven't run a print (will tomorrow).
The FAT32 file size limit of 4GB is still there, and will be until RRF supports a different format type, though currently there are no plans to, as both exFAT and NTFS require a licencing fee, while other formats don't have the broad OS support of FAT32.
Formatting SD cards on Windows may be a two-stage process; see https://www.retrorgb.com/sdformat.html
Apart from that, there doesn't seem to be a downside. I would appreciate any user feedback if you're using large capacity cards already, before I commit this to the wiki. Thanks!
Ian
-
Ps: Bonus points for linking to RetroRGB
-