diff --git a/.vs/RP2040_UPS_Loader/FileContentIndex/27ca0547-0c0b-48e0-8053-3e624442f9b8.vsidx b/.vs/RP2040_UPS_Loader/FileContentIndex/27ca0547-0c0b-48e0-8053-3e624442f9b8.vsidx new file mode 100644 index 0000000..04cb8a3 Binary files /dev/null and b/.vs/RP2040_UPS_Loader/FileContentIndex/27ca0547-0c0b-48e0-8053-3e624442f9b8.vsidx differ diff --git a/.vs/RP2040_UPS_Loader/FileContentIndex/381a7a83-b7dd-488c-9c89-64249921753e.vsidx b/.vs/RP2040_UPS_Loader/FileContentIndex/381a7a83-b7dd-488c-9c89-64249921753e.vsidx deleted file mode 100644 index bf0998f..0000000 Binary files a/.vs/RP2040_UPS_Loader/FileContentIndex/381a7a83-b7dd-488c-9c89-64249921753e.vsidx and /dev/null differ diff --git a/.vs/RP2040_UPS_Loader/FileContentIndex/392ef3bf-248f-4c29-8fc8-5d5217cea0f8.vsidx b/.vs/RP2040_UPS_Loader/FileContentIndex/392ef3bf-248f-4c29-8fc8-5d5217cea0f8.vsidx new file mode 100644 index 0000000..1c5ade7 Binary files /dev/null and b/.vs/RP2040_UPS_Loader/FileContentIndex/392ef3bf-248f-4c29-8fc8-5d5217cea0f8.vsidx differ diff --git a/.vs/RP2040_UPS_Loader/FileContentIndex/84bd7916-171a-4ce7-9f89-b960a6809033.vsidx b/.vs/RP2040_UPS_Loader/FileContentIndex/84bd7916-171a-4ce7-9f89-b960a6809033.vsidx new file mode 100644 index 0000000..ac9a03a Binary files /dev/null and b/.vs/RP2040_UPS_Loader/FileContentIndex/84bd7916-171a-4ce7-9f89-b960a6809033.vsidx differ diff --git a/.vs/RP2040_UPS_Loader/FileContentIndex/8572901c-2120-46be-a038-9034c980e693.vsidx b/.vs/RP2040_UPS_Loader/FileContentIndex/8572901c-2120-46be-a038-9034c980e693.vsidx deleted file mode 100644 index b94e249..0000000 Binary files a/.vs/RP2040_UPS_Loader/FileContentIndex/8572901c-2120-46be-a038-9034c980e693.vsidx and /dev/null differ diff --git a/.vs/RP2040_UPS_Loader/FileContentIndex/e8e81ae5-5c2a-4588-b522-333e43ab52f0.vsidx b/.vs/RP2040_UPS_Loader/FileContentIndex/e8e81ae5-5c2a-4588-b522-333e43ab52f0.vsidx deleted file mode 100644 index 14ef40e..0000000 Binary files a/.vs/RP2040_UPS_Loader/FileContentIndex/e8e81ae5-5c2a-4588-b522-333e43ab52f0.vsidx and /dev/null differ diff --git a/.vs/RP2040_UPS_Loader/FileContentIndex/ee3d21f1-a0bd-476c-9761-3bf8426b3ed3.vsidx b/.vs/RP2040_UPS_Loader/FileContentIndex/ee3d21f1-a0bd-476c-9761-3bf8426b3ed3.vsidx deleted file mode 100644 index db9df7e..0000000 Binary files a/.vs/RP2040_UPS_Loader/FileContentIndex/ee3d21f1-a0bd-476c-9761-3bf8426b3ed3.vsidx and /dev/null differ diff --git a/.vs/RP2040_UPS_Loader/FileContentIndex/eeed1a01-45cf-4462-8514-f6570e7e11ae.vsidx b/.vs/RP2040_UPS_Loader/FileContentIndex/eeed1a01-45cf-4462-8514-f6570e7e11ae.vsidx new file mode 100644 index 0000000..876b8a0 Binary files /dev/null and b/.vs/RP2040_UPS_Loader/FileContentIndex/eeed1a01-45cf-4462-8514-f6570e7e11ae.vsidx differ diff --git a/.vs/RP2040_UPS_Loader/v17/.wsuo b/.vs/RP2040_UPS_Loader/v17/.wsuo index 32e714c..1b9d150 100644 Binary files a/.vs/RP2040_UPS_Loader/v17/.wsuo and b/.vs/RP2040_UPS_Loader/v17/.wsuo differ diff --git a/.vs/RP2040_UPS_Loader/v17/DocumentLayout.backup.json b/.vs/RP2040_UPS_Loader/v17/DocumentLayout.backup.json index 5f6a6e6..de1106c 100644 --- a/.vs/RP2040_UPS_Loader/v17/DocumentLayout.backup.json +++ b/.vs/RP2040_UPS_Loader/v17/DocumentLayout.backup.json @@ -1,17 +1,17 @@ { "Version": 1, - "WorkspaceRootPath": "C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\", + "WorkspaceRootPath": "C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\", "Documents": [ { - "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\rp2040_Loader.py||{8B382828-6202-11D1-8870-0000F87579D2}", + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\rp2040_Loader.py||{8B382828-6202-11D1-8870-0000F87579D2}", "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:rp2040_Loader.py||{8B382828-6202-11D1-8870-0000F87579D2}" }, { - "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\Resources\\RP2040\\main.py||{8B382828-6202-11D1-8870-0000F87579D2}", + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\Resources\\RP2040\\main.py||{8B382828-6202-11D1-8870-0000F87579D2}", "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:Resources\\RP2040\\main.py||{8B382828-6202-11D1-8870-0000F87579D2}" }, { - "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\Releases\\CHANGE LOG.txt||{8B382828-6202-11D1-8870-0000F87579D2}", + "AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\Releases\\CHANGE LOG.txt||{8B382828-6202-11D1-8870-0000F87579D2}", "RelativeMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|solutionrelative:Releases\\CHANGE LOG.txt||{8B382828-6202-11D1-8870-0000F87579D2}" } ], @@ -22,50 +22,48 @@ "DocumentGroups": [ { "DockedWidth": 209, - "SelectedChildIndex": 2, + "SelectedChildIndex": 1, "Children": [ { "$type": "Bookmark", "Name": "ST:0:0:{e506b91c-c606-466a-90a9-123d1d1e12b3}" }, - { - "$type": "Document", - "DocumentIndex": 2, - "Title": "CHANGE LOG.txt", - "DocumentMoniker": "C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\Releases\\CHANGE LOG.txt", - "RelativeDocumentMoniker": "Releases\\CHANGE LOG.txt", - "ToolTip": "C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\Releases\\CHANGE LOG.txt", - "RelativeToolTip": "Releases\\CHANGE LOG.txt", - "ViewState": "AgIAAAYAAAAAAAAAAAAAACUAAAA+AAAAAAAAAA==", - "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003109|", - "WhenOpened": "2025-10-06T12:33:48.161Z", - "EditorCaption": "" - }, { "$type": "Document", "DocumentIndex": 0, "Title": "rp2040_Loader.py", - "DocumentMoniker": "C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\rp2040_Loader.py", + "DocumentMoniker": "C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\rp2040_Loader.py", "RelativeDocumentMoniker": "rp2040_Loader.py", - "ToolTip": "C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\rp2040_Loader.py", + "ToolTip": "C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\rp2040_Loader.py", "RelativeToolTip": "rp2040_Loader.py", - "ViewState": "AgIAAAMAAAAAAAAAAAAAAJEAAABAAAAAAAAAAA==", - "Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAANASURBVEhLtZVPaBxlGMZ/s7uTNazZMW3Y/BGxRFOkWsQU3VAPxoJ6KiKIItJDwTnkomhhK\u002BRg7En3losHFwlBRDx5KGgPHhQruhKaUChaiCbWuNrGtttunN3Z\u002Bb7v9TCb7GTI6HrwgZf55nln3ud9n\u002B9jBv5PiIgV51zXlTj3L3i0Uqksxclt7CkwPz8fp/fE7Oxs4Pv\u002BlSAIXq5UKtV4HiAVJ/4LHMexS6XSPtu2P3JdtxjP808C1Wo1MaIoFAqDEZEju5J7wXVd8Tyvp5ibm9tZr62t3ZiZmVl1Xfe\u002BaL3ECXpFuVymXC6zuLg4mE6nR4DD0XwmehNF3IooisXQ7lKptItfWFhYWllZ2cUlTlAsFveMqakpbNvG0xYb9TbrN1rcbBoymQyO42TjdRInSMJtz\u002Bedcz\u002Bwvnkbr\u002BmjlUKrgOF8ljMvPP3I8vKyHX0\u002BcYL4ydmO9bpif86m/OJkp3gYv27e4uzSL9np6emD0TqJAnFrtsMY4Zsff\u002BfUh99itMZoFV6VYstrMTAwcGe0TqIAgNYarTVWKsXSlS0\u002B/r7GhbU/efLQCEcPFnjq8Bh2GrRWaK0xxvDEZP1NaXwuElw7LyL7Evcgeorq\u002BQk\u002B\u002BHJ1x\u002B\u002BuNeHadO6NGPC\u002BDl9qXXqcoVNvJU4QteXcxVqny7DT7rrLGa2YGAYQ0C1oXQZ19dlEgSg2NhuYTqdGKdJiODCUY3w4z/hInvtHHZ47Os5LR34C5YFugvagXbs38WsatejdaoAKArQKuHuwn/dP\u002BPTLatgthNegBmoLjA\u002BmDdqHkdPJmxy1aCyfxXSsmDmWoz/4CtRvoGoQbID/MwS3Op03u1P03XMzUSCKYw\u002BN7mymc4fqJkwQWqE6haPr7ATYo5/2ZBFAM3\u002BA2vUGxx9uUpBPQgtMG/oOgZUFUeGHIZUD0nDXM9fIDD2WKBBHKpXCsiz6zGW4/l5Y3Pig2yAajECuCGOn3wbOA1XLsho9WQRgjEFrjZCWrtcdW/a/AkMnIdUPgGVZX1iW1SDpnxznonjj9dcuPVD47kHqn4Ui21PkJglGz7TtrPO8ZVln4\u002B/1DBFJi8irohor8tdFJVsXRNp/rItIVUROiMjx6PN/A\u002BOzH72MzdOgAAAAAElFTkSuQmCC", + "ViewState": "AgIAAHUAAAAAAAAAAAAAwKUAAAAAAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.002457|", "WhenOpened": "2025-07-10T14:11:57.024Z", "EditorCaption": "" }, + { + "$type": "Document", + "DocumentIndex": 2, + "Title": "CHANGE LOG.txt", + "DocumentMoniker": "C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\Releases\\CHANGE LOG.txt", + "RelativeDocumentMoniker": "Releases\\CHANGE LOG.txt", + "ToolTip": "C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\Releases\\CHANGE LOG.txt", + "RelativeToolTip": "Releases\\CHANGE LOG.txt", + "ViewState": "AgIAAAYAAAAAAAAAAAAAACUAAAA+AAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.003109|", + "WhenOpened": "2025-10-06T12:33:48.161Z" + }, { "$type": "Document", "DocumentIndex": 1, "Title": "main.py", - "DocumentMoniker": "C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\Resources\\RP2040\\main.py", + "DocumentMoniker": "C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\Resources\\RP2040\\main.py", "RelativeDocumentMoniker": "Resources\\RP2040\\main.py", - "ToolTip": "C:\\Users\\William\\Documents\\Git\\RP2040_UPS_Loader\\Resources\\RP2040\\main.py", + "ToolTip": "C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\Resources\\RP2040\\main.py", "RelativeToolTip": "Resources\\RP2040\\main.py", "ViewState": "AgIAAAAAAAAAAAAAAAAAABEAAABqAAAAAAAAAA==", - "Icon": "00000000-0000-0000-0000-000000000000.000000|iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAANASURBVEhLtZVPaBxlGMZ/s7uTNazZMW3Y/BGxRFOkWsQU3VAPxoJ6KiKIItJDwTnkomhhK\u002BRg7En3losHFwlBRDx5KGgPHhQruhKaUChaiCbWuNrGtttunN3Z\u002Bb7v9TCb7GTI6HrwgZf55nln3ud9n\u002B9jBv5PiIgV51zXlTj3L3i0Uqksxclt7CkwPz8fp/fE7Oxs4Pv\u002BlSAIXq5UKtV4HiAVJ/4LHMexS6XSPtu2P3JdtxjP808C1Wo1MaIoFAqDEZEju5J7wXVd8Tyvp5ibm9tZr62t3ZiZmVl1Xfe\u002BaL3ECXpFuVymXC6zuLg4mE6nR4DD0XwmehNF3IooisXQ7lKptItfWFhYWllZ2cUlTlAsFveMqakpbNvG0xYb9TbrN1rcbBoymQyO42TjdRInSMJtz\u002Bedcz\u002Bwvnkbr\u002BmjlUKrgOF8ljMvPP3I8vKyHX0\u002BcYL4ydmO9bpif86m/OJkp3gYv27e4uzSL9np6emD0TqJAnFrtsMY4Zsff\u002BfUh99itMZoFV6VYstrMTAwcGe0TqIAgNYarTVWKsXSlS0\u002B/r7GhbU/efLQCEcPFnjq8Bh2GrRWaK0xxvDEZP1NaXwuElw7LyL7Evcgeorq\u002BQk\u002B\u002BHJ1x\u002B\u002BuNeHadO6NGPC\u002BDl9qXXqcoVNvJU4QteXcxVqny7DT7rrLGa2YGAYQ0C1oXQZ19dlEgSg2NhuYTqdGKdJiODCUY3w4z/hInvtHHZ47Os5LR34C5YFugvagXbs38WsatejdaoAKArQKuHuwn/dP\u002BPTLatgthNegBmoLjA\u002BmDdqHkdPJmxy1aCyfxXSsmDmWoz/4CtRvoGoQbID/MwS3Op03u1P03XMzUSCKYw\u002BN7mymc4fqJkwQWqE6haPr7ATYo5/2ZBFAM3\u002BA2vUGxx9uUpBPQgtMG/oOgZUFUeGHIZUD0nDXM9fIDD2WKBBHKpXCsiz6zGW4/l5Y3Pig2yAajECuCGOn3wbOA1XLsho9WQRgjEFrjZCWrtcdW/a/AkMnIdUPgGVZX1iW1SDpnxznonjj9dcuPVD47kHqn4Ui21PkJglGz7TtrPO8ZVln4\u002B/1DBFJi8irohor8tdFJVsXRNp/rItIVUROiMjx6PN/A\u002BOzH72MzdOgAAAAAElFTkSuQmCC", - "WhenOpened": "2025-07-23T11:07:29.706Z", - "EditorCaption": "" + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.002457|", + "WhenOpened": "2025-07-23T11:07:29.706Z" } ] } diff --git a/.vs/RP2040_UPS_Loader/v17/DocumentLayout.json b/.vs/RP2040_UPS_Loader/v17/DocumentLayout.json index 38bb3ca..020e695 100644 --- a/.vs/RP2040_UPS_Loader/v17/DocumentLayout.json +++ b/.vs/RP2040_UPS_Loader/v17/DocumentLayout.json @@ -36,7 +36,7 @@ "RelativeDocumentMoniker": "rp2040_Loader.py", "ToolTip": "C:\\Users\\william\\Documents\\Git\\RP2040_UPS_Loader\\rp2040_Loader.py", "RelativeToolTip": "rp2040_Loader.py", - "ViewState": "AgIAACQAAAAAAAAAAAAAAEQAAAAaAAAAAAAAAA==", + "ViewState": "AgIAAHIAAAAAAAAAAAAAwKUAAAAAAAAAAAAAAA==", "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.002457|", "WhenOpened": "2025-07-10T14:11:57.024Z", "EditorCaption": "" diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite index e45dfd3..25361c9 100644 Binary files a/.vs/slnx.sqlite and b/.vs/slnx.sqlite differ diff --git a/Releases/CHANGE LOG.txt b/Releases/CHANGE LOG.txt index a739679..69896ef 100644 --- a/Releases/CHANGE LOG.txt +++ b/Releases/CHANGE LOG.txt @@ -41,3 +41,8 @@ Improvements: Bug Fixes: - Fixed support for the RP2350-ETH (Pico 2 platform) +RP Loader V1.2.0 - 08/10/2025 + +Improvements: +- Automatic reset of the microcontroller once the code is loaded + diff --git a/Releases/RP Loader V1.2.0.zip b/Releases/RP Loader V1.2.0.zip new file mode 100644 index 0000000..81beeee Binary files /dev/null and b/Releases/RP Loader V1.2.0.zip differ diff --git a/rp2040_Loader.py b/rp2040_Loader.py index f15d5f1..b2912ce 100644 --- a/rp2040_Loader.py +++ b/rp2040_Loader.py @@ -1,6 +1,7 @@ import os import json import subprocess +import time import tkinter as tk from tkinter import ttk from tkinter import filedialog, messagebox @@ -119,6 +120,21 @@ class RP2040UploaderApp: sys.argv = original_argv # Always restore original argv if success: + + # --- NEW: Soft reset the board --- + self.label.config(text="Resetting board...") + print("Resetting board...") + self.master.update() + + original_argv = sys.argv + sys.argv = ["mpremote", "connect", self.port, "reset"] + try: + mpremote_main() + except SystemExit: + pass + finally: + sys.argv = original_argv + time.sleep(0.4) self.label.config(text="DONE") self.master.update() messagebox.showinfo("Success", "All files uploaded successfully!") @@ -128,7 +144,7 @@ class RP2040UploaderApp: if __name__ == "__main__": root = tk.Tk() app = RP2040UploaderApp(root) - root.title("RP Loader V1.1.1") + root.title("RP Loader V1.2.0") root.iconbitmap(r'Resources/icon1.ico')