src/eric7/i18n/eric7_en.ts

branch
eric7
changeset 9749
5d409223cf3f
parent 9747
b7976868d5b0
child 9754
ddf0407d42be
--- a/src/eric7/i18n/eric7_en.ts	Wed Feb 08 11:54:36 2023 +0100
+++ b/src/eric7/i18n/eric7_en.ts	Wed Feb 08 18:09:19 2023 +0100
@@ -2093,7 +2093,7 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/BoardDataDialog.py" line="157" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="158" />
       <location filename="../MicroPython/BoardDataDialog.py" line="90" />
       <source>Version</source>
       <translation type="unfinished" />
@@ -2109,49 +2109,49 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/BoardDataDialog.py" line="128" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="129" />
       <location filename="../MicroPython/BoardDataDialog.py" line="97" />
       <source>total</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/BoardDataDialog.py" line="129" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="130" />
       <location filename="../MicroPython/BoardDataDialog.py" line="98" />
       <source>{0} KBytes</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/BoardDataDialog.py" line="137" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="138" />
       <location filename="../MicroPython/BoardDataDialog.py" line="106" />
       <source>used</source>
       <translation type="unfinished" />
     </message>
     <message>
+      <location filename="../MicroPython/BoardDataDialog.py" line="149" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="139" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="117" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="107" />
+      <source>{0} KBytes ({1}%)</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
       <location filename="../MicroPython/BoardDataDialog.py" line="148" />
-      <location filename="../MicroPython/BoardDataDialog.py" line="138" />
-      <location filename="../MicroPython/BoardDataDialog.py" line="117" />
-      <location filename="../MicroPython/BoardDataDialog.py" line="107" />
-      <source>{0} KBytes ({1}%)</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/BoardDataDialog.py" line="147" />
       <location filename="../MicroPython/BoardDataDialog.py" line="116" />
       <source>free</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/BoardDataDialog.py" line="124" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="125" />
       <source>Flash Memory</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/BoardDataDialog.py" line="155" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="156" />
       <source>µLab</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/BoardDataDialog.py" line="159" />
+      <location filename="../MicroPython/BoardDataDialog.py" line="160" />
       <source>µLab is not available</source>
       <translation type="unfinished" />
     </message>
@@ -3779,16 +3779,16 @@
   <context>
     <name>CircuitPythonUpdaterInterface</name>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="590" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="582" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="569" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="538" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="509" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="499" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="478" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="461" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="452" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="438" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="595" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="587" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="574" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="543" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="514" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="504" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="484" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="467" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="458" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="444" />
       <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="54" />
       <source>Install Modules</source>
       <translation type="unfinished" />
@@ -3848,8 +3848,8 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="631" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="610" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="636" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="615" />
       <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="108" />
       <source>Uninstall Modules</source>
       <translation type="unfinished" />
@@ -3963,67 +3963,67 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="440" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="446" />
       <source>Text Files (*.txt);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="453" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="459" />
       <source>&lt;p&gt;The given requirements file &lt;b&gt;{0}&lt;/b&gt; does not contain valid modules.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="462" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="468" />
       <source>&lt;p&gt;The given requirements file &lt;b&gt;{0}&lt;/b&gt; does not exist.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="480" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="486" />
       <source>Python Files (*.py);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="500" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="505" />
       <source>&lt;p&gt;The given code file &lt;b&gt;{0}&lt;/b&gt; does not contain valid import statements or does not import external modules.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="510" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="515" />
       <source>&lt;p&gt;The given code file &lt;b&gt;{0}&lt;/b&gt; does not exist.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="539" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="544" />
       <source>&lt;p&gt;Ready to install these modules?{0}{1}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="543" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="548" />
       <source>Dependencies:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="570" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="575" />
       <source>&lt;p&gt;Installation complete. These modules were installed successfully.{0}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="583" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="588" />
       <source>&lt;p&gt;Installation complete. No modules were installed.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="591" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="596" />
       <source>&lt;p&gt;No modules installation is required.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="611" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="616" />
       <source>Select the modules/packages to be uninstalled:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="632" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircuitPythonUpdaterInterface.py" line="637" />
       <source>&lt;p&gt;These modules/packages were uninstalled from the connected device.{0}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
@@ -4041,7 +4041,7 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="145" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="143" />
       <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="104" />
       <source>Download Bundle</source>
       <translation type="unfinished" />
