src/eric7/MicroPython/UF2FlashDialog.py

branch
eric7
changeset 11208
f776db7cc222
parent 11178
52699bca6df9
child 11213
2bbdb06da276
diff -r 7193db06924d -r f776db7cc222 src/eric7/MicroPython/UF2FlashDialog.py
--- a/src/eric7/MicroPython/UF2FlashDialog.py	Sun Apr 06 11:01:28 2025 +0200
+++ b/src/eric7/MicroPython/UF2FlashDialog.py	Sun Apr 06 14:51:33 2025 +0200
@@ -27,7 +27,7 @@
     import usb.core
 
 SupportedUF2Boards = {
-    "MPy or CPy": {
+    "UF2 Board": {
         "volumes": {
             (0x03EB, 0x2402): [
                 ("SAMD21", "SAMD21 Board"),
@@ -762,7 +762,7 @@
         },
         "instructions": QCoreApplication.translate(
             "UF2FlashDialog",
-            "<h3>CircuitPython Board</h3>"
+            "<h3>MicroPython / CircuitPython Board</h3>"
             "<p>In order to prepare the board for flashing follow these"
             " steps:</p><ol>"
             "<li>Switch your device to 'bootloader' mode by double-pressing"
@@ -821,7 +821,8 @@
     """
     Function to get the list of known serial devices supporting UF2.
 
-    @param boardType specific board type to search for
+    @param boardType specific board type to search for. This string may contain
+        multiple board types concatenated with a '+' (plus) character.
     @type str
     @return list of tuples with the board type, the port description, the
         VID and PID
@@ -834,7 +835,11 @@
         [] if OSUtilities.isWindowsPlatform() else FileSystemUtilities.getUserMounts()
     )
 
-    boardTypes = [boardType] if boardType else list(SupportedUF2Boards)
+    boardTypes = (
+        [b.strip() for b in boardType.split("+")]
+        if boardType
+        else list(SupportedUF2Boards)
+    )
     for board in boardTypes:
         for vidpid, volumes in SupportedUF2Boards[board]["volumes"].items():
             for volume, description in volumes:
@@ -1055,7 +1060,7 @@
 
         self.infoLabel.setText(self.tr("Flash Instructions:"))
 
-        if self.__boardType:
+        if self.__boardType and not "+" in self.__boardType:
             htmlText = self.tr(
                 "<h4>Flash {0} Firmware</h4>"
                 "<p>Follow the instructions below to set <b>one</b> board into"

eric ide

mercurial