83 ("PyPortal", "PORTALBOOT"), |
83 ("PyPortal", "PORTALBOOT"), |
84 ("PyPortal M4 Express", "PORTALBOOT"), |
84 ("PyPortal M4 Express", "PORTALBOOT"), |
85 ("PyPortal Pynt", "PORTALBOOT"), |
85 ("PyPortal Pynt", "PORTALBOOT"), |
86 ("PyPortal Titano", "PORTALBOOT"), |
86 ("PyPortal Titano", "PORTALBOOT"), |
87 ("PyRuler", "TRINKETBOOT"), |
87 ("PyRuler", "TRINKETBOOT"), |
|
88 ("QT Py M0", "QTPY_BOOT"), |
88 ("Radiofruit M0", "RADIOBOOT"), |
89 ("Radiofruit M0", "RADIOBOOT"), |
89 ("Trellis M4 Express", "TRELM4BOOT"), |
90 ("Trellis M4 Express", "TRELM4BOOT"), |
90 ("Trinket M0", "TRINKETBOOT"), |
91 ("Trinket M0", "TRINKETBOOT"), |
91 ("crickit", "CRICKITBOOT"), |
92 ("crickit", "CRICKITBOOT"), |
92 ("pIRKey M0", "PIRKEYBOOT"), |
93 ("pIRKey M0", "PIRKEYBOOT"), |
101 ("Pro nRF52840 Mini", "NRF52BOOT"), |
102 ("Pro nRF52840 Mini", "NRF52BOOT"), |
102 |
103 |
103 # Seed boards |
104 # Seed boards |
104 ("--- Seeed Studio ---", ""), |
105 ("--- Seeed Studio ---", ""), |
105 ("Grove Zero", "Grove Zero"), |
106 ("Grove Zero", "Grove Zero"), |
|
107 ("Seeduino XIAO", "Arduino"), |
106 |
108 |
107 # other boards we know about |
109 # other boards we know about |
108 (self.tr("--- Others ---"), ""), |
110 (self.tr("--- Others ---"), ""), |
109 ("Arduino MKR1300", "MKR1300"), |
111 ("Arduino MKR1300", "MKR1300"), |
110 ("Arduino MKRZero", "MKRZEROBOOT"), |
112 ("Arduino MKRZero", "MKRZEROBOOT"), |
138 else: |
140 else: |
139 volumeName = self.boardComboBox.currentData() |
141 volumeName = self.boardComboBox.currentData() |
140 if volumeName and volumeName != self.__manualMarker: |
142 if volumeName and volumeName != self.__manualMarker: |
141 # check if the user selected a board and the board is in |
143 # check if the user selected a board and the board is in |
142 # bootloader mode |
144 # bootloader mode |
143 deviceDirectory = Utilities.findVolume(volumeName) |
145 deviceDirectories = Utilities.findVolume(volumeName, all=True) |
144 if deviceDirectory: |
146 if len(deviceDirectories) > 1: |
145 self.bootPicker.setText(deviceDirectory) |
147 enable = False |
|
148 E5MessageBox.warning( |
|
149 self, |
|
150 self.tr("Select Path to Device"), |
|
151 self.tr("There are multiple devices in 'bootloader'" |
|
152 " mode and mounted. Please make sure, that" |
|
153 " only one device is prepared for flashing.") |
|
154 ) |
|
155 elif len(deviceDirectories) == 1: |
|
156 self.bootPicker.setText(deviceDirectories[0]) |
146 enable = True |
157 enable = True |
147 else: |
158 else: |
148 enable = False |
159 enable = False |
149 E5MessageBox.warning( |
160 E5MessageBox.warning( |
150 self, |
161 self, |