@@ -4052,23 +4052,23 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="146" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="144" />
       <source>&lt;p&gt;Missing file &lt;b&gt;boot_out.txt&lt;/b&gt; on the device: wrong path or drive corrupted.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="240" />
-      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="229" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="238" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="227" />
       <source>Install Modules</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="230" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="228" />
       <source>&lt;p&gt;The compiled version of module &lt;b&gt;{0}&lt;/b&gt; cannot be found.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="241" />
+      <location filename="../MicroPython/CircuitPythonUpdater/CircupFunctions.py" line="239" />
       <source>&lt;p&gt;The module name &lt;b&gt;{0}&lt;/b&gt; is not known.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
@@ -19785,103 +19785,134 @@
   <context>
     <name>EspDevice</name>
     <message>
-      <location filename="../MicroPython/EspDevices.py" line="68" />
+      <location filename="../MicroPython/EspDevices.py" line="69" />
       <source>ESP8266, ESP32</source>
       <translation type="unfinished" />
     </message>
     <message>
+      <location filename="../MicroPython/EspDevices.py" line="377" />
+      <location filename="../MicroPython/EspDevices.py" line="132" />
+      <source>Show MicroPython Versions</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="198" />
+      <location filename="../MicroPython/EspDevices.py" line="184" />
+      <location filename="../MicroPython/EspDevices.py" line="134" />
+      <source>Erase Flash</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="235" />
+      <location filename="../MicroPython/EspDevices.py" line="138" />
+      <source>Flash MicroPython Firmware</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="272" />
+      <location filename="../MicroPython/EspDevices.py" line="142" />
+      <source>Flash Additional Firmware</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="306" />
+      <location filename="../MicroPython/EspDevices.py" line="145" />
+      <source>Backup Firmware</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="357" />
+      <location filename="../MicroPython/EspDevices.py" line="148" />
+      <source>Restore Firmware</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="446" />
+      <location filename="../MicroPython/EspDevices.py" line="152" />
+      <source>Show Chip ID</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="466" />
+      <location filename="../MicroPython/EspDevices.py" line="155" />
+      <source>Show Flash ID</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="486" />
+      <location filename="../MicroPython/EspDevices.py" line="158" />
+      <source>Show MAC Address</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="162" />
+      <source>Reset Device</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="166" />
+      <source>Install 'esptool.py'</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
       <location filename="../MicroPython/EspDevices.py" line="185" />
-      <location filename="../MicroPython/EspDevices.py" line="171" />
-      <location filename="../MicroPython/EspDevices.py" line="129" />
-      <source>Erase Flash</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="222" />
-      <location filename="../MicroPython/EspDevices.py" line="132" />
-      <source>Flash MicroPython Firmware</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="259" />
-      <location filename="../MicroPython/EspDevices.py" line="136" />
-      <source>Flash Additional Firmware</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="293" />
-      <location filename="../MicroPython/EspDevices.py" line="139" />
-      <source>Backup Firmware</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="344" />
-      <location filename="../MicroPython/EspDevices.py" line="141" />
-      <source>Restore Firmware</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="365" />
-      <location filename="../MicroPython/EspDevices.py" line="144" />
-      <source>Show Chip ID</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="385" />
-      <location filename="../MicroPython/EspDevices.py" line="146" />
-      <source>Show Flash ID</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="405" />
-      <location filename="../MicroPython/EspDevices.py" line="148" />
-      <source>Show MAC Address</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="151" />
-      <source>Reset Device</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="153" />
-      <source>Install 'esptool.py'</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/EspDevices.py" line="172" />
       <source>Shall the flash of the selected device really be erased?</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/EspDevices.py" line="184" />
+      <location filename="../MicroPython/EspDevices.py" line="197" />
       <source>'esptool erase_flash' Output</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/EspDevices.py" line="343" />
-      <location filename="../MicroPython/EspDevices.py" line="258" />
-      <location filename="../MicroPython/EspDevices.py" line="221" />
+      <location filename="../MicroPython/EspDevices.py" line="356" />
+      <location filename="../MicroPython/EspDevices.py" line="271" />
+      <location filename="../MicroPython/EspDevices.py" line="234" />
       <source>'esptool write_flash' Output</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/EspDevices.py" line="292" />
+      <location filename="../MicroPython/EspDevices.py" line="305" />
       <source>'esptool read_flash' Output</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/EspDevices.py" line="365" />
