Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR addresses some of the mass storage issues we've seen recently.
Unflagging ARDUINO_USB_MODE at the platform level fixes many build warnings when setting ARDUINO_USB_MODE at the flag level. The combination of ARDUINO_USB_MODE=0 and ARDUINO_CDC_ON_BOOT=1 allows use of both the serial port and mass storage devices (firmware & SD card), however it does not allow firmware upload without manually switching back into bootloader mode.
The ENABLE_MASS_STORAGE flag is no longer needed because the serial port and mass storage work together with these settings, so it is removed.
MSC_Update conflicted with a platform symbol, so its name is upgraded to the more specific MSC_FirmwareUpdate.
These changes were tested to work properly* on a Windows machine after verifying the drives-not-appearing problem using the head of main prior to these changes.
*work properly =
Note: if the device turns on without an SD card mounted, the firmware drive will not be mounted either (the drive will be present, but it will not have any contents until the SD card is mounted)