Code:
Code:
I'm successfully using a Teensy 3.6 as a Unicode-compatible native MP3 player, and would now like to add MTP.
However, I am running into several dependency issues. There seem to be two libraries: MTP and MTP-t4.
Despite its name, MTP-t4 says it supports Teensy 3.x - and I would prefer to use it, as I read it supports MTP+Serial.
With MTP I am running into the problem, that it requires SdFatSdioEX, which does not seem to exist in SDFat 2.0.4,
which I am using in my main program. So I changed SdFatSdioEX into SdExFat, as in my main program, and File into
ExFile. This seems to do it, however, the implementation of MTP does not seem to support SdFAT's UNICODE feature,
which I am using in my main program (I do have a lot of foreign script files, which otherwise would not load and play
correctly). I could go further this road, by implementing UTC2-UTF8 conversion methods for the filenames, but I am
not sure if this has perspective.
With MTP-t4 I am running into the problem that the "FS" type is not found (Storage.h). It seems to be implemented
in the LittleFS library, which apparently is obligatory (IMHO not completely clear from the README, which I originally read
as suggesting that LittleFS support is optional). I installed LittleFS, but the FS type is still not found, until I add an
#include <LittleFS.h> into Storage.h. When I do this, I get the following:
Code:
C:\Users\tobia\Documents\Arduino\libraries\LittleFS-main\src/LittleFS.h: In member function 'virtual File LittleFSFile::openNextFile(uint8_t)':
C:\Users\tobia\Documents\Arduino\libraries\LittleFS-main\src/LittleFS.h:164:51: error: no matching function for call to 'File::File(LittleFSFile*)'
return File(new LittleFSFile(lfs, f, pathname));
And other issues related to "File".
I assume this is a version incompatibility with my SDFat 2.0.4. Do I need the SDFat-beta to run this?
I installed SDFat-beta, but then my main program would not compile as the ExFile type is not found.
Can I safely change ExFile into File without losing my long filename & Unicode functionality?
If so, won't "LittleFS" etc. break sooner or later due to char16_t* vs char8* incompatibility, just like the original MTP?
Not sure which path I should take. Thank you for any input.
Thank you