+      <location filename="../MicroPython/EspDevices.py" line="378" />
+      <source>The firmware of the connected device cannot be determined or the board does not run MicroPython. Aborting...</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="410" />
+      <source>unknown</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="416" />
+      <source>&lt;h4&gt;MicroPython Version Information&lt;/h4&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;Installed:&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Available:&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="424" />
+      <source>&lt;p&gt;&lt;b&gt;Update available!&lt;/b&gt;&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="428" />
+      <source>MicroPython Version</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/EspDevices.py" line="446" />
       <source>'esptool chip_id' Output</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/EspDevices.py" line="385" />
+      <location filename="../MicroPython/EspDevices.py" line="466" />
       <source>'esptool flash_id' Output</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/EspDevices.py" line="405" />
+      <location filename="../MicroPython/EspDevices.py" line="486" />
       <source>'esptool read_mac' Output</source>
       <translation type="unfinished" />
     </message>
@@ -48619,7 +48650,7 @@
   <context>
     <name>MicroPythonCommandsInterface</name>
     <message>
-      <location filename="../MicroPython/MicroPythonCommandsInterface.py" line="292" />
+      <location filename="../MicroPython/MicroPythonCommandsInterface.py" line="322" />
       <source>Detected an error without indications.</source>
       <translation type="unfinished" />
     </message>
@@ -48637,43 +48668,43 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonDevices.py" line="400" />
-      <location filename="../MicroPython/MicroPythonDevices.py" line="389" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="404" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="393" />
       <source>Unknown Device</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonDevices.py" line="523" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="527" />
       <source>Unsupported Device</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonDevices.py" line="533" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="537" />
       <source>REPL is not supported by this device.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonDevices.py" line="552" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="556" />
       <source>Plotter is not supported by this device.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonDevices.py" line="571" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="575" />
       <source>Running scripts is not supported by this device.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonDevices.py" line="590" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="594" />
       <source>File Manager is not supported by this device.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonDevices.py" line="635" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="639" />
       <source>Select Device Directory</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonDevices.py" line="636" />
+      <location filename="../MicroPython/MicroPythonDevices.py" line="640" />
       <source>Select the directory for the connected device:</source>
       <translation type="unfinished" />
     </message>
@@ -49319,12 +49350,12 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="286" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="287" />
       <source>&lt;h3&gt;The QtSerialPort package is not available.&lt;br/&gt;MicroPython support is deactivated.&lt;/h3&gt;</source>
       <translation type="unfinished" />
     </message>
     <message numerus="yes">
-      <location filename="../MicroPython/MicroPythonWidget.py" line="327" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="328" />
       <source>%n supported device(s) detected.</source>
       <translation>
         <numerusform>%n supported device detected.</numerusform>
@@ -49332,18 +49363,18 @@
       </translation>
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="340" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="341" />
       <source>{0} - {1} ({2})</source>
       <comment>board name, description, port name</comment>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="357" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="358" />
       <source>No supported devices detected.</source>
       <translation type="unfinished" />
     </message>
     <message numerus="yes">
-      <location filename="../MicroPython/MicroPythonWidget.py" line="361" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="362" />
       <source>
 %n unknown device(s) for manual selection.</source>
       <translation>
@@ -49354,44 +49385,44 @@
       </translation>
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="368" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="369" />
       <source>Manual Selection</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="430" />
-      <location filename="../MicroPython/MicroPythonWidget.py" line="401" />
-      <source>Unknown MicroPython Device</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="402" />
-      <source>&lt;p&gt;Detected these unknown serial devices&lt;/p&gt;&lt;ul&gt;&lt;li&gt;{0}&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Please report them together with the board name and a short description to &lt;a href="mailto:{1}"&gt; the eric bug reporting address&lt;/a&gt; if it is a MicroPython board.&lt;/p&gt;</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="414" />
-      <source>{0} (0x{1:04x}/0x{2:04x})</source>
-      <comment>description, VId, PId</comment>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/MicroPythonWidget.py" line="431" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="402" />
+      <source>Unknown MicroPython Device</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="403" />
+      <source>&lt;p&gt;Detected these unknown serial devices&lt;/p&gt;&lt;ul&gt;&lt;li&gt;{0}&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Please report them together with the board name and a short description to &lt;a href="mailto:{1}"&gt; the eric bug reporting address&lt;/a&gt; if it is a MicroPython board.&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="415" />
+      <source>{0} (0x{1:04x}/0x{2:04x})</source>
+      <comment>description, VId, PId</comment>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="432" />
       <source>Would you like to add them to the list of manually configured devices?</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="558" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="561" />
       <source>Clear</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="564" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="566" />
       <source>Copy</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="571" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="572" />
       <source>Paste</source>
       <translation type="unfinished" />
     </message>
