diff -r 979562f350bf -r 8dc5acb30a8b eric6/MicroPython/CircuitPythonFirmwareSelectionDialog.py --- a/eric6/MicroPython/CircuitPythonFirmwareSelectionDialog.py Wed Feb 03 19:14:35 2021 +0100 +++ b/eric6/MicroPython/CircuitPythonFirmwareSelectionDialog.py Wed Feb 03 19:15:58 2021 +0100 @@ -85,6 +85,7 @@ ("PyPortal Pynt", "PORTALBOOT"), ("PyPortal Titano", "PORTALBOOT"), ("PyRuler", "TRINKETBOOT"), + ("QT Py M0", "QTPY_BOOT"), ("Radiofruit M0", "RADIOBOOT"), ("Trellis M4 Express", "TRELM4BOOT"), ("Trinket M0", "TRINKETBOOT"), @@ -103,6 +104,7 @@ # Seed boards ("--- Seeed Studio ---", ""), ("Grove Zero", "Grove Zero"), + ("Seeduino XIAO", "Arduino"), # other boards we know about (self.tr("--- Others ---"), ""), @@ -140,9 +142,18 @@ if volumeName and volumeName != self.__manualMarker: # check if the user selected a board and the board is in # bootloader mode - deviceDirectory = Utilities.findVolume(volumeName) - if deviceDirectory: - self.bootPicker.setText(deviceDirectory) + deviceDirectories = Utilities.findVolume(volumeName, all=True) + if len(deviceDirectories) > 1: + enable = False + E5MessageBox.warning( + self, + self.tr("Select Path to Device"), + self.tr("There are multiple devices in 'bootloader'" + " mode and mounted. Please make sure, that" + " only one device is prepared for flashing.") + ) + elif len(deviceDirectories) == 1: + self.bootPicker.setText(deviceDirectories[0]) enable = True else: enable = False