12 import shutil |
12 import shutil |
13 |
13 |
14 from PyQt6.QtCore import QStandardPaths, pyqtSlot |
14 from PyQt6.QtCore import QStandardPaths, pyqtSlot |
15 from PyQt6.QtWidgets import QInputDialog, QLineEdit |
15 from PyQt6.QtWidgets import QInputDialog, QLineEdit |
16 |
16 |
17 from eric7 import Preferences, Utilities |
17 from eric7 import Preferences |
18 from eric7.EricWidgets import EricFileDialog, EricMessageBox |
18 from eric7.EricWidgets import EricFileDialog, EricMessageBox |
19 from eric7.EricWidgets.EricApplication import ericApp |
19 from eric7.EricWidgets.EricApplication import ericApp |
|
20 from eric7.SystemUtilities import FileSystemUtilities |
20 |
21 |
21 from .MicroPythonDevices import MicroPythonDevice |
22 from .MicroPythonDevices import MicroPythonDevice |
22 from .MicroPythonWidget import HAS_QTCHART |
23 from .MicroPythonWidget import HAS_QTCHART |
23 |
24 |
24 |
25 |
186 # plugged in micro:bit board. To flash the DAPLink firmware, it must be |
187 # plugged in micro:bit board. To flash the DAPLink firmware, it must be |
187 # in maintenance mode, for MicroPython in standard mode. |
188 # in maintenance mode, for MicroPython in standard mode. |
188 if self.getDeviceType() == "bbc_microbit": |
189 if self.getDeviceType() == "bbc_microbit": |
189 # BBC micro:bit |
190 # BBC micro:bit |
190 if firmware: |
191 if firmware: |
191 deviceDirectories = Utilities.findVolume("MAINTENANCE", findAll=True) |
192 deviceDirectories = FileSystemUtilities.findVolume( |
|
193 "MAINTENANCE", findAll=True |
|
194 ) |
192 else: |
195 else: |
193 deviceDirectories = Utilities.findVolume("MICROBIT", findAll=True) |
196 deviceDirectories = FileSystemUtilities.findVolume( |
|
197 "MICROBIT", findAll=True |
|
198 ) |
194 else: |
199 else: |
195 # Calliope mini |
200 # Calliope mini |
196 if firmware: |
201 if firmware: |
197 deviceDirectories = Utilities.findVolume("MAINTENANCE", findAll=True) |
202 deviceDirectories = FileSystemUtilities.findVolume( |
|
203 "MAINTENANCE", findAll=True |
|
204 ) |
198 else: |
205 else: |
199 deviceDirectories = Utilities.findVolume("MINI", findAll=True) |
206 deviceDirectories = FileSystemUtilities.findVolume("MINI", findAll=True) |
200 if len(deviceDirectories) == 0: |
207 if len(deviceDirectories) == 0: |
201 if self.getDeviceType() == "bbc_microbit": |
208 if self.getDeviceType() == "bbc_microbit": |
202 # BBC micro:bit is not ready or not mounted |
209 # BBC micro:bit is not ready or not mounted |
203 if firmware: |
210 if firmware: |
204 EricMessageBox.critical( |
211 EricMessageBox.critical( |