@@ -49412,12 +49443,12 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="628" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="637" />
       <source>No device attached</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="629" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="638" />
       <source>Please ensure the device is plugged into your computer and selected.
 
 It must have a version of MicroPython (or CircuitPython) flashed onto it before anything will work.
@@ -49426,309 +49457,325 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="658" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="667" />
       <source>Start REPL</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="659" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="668" />
       <source>&lt;p&gt;The REPL cannot be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1131" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1151" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1140" />
       <source>Serial Device Connect</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1132" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1141" />
+      <source>&lt;p&gt;The device at serial port &lt;b&gt;{0}&lt;/b&gt; does not respond. It may not have a MicroPython firmware flashed.&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1152" />
       <source>&lt;p&gt;Cannot connect to device at serial port &lt;b&gt;{0}&lt;/b&gt;.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1180" />
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1171" />
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1162" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1202" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1193" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1184" />
       <source>Run Script</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1163" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1185" />
       <source>There is no editor open. Abort...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1172" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1194" />
       <source>The current editor does not contain a script. Abort...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1181" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1203" />
       <source>&lt;p&gt;Cannot run script.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1206" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1228" />
       <source>Open Python File</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1208" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1230" />
       <source>Python3 Files (*.py);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1252" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1274" />
       <source>Start Chart</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1253" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1275" />
       <source>&lt;p&gt;The Chart cannot be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1268" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1290" />
       <source>µPy Chart</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1285" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1307" />
       <source>Unsaved Chart Data</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1286" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1308" />
       <source>The chart contains unsaved data.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1334" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1356" />
       <source>Start File Manager</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1335" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1357" />
       <source>&lt;p&gt;The File Manager cannot be started.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1354" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1376" />
       <source>µPy Files</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1390" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1412" />
       <source>Downloads</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1405" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1427" />
       <source>Show Version</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1409" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1431" />
       <source>Show Implementation</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1413" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1435" />
       <source>Show Board Data</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1566" />
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1419" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1592" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1441" />
       <source>Synchronize Time</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1423" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1445" />
       <source>Show Device Time</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1426" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1448" />
       <source>Show Local Time</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1429" />
-      <source>Show Time</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1790" />
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1436" />
-      <source>Compile Python File</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1814" />
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1805" />
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1440" />
-      <source>Compile Current Editor</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/MicroPythonWidget.py" line="1451" />
+      <source>Show Time</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1456" />
+      <source>Show Builtin Modules</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1816" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1462" />
+      <source>Compile Python File</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1840" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1831" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1466" />
+      <source>Compile Current Editor</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1477" />
       <source>Download Firmware</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1459" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1485" />
       <source>Show Documentation</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1464" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1490" />
       <source>Flash UF2 Device</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1467" />
-      <source>Manage Unknown Devices</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1470" />
-      <source>Ignored Serial Devices</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1473" />
-      <source>Configure</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1483" />
-      <source>&lt;h3&gt;Device Version Information&lt;/h3&gt;</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1491" />
-      <source>No version information available.</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/MicroPythonWidget.py" line="1493" />
-      <source>Device Version Information</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1513" />
+      <source>Manage Unknown Devices</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1496" />
+      <source>Ignored Serial Devices</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1499" />
+      <source>Configure</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
       <location filename="../MicroPython/MicroPythonWidget.py" line="1509" />
+      <source>&lt;h3&gt;Device Version Information&lt;/h3&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1517" />
+      <source>No version information available.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1519" />
+      <source>Device Version Information</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1539" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1535" />
       <source>unknown</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1518" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1544" />
       <source> ({0})</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1525" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1551" />
       <source>Device Implementation Information</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1526" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1552" />
       <source>&lt;h3&gt;Device Implementation Information&lt;/h3&gt;&lt;p&gt;This device contains &lt;b&gt;{0} {1}{2}&lt;/b&gt;.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1567" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1593" />
       <source>&lt;p&gt;The time of the connected device was synchronized with the local time.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1589" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1615" />
       <source>&lt;h3&gt;Device Date and Time&lt;/h3&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1597" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1623" />
       <source>&lt;h3&gt;Device Date and Time&lt;/h3&gt;&lt;p&gt;{0}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1613" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1639" />
       <source>Device Date and Time</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1625" />
-      <source>Local Date and Time</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1626" />
-      <source>&lt;h3&gt;Local Date and Time&lt;/h3&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1667" />
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1650" />
-      <source>Date and Time</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/MicroPythonWidget.py" line="1651" />
-      <source>&lt;table&gt;&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;Local Date and Time&lt;/th&gt;&lt;th&gt;Device Date and Time&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td align='center'&gt;{0}&lt;/td&gt;&lt;td align='center'&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/td&gt;&lt;td align='center'&gt;{1}&lt;/td&gt;&lt;td align='center'&gt;{3}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1668" />
-      <source>&lt;table&gt;&lt;tr&gt;&lt;th&gt;Local Date and Time&lt;/th&gt;&lt;th&gt;Device Date and Time&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align='center'&gt;{0} {1}&lt;/td&gt;&lt;td align='center'&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1692" />
-      <source>Error handling device</source>
+      <source>Local Date and Time</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1652" />
+      <source>&lt;h3&gt;Local Date and Time&lt;/h3&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
       <location filename="../MicroPython/MicroPythonWidget.py" line="1693" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1676" />
+      <source>Date and Time</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1677" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;th&gt;&lt;/th&gt;&lt;th&gt;Local Date and Time&lt;/th&gt;&lt;th&gt;Device Date and Time&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Date&lt;/b&gt;&lt;/td&gt;&lt;td align='center'&gt;{0}&lt;/td&gt;&lt;td align='center'&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Time&lt;/b&gt;&lt;/td&gt;&lt;td align='center'&gt;{1}&lt;/td&gt;&lt;td align='center'&gt;{3}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1694" />
+      <source>&lt;table&gt;&lt;tr&gt;&lt;th&gt;Local Date and Time&lt;/th&gt;&lt;th&gt;Device Date and Time&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align='center'&gt;{0} {1}&lt;/td&gt;&lt;td align='center'&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1718" />
+      <source>Error handling device</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1719" />
       <source>&lt;p&gt;There was an error communicating with the connected device.&lt;/p&gt;&lt;p&gt;Method: {0}&lt;/p&gt;&lt;p&gt;Message: {1}&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1735" />
-      <source>The MicroPython cross compiler &lt;b&gt;mpy-cross&lt;/b&gt; cannot be found. Ensure it is in the search path or configure it on the MicroPython configuration page.</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/MicroPythonWidget.py" line="1761" />
+      <source>The MicroPython cross compiler &lt;b&gt;mpy-cross&lt;/b&gt; cannot be found. Ensure it is in the search path or configure it on the MicroPython configuration page.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1787" />
       <source>Python Files (*.py);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1771" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1797" />
       <source>The Python file &lt;b&gt;{0}&lt;/b&gt; does not exist. Aborting...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1780" />
-      <source>'mpy-cross' Output</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/MicroPythonWidget.py" line="1806" />
+      <source>'mpy-cross' Output</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1832" />
       <source>The current editor does not contain a Python file. Aborting...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1898" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1924" />
       <source>Add Unknown Devices</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicroPythonWidget.py" line="1899" />
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1925" />
       <source>Select the devices to be added:</source>
       <translation type="unfinished" />
     </message>
     <message>
+      <location filename="../MicroPython/MicroPythonWidget.py" line="1966" />
+      <source>Plus any modules on the filesystem.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
       <location filename="../MicroPython/MicroPythonWidget.ui" line="0" />
       <source>Press to check for connected devices</source>
       <translation type="unfinished" />
@@ -49767,135 +49814,178 @@
   <context>
     <name>MicrobitDevice</name>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="72" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="73" />
       <source>BBC micro:bit</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="75" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="76" />
       <source>Calliope mini</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="147" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="338" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="328" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="311" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="150" />
+      <source>Show MicroPython Versions</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="153" />
       <source>Flash MicroPython</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="150" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="156" />
       <source>Flash Firmware</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="317" />
-      <location filename="../MicroPython/MicrobitDevices.py" line="154" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="418" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="159" />
       <source>Save Script</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="155" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="160" />
       <source>Save the current script to the selected device</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="157" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="162" />
       <source>Save Script as 'main.py'</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="159" />
-      <source>Save the current script as 'main.py' on the connected device</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/MicrobitDevices.py" line="164" />
+      <source>Save the current script as 'main.py' on the connected device</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="169" />
       <source>Reset {0}</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="286" />
-      <location filename="../MicroPython/MicrobitDevices.py" line="277" />
-      <location filename="../MicroPython/MicrobitDevices.py" line="263" />
-      <location filename="../MicroPython/MicrobitDevices.py" line="246" />
-      <location filename="../MicroPython/MicrobitDevices.py" line="233" />
-      <location filename="../MicroPython/MicrobitDevices.py" line="213" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="290" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="281" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="267" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="250" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="237" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="217" />
       <source>Flash MicroPython/Firmware</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="214" />
-      <source>&lt;p&gt;The BBC micro:bit is not ready for flashing the DAPLink firmware. Follow these instructions. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;unplug USB cable and any batteries&lt;/li&gt;&lt;li&gt;keep RESET button pressed an plug USB cable back in&lt;/li&gt;&lt;li&gt;a drive called MAINTENANCE should be available&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;See the &lt;a href="https://microbit.org/guide/firmware/"&gt;micro:bit web site&lt;/a&gt; for details.&lt;/p&gt;</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="234" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="218" />
+      <source>&lt;p&gt;The BBC micro:bit is not ready for flashing the DAPLink firmware. Follow these instructions. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;unplug USB cable and any batteries&lt;/li&gt;&lt;li&gt;keep RESET button pressed and plug USB cable back in&lt;/li&gt;&lt;li&gt;a drive called MAINTENANCE should be available&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;See the &lt;a href="https://microbit.org/guide/firmware/"&gt;micro:bit web site&lt;/a&gt; for details.&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="238" />
       <source>&lt;p&gt;The BBC micro:bit is not ready for flashing the MicroPython firmware. Please make sure, that a drive called MICROBIT is available.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="247" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="251" />
       <source>&lt;p&gt;The "Calliope mini" is not ready for flashing the DAPLink firmware. Follow these instructions. &lt;/p&gt;&lt;ul&gt;&lt;li&gt;unplug USB cable and any batteries&lt;/li&gt;&lt;li&gt;keep RESET button pressed an plug USB cable back in&lt;/li&gt;&lt;li&gt;a drive called MAINTENANCE should be available&lt;/li&gt;&lt;/ul&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="264" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="268" />
       <source>&lt;p&gt;The "Calliope mini" is not ready for flashing the MicroPython firmware. Please make sure, that a drive called MINI is available.&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="279" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="283" />
       <source>MicroPython/Firmware Files (*.hex *.bin);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="287" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="291" />
       <source>There are multiple devices ready for flashing. Please make sure, that only one device is prepared.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="351" />
-      <location filename="../MicroPython/MicrobitDevices.py" line="315" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="312" />
+      <source>The firmware of the connected device cannot be determined or the board does not run MicroPython. Aborting...</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="329" />
+      <source>&lt;p&gt;The BBC micro:bit generation cannot be determined. Aborting...&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="339" />
+      <source>&lt;p&gt;The firmware URL for the device type &lt;b&gt;{0}&lt;/b&gt; is not known. Aborting...&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="371" />
+      <source>unknown</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="377" />
+      <source>&lt;h4&gt;MicroPython Version Information&lt;br/&gt;(BBC micro:bit v{2})&lt;/h4&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;Installed:&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Available:&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="386" />
+      <source>&lt;p&gt;&lt;b&gt;Update available!&lt;/b&gt;&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="390" />
+      <source>MicroPython Version</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="452" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="416" />
       <source>Save Script as '{0}'</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="324" />
-      <source>The current editor does not contain a Python script. Write it anyway?</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="335" />
-      <source>The script is empty. Aborting.</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="344" />
-      <source>Enter a file name on the device:</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="365" />
-      <source>&lt;p&gt;The script could not be saved to the device.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="421" />
-      <source>MicroPython Firmware for BBC micro:bit V1</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/MicrobitDevices.py" line="425" />
-      <source>MicroPython Firmware for BBC micro:bit V2</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/MicrobitDevices.py" line="440" />
-      <location filename="../MicroPython/MicrobitDevices.py" line="429" />
-      <source>DAPLink Firmware</source>
+      <source>The current editor does not contain a Python script. Write it anyway?</source>
       <translation type="unfinished" />
     </message>
     <message>
       <location filename="../MicroPython/MicrobitDevices.py" line="436" />
+      <source>The script is empty. Aborting.</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="445" />
+      <source>Enter a file name on the device:</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="466" />
+      <source>&lt;p&gt;The script could not be saved to the device.&lt;/p&gt;&lt;p&gt;Reason: {0}&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="522" />
+      <source>MicroPython Firmware for BBC micro:bit V1</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="526" />
+      <source>MicroPython Firmware for BBC micro:bit V2</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="541" />
+      <location filename="../MicroPython/MicrobitDevices.py" line="530" />
+      <source>DAPLink Firmware</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/MicrobitDevices.py" line="537" />
       <source>MicroPython Firmware</source>
       <translation type="unfinished" />
     </message>
@@ -61620,98 +61710,129 @@
   <context>
     <name>PyBoardDevice</name>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="79" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="80" />
       <source>PyBoard</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="194" />
-      <source>Workspace Directory</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/PyBoardDevices.py" line="195" />
+      <source>Workspace Directory</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/PyBoardDevices.py" line="196" />
       <source>Python files for PyBoard can be edited in place, if the device volume is locally available. Such a volume was not found. In place editing will not be available.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="232" />
-      <source>Activate Bootloader</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
       <location filename="../MicroPython/PyBoardDevices.py" line="235" />
+      <source>Activate Bootloader</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/PyBoardDevices.py" line="238" />
       <source>List DFU-capable Devices</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="399" />
-      <location filename="../MicroPython/PyBoardDevices.py" line="386" />
-      <location filename="../MicroPython/PyBoardDevices.py" line="239" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="423" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="242" />
+      <source>Show MicroPython Versions</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/PyBoardDevices.py" line="403" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="390" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="245" />
       <source>Flash MicroPython Firmware</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="244" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="248" />
       <source>MicroPython Flash Instructions</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="286" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="290" />
       <source>dfu-util not available</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="287" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="291" />
       <source>The dfu-util firmware flashing tool &lt;b&gt;dfu-util&lt;/b&gt; cannot be found or is not executable. Ensure it is in the search path or configure it on the MicroPython configuration page.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="307" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="311" />
       <source>&lt;h3&gt;Enable DFU Mode&lt;/h3&gt;&lt;p&gt;1. Disconnect everything from your board&lt;/p&gt;&lt;p&gt;2. Disconnect your board&lt;/p&gt;&lt;p&gt;3. Connect the DFU/BOOT0 pin with a 3.3V pin&lt;/p&gt;&lt;p&gt;4. Re-connect your board&lt;/p&gt;&lt;hr /&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="317" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="321" />
       <source>&lt;p&gt;&lt;b&gt;Warning:&lt;/b&gt; Make sure that all other DFU capable devices except your PyBoard are disconnected.&lt;hr /&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="323" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="327" />
       <source>&lt;p&gt;Press &lt;b&gt;OK&lt;/b&gt; to continue...&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="326" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="330" />
       <source>Enable DFU mode</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="337" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="341" />
       <source>&lt;h3&gt;Disable DFU Mode&lt;/h3&gt;&lt;p&gt;1. Disconnect your board&lt;/p&gt;&lt;p&gt;2. Remove the DFU jumper&lt;/p&gt;&lt;p&gt;3. Re-connect your board&lt;/p&gt;&lt;hr /&gt;&lt;p&gt;Press &lt;b&gt;OK&lt;/b&gt; to continue...&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="345" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="349" />
       <source>Disable DFU mode</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="398" />
-      <location filename="../MicroPython/PyBoardDevices.py" line="363" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="402" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="367" />
       <source>'dfu-util' Output</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="363" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="367" />
       <source>List DFU capable Devices</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/PyBoardDevices.py" line="388" />
+      <location filename="../MicroPython/PyBoardDevices.py" line="392" />
       <source>MicroPython Firmware Files (*.dfu);;All Files (*)</source>
       <translation type="unfinished" />
     </message>
+    <message>
+      <location filename="../MicroPython/PyBoardDevices.py" line="424" />
+      <source>The firmware of the connected device cannot be determined or the board does not run MicroPython. Aborting...</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/PyBoardDevices.py" line="456" />
+      <source>unknown</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/PyBoardDevices.py" line="462" />
+      <source>&lt;h4&gt;MicroPython Version Information&lt;/h4&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;Installed:&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Available:&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/PyBoardDevices.py" line="470" />
+      <source>&lt;p&gt;&lt;b&gt;Update available!&lt;/b&gt;&lt;/p&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/PyBoardDevices.py" line="474" />
+      <source>MicroPython Version</source>
+      <translation type="unfinished" />
+    </message>
   </context>
   <context>
     <name>PyCoverageDialog</name>
@@ -66747,68 +66868,68 @@
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="183" />
-      <location filename="../MicroPython/RP2040Devices.py" line="128" />
+      <location filename="../MicroPython/RP2040Devices.py" line="184" />
+      <location filename="../MicroPython/RP2040Devices.py" line="129" />
       <source>Show MicroPython Versions</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="131" />
+      <location filename="../MicroPython/RP2040Devices.py" line="132" />
       <source>Activate Bootloader</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="134" />
+      <location filename="../MicroPython/RP2040Devices.py" line="135" />
       <source>Flash MicroPython Firmware</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="184" />
+      <location filename="../MicroPython/RP2040Devices.py" line="185" />
       <source>The firmware of the connected device cannot be determined or the board does not run MicroPython. Aborting...</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="223" />
+      <location filename="../MicroPython/RP2040Devices.py" line="222" />
       <source>unknown</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="229" />
-      <source>&lt;h4&gt;MicroPython Version Information&lt;/h4&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;Installed:&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Available:&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;td&gt;&lt;/td&gt;{2}&lt;/tr&gt;&lt;/table&gt;</source>
-      <translation type="unfinished" />
-    </message>
-    <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="238" />
+      <location filename="../MicroPython/RP2040Devices.py" line="228" />
+      <source>&lt;h4&gt;MicroPython Version Information&lt;/h4&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;Installed:&lt;/td&gt;&lt;td&gt;{0}&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Available:&lt;/td&gt;&lt;td&gt;{1}&lt;/td&gt;&lt;td&gt;{2}&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</source>
+      <translation type="unfinished" />
+    </message>
+    <message>
+      <location filename="../MicroPython/RP2040Devices.py" line="237" />
       <source>({0})</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="247" />
+      <location filename="../MicroPython/RP2040Devices.py" line="246" />
       <source>&lt;p&gt;&lt;b&gt;Update available!&lt;/b&gt;&lt;/p&gt;</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="251" />
+      <location filename="../MicroPython/RP2040Devices.py" line="250" />
       <source>MicroPython Version</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="274" />
+      <location filename="../MicroPython/RP2040Devices.py" line="273" />
       <source>MicroPython Firmware</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="279" />
+      <location filename="../MicroPython/RP2040Devices.py" line="277" />
       <source>Pimoroni Pico Firmware</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="283" />
+      <location filename="../MicroPython/RP2040Devices.py" line="280" />
       <source>CircuitPython Firmware</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/RP2040Devices.py" line="287" />
+      <location filename="../MicroPython/RP2040Devices.py" line="284" />
       <source>CircuitPython Libraries</source>
       <translation type="unfinished" />
     </message>
@@ -70372,32 +70493,32 @@
   <context>
     <name>ShowModulesDialog</name>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/ShowModulesDialog.py" line="82" />
+      <location filename="../MicroPython/ShowModulesDialog.py" line="87" />
       <source>Showing {0} of {1} modules/packages</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/ShowModulesDialog.ui" line="0" />
+      <location filename="../MicroPython/ShowModulesDialog.ui" line="0" />
       <source>Available Modules</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/ShowModulesDialog.ui" line="0" />
+      <location filename="../MicroPython/ShowModulesDialog.ui" line="0" />
       <source>Filter:</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/ShowModulesDialog.ui" line="0" />
+      <location filename="../MicroPython/ShowModulesDialog.ui" line="0" />
       <source>Enter a string used to filter the list below.</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/ShowModulesDialog.ui" line="0" />
+      <location filename="../MicroPython/ShowModulesDialog.ui" line="0" />
       <source>Enter Filter String</source>
       <translation type="unfinished" />
     </message>
     <message>
-      <location filename="../MicroPython/CircuitPythonUpdater/ShowModulesDialog.ui" line="0" />
+      <location filename="../MicroPython/ShowModulesDialog.ui" line="0" />
       <source>Press to apply the entered filter.</source>
       <translation type="unfinished" />
     </message>

eric ide

mercurial