micropython-stubber 1.20.0__py3-none-any.whl → 1.20.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {micropython_stubber-1.20.0.dist-info → micropython_stubber-1.20.2.dist-info}/METADATA +6 -6
- {micropython_stubber-1.20.0.dist-info → micropython_stubber-1.20.2.dist-info}/RECORD +58 -51
- mpflash/README.md +54 -35
- mpflash/libusb_flash.ipynb +203 -203
- mpflash/mpflash/add_firmware.py +98 -0
- mpflash/mpflash/ask_input.py +106 -114
- mpflash/mpflash/cli_download.py +58 -37
- mpflash/mpflash/cli_flash.py +77 -35
- mpflash/mpflash/cli_group.py +14 -12
- mpflash/mpflash/cli_list.py +40 -4
- mpflash/mpflash/cli_main.py +20 -8
- mpflash/mpflash/common.py +125 -12
- mpflash/mpflash/config.py +2 -0
- mpflash/mpflash/connected.py +74 -0
- mpflash/mpflash/download.py +67 -50
- mpflash/mpflash/downloaded.py +9 -9
- mpflash/mpflash/flash.py +2 -2
- mpflash/mpflash/flash_esp.py +2 -2
- mpflash/mpflash/flash_uf2.py +16 -8
- mpflash/mpflash/flash_uf2_linux.py +5 -16
- mpflash/mpflash/flash_uf2_macos.py +78 -0
- mpflash/mpflash/flash_uf2_windows.py +1 -1
- mpflash/mpflash/list.py +58 -57
- mpflash/mpflash/mpboard_id/__init__.py +37 -44
- mpflash/mpflash/mpboard_id/add_boards.py +255 -0
- mpflash/mpflash/mpboard_id/board.py +37 -0
- mpflash/mpflash/mpboard_id/board_id.py +50 -43
- mpflash/mpflash/mpboard_id/board_info.zip +0 -0
- mpflash/mpflash/mpboard_id/store.py +42 -0
- mpflash/mpflash/mpremoteboard/__init__.py +18 -6
- mpflash/mpflash/mpremoteboard/runner.py +12 -12
- mpflash/mpflash/uf2disk.py +12 -0
- mpflash/mpflash/vendor/basicgit.py +288 -0
- mpflash/mpflash/vendor/dfu.py +1 -0
- mpflash/mpflash/vendor/versions.py +7 -3
- mpflash/mpflash/worklist.py +71 -48
- mpflash/poetry.lock +163 -137
- mpflash/pyproject.toml +18 -15
- stubber/__init__.py +1 -1
- stubber/board/createstubs.py +4 -3
- stubber/board/createstubs_db.py +5 -7
- stubber/board/createstubs_db_min.py +1 -1
- stubber/board/createstubs_db_mpy.mpy +0 -0
- stubber/board/createstubs_mem.py +6 -7
- stubber/board/createstubs_mem_min.py +1 -1
- stubber/board/createstubs_mem_mpy.mpy +0 -0
- stubber/board/createstubs_min.py +2 -2
- stubber/board/createstubs_mpy.mpy +0 -0
- stubber/board/modulelist.txt +1 -0
- stubber/commands/get_core_cmd.py +7 -6
- stubber/commands/get_docstubs_cmd.py +8 -3
- stubber/commands/get_frozen_cmd.py +5 -2
- stubber/publish/publish.py +18 -7
- stubber/utils/makeversionhdr.py +3 -2
- stubber/utils/versions.py +2 -1
- mpflash/mpflash/mpboard_id/board_info.csv +0 -2213
- mpflash/mpflash/mpboard_id/board_info.json +0 -19910
- {micropython_stubber-1.20.0.dist-info → micropython_stubber-1.20.2.dist-info}/LICENSE +0 -0
- {micropython_stubber-1.20.0.dist-info → micropython_stubber-1.20.2.dist-info}/WHEEL +0 -0
- {micropython_stubber-1.20.0.dist-info → micropython_stubber-1.20.2.dist-info}/entry_points.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: micropython-stubber
|
3
|
-
Version: 1.20.
|
3
|
+
Version: 1.20.2
|
4
4
|
Summary: Tooling to create and maintain stubs for MicroPython
|
5
5
|
Home-page: https://github.com/Josverl/micropython-stubber#readme
|
6
6
|
License: MIT
|
@@ -18,16 +18,16 @@ Classifier: Programming Language :: Python :: Implementation :: MicroPython
|
|
18
18
|
Classifier: Topic :: Software Development :: Build Tools
|
19
19
|
Classifier: Topic :: Text Editors :: Integrated Development Environments (IDE)
|
20
20
|
Requires-Dist: autoflake (>=1.7,<3.0)
|
21
|
-
Requires-Dist: black (>=22.10,<
|
21
|
+
Requires-Dist: black (>=22.10,<25.0)
|
22
22
|
Requires-Dist: cachetools (>=5.3.0,<6.0.0)
|
23
23
|
Requires-Dist: click (>=8.1.3,<9.0.0)
|
24
24
|
Requires-Dist: executing (>=2.0.1,<3.0.0)
|
25
25
|
Requires-Dist: importlib-metadata (>=1.0,<2.0) ; python_version < "3.8"
|
26
26
|
Requires-Dist: libcst (>=1.1.0,<2.0.0)
|
27
27
|
Requires-Dist: loguru (>=0.6,<0.8)
|
28
|
-
Requires-Dist: mpflash (>=0.
|
28
|
+
Requires-Dist: mpflash (>=0.7.4,<0.8.0)
|
29
29
|
Requires-Dist: mpremote (>=1.22.0,<2.0.0)
|
30
|
-
Requires-Dist: mypy (==1.
|
30
|
+
Requires-Dist: mypy (==1.9.0)
|
31
31
|
Requires-Dist: mypy-gitlab-code-quality (>=1.1.0,<2.0.0)
|
32
32
|
Requires-Dist: packaging (>=21.3,<24.0)
|
33
33
|
Requires-Dist: pipx (>=1.1.0,<2.0.0)
|
@@ -129,8 +129,8 @@ cd my_stub_folder
|
|
129
129
|
mkdir all-stubs
|
130
130
|
|
131
131
|
# clone the micropython repo's and switch to a specific version
|
132
|
-
stubber clone
|
133
|
-
stubber switch
|
132
|
+
stubber clone --add-stubs
|
133
|
+
stubber switch v1.22.2
|
134
134
|
|
135
135
|
# get the document stubs for the current version ( v1.18 )
|
136
136
|
stubber get-docstubs
|
@@ -1,63 +1,70 @@
|
|
1
|
-
mpflash/libusb_flash.ipynb,sha256=
|
1
|
+
mpflash/libusb_flash.ipynb,sha256=7RGtGg1mPPMWrfJOobOfYYwAAhsFpykpTJtfNwevY9o,6631
|
2
2
|
mpflash/mpflash/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
3
|
-
mpflash/mpflash/
|
4
|
-
mpflash/mpflash/
|
5
|
-
mpflash/mpflash/
|
6
|
-
mpflash/mpflash/
|
7
|
-
mpflash/mpflash/
|
8
|
-
mpflash/mpflash/
|
9
|
-
mpflash/mpflash/
|
10
|
-
mpflash/mpflash/
|
11
|
-
mpflash/mpflash/
|
12
|
-
mpflash/mpflash/
|
3
|
+
mpflash/mpflash/add_firmware.py,sha256=u_g9mID557fptLEJ1Nld9n27V1R1og8uEkadm0O3YTw,3435
|
4
|
+
mpflash/mpflash/ask_input.py,sha256=e54WfgktG7Ff8dBUknXioROq3lPNZ-eacUjfmUvFfS0,8496
|
5
|
+
mpflash/mpflash/cli_download.py,sha256=6ctC4ga6q2LcpHUHMrz1trbePziQpuIFPbjcJnc3K7E,3645
|
6
|
+
mpflash/mpflash/cli_flash.py,sha256=QHEb-e2ABjISfuGCWpTxOM7kkcTZSQxBXmVaWh3WVnE,7074
|
7
|
+
mpflash/mpflash/cli_group.py,sha256=-qkR4ou7bmIwfDIzyL1s34z6ya1wckKtL22nanvyQGU,1974
|
8
|
+
mpflash/mpflash/cli_list.py,sha256=Mdaf13gKZCoLp8Y2ja0L5rYMzkE_t3d4r62bF7isI3E,1997
|
9
|
+
mpflash/mpflash/cli_main.py,sha256=yABFFf45TpPMcC1qEVARAWe4EI9zui2pUXjoPms0mq8,1030
|
10
|
+
mpflash/mpflash/common.py,sha256=kanbO22SQDWb4ASQG8vLF0Z83ahujKPbrsCw3llN5T4,5594
|
11
|
+
mpflash/mpflash/config.py,sha256=hBc1Hf4XQ0YIoeiPBbannnqDg0C7226Y7Vu8o4jUkBQ,495
|
12
|
+
mpflash/mpflash/connected.py,sha256=CBG_DJ33OPWAPbX-ICQpL1LcFOhNYpLUSB0Q5v7gi9s,3029
|
13
|
+
mpflash/mpflash/download.py,sha256=axAs30i7VZ0jQXY9MVOQB49JH6OCFxy5_zERfysF33I,11421
|
14
|
+
mpflash/mpflash/downloaded.py,sha256=IYMyx_67paKFSKOg3whgwsWf8IlHaLgpmSlukMT7V9Q,3804
|
13
15
|
mpflash/mpflash/errors.py,sha256=Q5LR12Wo8iUCg5n_qq4GjdBdBflbvCOdKsRJ5InYRfI,96
|
14
|
-
mpflash/mpflash/flash.py,sha256=
|
15
|
-
mpflash/mpflash/flash_esp.py,sha256=
|
16
|
+
mpflash/mpflash/flash.py,sha256=JoskuwaHVYqeG4YW8kgbv26vPFnqDmkTz1VRs-pTRiY,2468
|
17
|
+
mpflash/mpflash/flash_esp.py,sha256=dEc_B7-f1BMUGBMrwIm83ulcCqaS5MlrPAp3FCNgNfk,2311
|
16
18
|
mpflash/mpflash/flash_stm32.py,sha256=d4BoQl3a9Tchnvn2ZTuq2MpYBB4MTaRukwtEncI95k0,823
|
17
19
|
mpflash/mpflash/flash_stm32_cube.py,sha256=w7aGWjReeWUKl0Q3ZjXH8BRqNO1Tk9AO7gtRNUg1c9Y,3970
|
18
20
|
mpflash/mpflash/flash_stm32_dfu.py,sha256=G70EZodWb-aRi507Jxbys-VEwbBGU1oZacow3_nq-d4,2972
|
19
|
-
mpflash/mpflash/flash_uf2.py,sha256=
|
21
|
+
mpflash/mpflash/flash_uf2.py,sha256=FFO2zpKFPdpEDi4aK1-JFsvPi8KEKLXXuOt_lXtI9tk,2508
|
20
22
|
mpflash/mpflash/flash_uf2_boardid.py,sha256=WZKucGu_hJ8ymb236uuZbiR6pD6AA_l4LA-7LwtQhq8,414
|
21
|
-
mpflash/mpflash/flash_uf2_linux.py,sha256=
|
22
|
-
mpflash/mpflash/
|
23
|
-
mpflash/mpflash/
|
23
|
+
mpflash/mpflash/flash_uf2_linux.py,sha256=Oy9V4g7JSuks2hHFeO_OHdBKSGktbqZOtsivuxfl-xg,4055
|
24
|
+
mpflash/mpflash/flash_uf2_macos.py,sha256=JButLjccuKlVyArwNkHDGjNMB_9ezyTKlbCWNia-R5Y,2696
|
25
|
+
mpflash/mpflash/flash_uf2_windows.py,sha256=94YoO2UIzfyJs4CPJ9sjG_WY26SX8aUPl9mf9R9W5xk,1093
|
26
|
+
mpflash/mpflash/list.py,sha256=0TawTkwhjKPPj7nTHoDn8nQ54WOkGRurP1BJVeg956g,2963
|
24
27
|
mpflash/mpflash/logger.py,sha256=dI_H_a7EOdQJyvoeRHQuYeZuTKYVUS3DUPTLhE9rkdM,1098
|
25
|
-
mpflash/mpflash/mpboard_id/__init__.py,sha256=
|
26
|
-
mpflash/mpflash/mpboard_id/
|
27
|
-
mpflash/mpflash/mpboard_id/
|
28
|
-
mpflash/mpflash/mpboard_id/
|
29
|
-
mpflash/mpflash/
|
28
|
+
mpflash/mpflash/mpboard_id/__init__.py,sha256=QRLVUpeiXeiY3P-im2Bv8zX8xGS_MIqiH-3svuVoWyY,3576
|
29
|
+
mpflash/mpflash/mpboard_id/add_boards.py,sha256=OWclyLWf9L-pCVmZ22b-xQYfvi3yQVsJHmGMgMzWxoU,9684
|
30
|
+
mpflash/mpflash/mpboard_id/board.py,sha256=CwtBux8y7GDUe7CADVxL8YefGRl9Fg8OAJBUhgaBYCI,1151
|
31
|
+
mpflash/mpflash/mpboard_id/board_id.py,sha256=63K91S_KWdSL5vHkZhpU-ibOhpOrUt0YPwxDsUBEmnc,2489
|
32
|
+
mpflash/mpflash/mpboard_id/board_info.zip,sha256=F6YowS96DAqjten4ySe4MXgZwPtE-saZOUfY5OQkqKk,19759
|
33
|
+
mpflash/mpflash/mpboard_id/store.py,sha256=hhNTPlraQYH_Tx3syoi_NBx8z13efkgXn433OZ2GjpU,1462
|
34
|
+
mpflash/mpflash/mpremoteboard/__init__.py,sha256=fJ_N1F6R3CfP9F7pmocb5l8yRvzmSmtHi4u_uTQHR1w,7683
|
30
35
|
mpflash/mpflash/mpremoteboard/mpy_fw_info.py,sha256=6AQbN3jtQgllqWQYl4e-63KeEtV08EXk8_JnM6XBkvo,4554
|
31
|
-
mpflash/mpflash/mpremoteboard/runner.py,sha256
|
32
|
-
mpflash/mpflash/
|
36
|
+
mpflash/mpflash/mpremoteboard/runner.py,sha256=-PgzAeBGbyXaAUlwyiw4mcINsP2U1XRRjP1_QdBrxpg,4786
|
37
|
+
mpflash/mpflash/uf2disk.py,sha256=4_P2l-kedM7VSliA2u706LQLxvu3xWSod1-lj-xjZis,298
|
38
|
+
mpflash/mpflash/vendor/basicgit.py,sha256=sflgCv7apLbV2w8F6gmhc-3kuqDnnS4tdGol6JT2uTM,9545
|
39
|
+
mpflash/mpflash/vendor/dfu.py,sha256=ZXMcE6aH4-43Wh4tbQT4U-q-BU3RUiL3JAxmP_QAK2s,5755
|
33
40
|
mpflash/mpflash/vendor/pydfu.py,sha256=_MdBRo1EeNeKDqFPSTB5tNL1jGSBJgsVeVjE5e7Pb8s,20542
|
34
41
|
mpflash/mpflash/vendor/readme.md,sha256=iIIZxuLUIGHQ0KODzYVtMezsztvyxCXcNJp_AzwTIPk,86
|
35
|
-
mpflash/mpflash/vendor/versions.py,sha256=
|
36
|
-
mpflash/mpflash/worklist.py,sha256=
|
37
|
-
mpflash/poetry.lock,sha256=
|
38
|
-
mpflash/pyproject.toml,sha256=
|
39
|
-
mpflash/README.md,sha256=
|
42
|
+
mpflash/mpflash/vendor/versions.py,sha256=thk1a5wEEhXIQoL0zZ7oooeFyQeSoI00CIUbZF0b3rI,3783
|
43
|
+
mpflash/mpflash/worklist.py,sha256=MKHDynttVP3lsHSfb7DEqeQ2mRV0da96lD4lIcS_zQY,5962
|
44
|
+
mpflash/poetry.lock,sha256=pHC8OhQvF5HWKPlw2Ysd39cL4XmJIqDX_Lwo-ngm1SY,121346
|
45
|
+
mpflash/pyproject.toml,sha256=xaMDME1wBJf-KTf_qqK2jlY7f3o3b1L8utaXw8ZK8PU,1651
|
46
|
+
mpflash/README.md,sha256=1SVCxNG88akXYv1BOeLvqwfI9phy8PdkfJ2sqxL_nkE,13680
|
40
47
|
mpflash/stm32_udev_rules.md,sha256=uxvC8FvU7K0R1QQUqCIvVfW9yfWYlIHhIVtirAjQVHE,2684
|
41
|
-
stubber/__init__.py,sha256=
|
48
|
+
stubber/__init__.py,sha256=tthm_uidIn3vd1lcFmiTkjY46W8_vGp6D9i0K_FJuds,49
|
42
49
|
stubber/basicgit.py,sha256=sflgCv7apLbV2w8F6gmhc-3kuqDnnS4tdGol6JT2uTM,9545
|
43
50
|
stubber/board/board_info.csv,sha256=K2VSmfR013fN-oJWkQUmiQ19w09dVwJHDquPy6QmMhY,8627
|
44
51
|
stubber/board/boot.py,sha256=XjWlKErU5nI1HJSugXIP_3hlwgRQboE6sJrpcbSygnk,1120
|
45
|
-
stubber/board/createstubs.py,sha256=
|
46
|
-
stubber/board/createstubs_db.py,sha256=
|
47
|
-
stubber/board/createstubs_db_min.py,sha256=
|
48
|
-
stubber/board/createstubs_db_mpy.mpy,sha256=
|
52
|
+
stubber/board/createstubs.py,sha256=eA1mHRmjhVENwtRjdcqmfC-x_U9peimZJETTBbaMagE,32739
|
53
|
+
stubber/board/createstubs_db.py,sha256=xZqBLLfdrMYdG_sW_ZzvoOEFTvPcT5R5S3zN1pWhtxo,30419
|
54
|
+
stubber/board/createstubs_db_min.py,sha256=J0HwWl5xsTcnq-K9hDU4V5aAxfOJqHHvNZTI-wxmLOs,11473
|
55
|
+
stubber/board/createstubs_db_mpy.mpy,sha256=KJeOJW1y_PKI9hrtJaUyy07Y_DiV57rT71bolf13L-E,9536
|
49
56
|
stubber/board/createstubs_lvgl.py,sha256=CTe7eq1ACRK_JJxavaqDD8znn29nSWJiHHTZ_ps6EhM,27217
|
50
57
|
stubber/board/createstubs_lvgl_min.py,sha256=jLkWYmeboI2A8feMC7pT7cYWttLejQTuX7WAEZCylhw,27207
|
51
58
|
stubber/board/createstubs_lvgl_mpy.mpy,sha256=ex-nlq2V5e8anQBJvRWEEc-FzU7nlwg5NSrZ8vOadIA,9267
|
52
|
-
stubber/board/createstubs_mem.py,sha256=
|
53
|
-
stubber/board/createstubs_mem_min.py,sha256=
|
54
|
-
stubber/board/createstubs_mem_mpy.mpy,sha256=
|
55
|
-
stubber/board/createstubs_min.py,sha256=
|
56
|
-
stubber/board/createstubs_mpy.mpy,sha256=
|
59
|
+
stubber/board/createstubs_mem.py,sha256=_SRTvJG78fbEDCFii82Cof6cJwF_xqkXeOFDIJAx9o8,28755
|
60
|
+
stubber/board/createstubs_mem_min.py,sha256=8tTzYjlgepjhepMLplN_8eOGLjEKY2NpffGPvGelP-I,11019
|
61
|
+
stubber/board/createstubs_mem_mpy.mpy,sha256=RVuULJrwFQT0zJqa3JYrnOdbbU51K7rDX8mKR6Elq3k,9118
|
62
|
+
stubber/board/createstubs_min.py,sha256=1x0SpetEPuH8rnRkF9mE3qltevkKlA4tE9DySXkmwFM,13570
|
63
|
+
stubber/board/createstubs_mpy.mpy,sha256=spYC-x1c2zOOzVz2n-2roqFCcMNNFwsDjUsKPFuCuKk,12236
|
57
64
|
stubber/board/fw_info.py,sha256=6AQbN3jtQgllqWQYl4e-63KeEtV08EXk8_JnM6XBkvo,4554
|
58
65
|
stubber/board/info.py,sha256=b7SOPZHVsVhaayKCwVkFZlYu0BW-UFI7LuG1Eop9480,5629
|
59
66
|
stubber/board/main.py,sha256=f6V3tdt6sPZVLuwemT-NLuK9GySfW2c2J6PJMOOWQQw,413
|
60
|
-
stubber/board/modulelist.txt,sha256=
|
67
|
+
stubber/board/modulelist.txt,sha256=DUD4wbJ2YSOBkajklW6CFeoyUOwlVAs_Qc_-r3WXUW0,2780
|
61
68
|
stubber/board/pyrightconfig.json,sha256=6oHS4aDOfwKBAFeUPsCGJzEXpUgBZsPaF0M4P-N26D4,1376
|
62
69
|
stubber/bulk/mcu_stubber.py,sha256=_1z0LUzcMbEIXIYInMJcAJZbBPTI8yCHgd1-1nlMscM,16379
|
63
70
|
stubber/codemod/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -78,9 +85,9 @@ stubber/commands/cli.py,sha256=pHtViupghgqKMxbyk5_Zz-qHx6i-BGdnTqRO-kngH2E,1850
|
|
78
85
|
stubber/commands/clone_cmd.py,sha256=mKTfB9eXKX06lTYyon1VioEDIfTPX5dYp-r9Qo87qIg,2673
|
79
86
|
stubber/commands/config_cmd.py,sha256=8g80QAuqBpYpivf35M2XcNxTOqapCRrnIATyen4cg5I,993
|
80
87
|
stubber/commands/enrich_folder_cmd.py,sha256=aGkydAsjyM9LHB99bcjxz_jyDGgOmisZyysbDhZxres,1853
|
81
|
-
stubber/commands/get_core_cmd.py,sha256=
|
82
|
-
stubber/commands/get_docstubs_cmd.py,sha256=
|
83
|
-
stubber/commands/get_frozen_cmd.py,sha256=
|
88
|
+
stubber/commands/get_core_cmd.py,sha256=AsD53kuSJmiWUQ9g1d7qFLX7U-Ej_rtyjt3plOLNjjE,2277
|
89
|
+
stubber/commands/get_docstubs_cmd.py,sha256=AJkPlVmKRqm5f5ChkcQ3sF86adJdx9N_-P-cR0M1bNg,3001
|
90
|
+
stubber/commands/get_frozen_cmd.py,sha256=OyuTXRMbrGG4-CnQpzz9Itli9-dMO5WeEOtX8DIJptk,3941
|
84
91
|
stubber/commands/get_mcu_cmd.py,sha256=uDodn57wdc9rHt7WSmHCFI-zTT1XrebPEaWN-G43E2Y,2015
|
85
92
|
stubber/commands/merge_cmd.py,sha256=2gQYxqapVGD8WMBsqRES7xjIS8acu4hTyutr1OANpAo,1673
|
86
93
|
stubber/commands/publish_cmd.py,sha256=myvgP7Y-pb-nyrMVMelNmIVHbxeK4g1ZXmQtxASblkk,2910
|
@@ -113,7 +120,7 @@ stubber/publish/merge_docstubs.py,sha256=bo35onpFgcmcqExKSbpbZKprVs2D_feSy0awNZ0
|
|
113
120
|
stubber/publish/missing_class_methods.py,sha256=i_tPnGpEpmu53N3exPCrwR1HprxxBpgHgLAZSwJCb4o,1823
|
114
121
|
stubber/publish/package.py,sha256=9Op5nPJNOmjTv3QxVeaL86m6Aak2UlUgcQIcDGBbX5w,6320
|
115
122
|
stubber/publish/pathnames.py,sha256=O-9519j6FTIlmTFyDWqCxdG3k8MWhDI89rClBrgUONQ,1811
|
116
|
-
stubber/publish/publish.py,sha256=
|
123
|
+
stubber/publish/publish.py,sha256=Iguc0e6u0EZY8G33z7JafvKAp1CkvDIXFTBH8oDqNsc,4016
|
117
124
|
stubber/publish/pypi.py,sha256=Mu1F7Xx4e0NPWK1_Erck6QGEfdY8w67EBeWFi6JiAzk,1240
|
118
125
|
stubber/publish/stubpackage.py,sha256=45yquQiBlJhacYEOmAHP6BgDfl1EtUWjdDLx06rCWgE,44731
|
119
126
|
stubber/rst/__init__.py,sha256=5VcbDCotIICa2xnJDs_gw2sFXpjjGOZZbwCrNKXy1OE,293
|
@@ -132,16 +139,16 @@ stubber/update_fallback.py,sha256=NUxp1sN1-8BLPd0rpExTcYBppUXYWPP8dOcjNeLY2Zo,49
|
|
132
139
|
stubber/update_module_list.py,sha256=QJ-c2K1Wf2SQdpMeGvlVabasKqsN9ZQV4ye5PbSpsWE,4640
|
133
140
|
stubber/utils/__init__.py,sha256=nV9FsOZsJ_hXsyUv4j0Qqp-PKycxyIktU9IoLs4kQmQ,225
|
134
141
|
stubber/utils/config.py,sha256=Jg4eHhgKim4uP4IqZRWykRNiX1r-SXC2xSrbsVprGAA,4859
|
135
|
-
stubber/utils/makeversionhdr.py,sha256=
|
142
|
+
stubber/utils/makeversionhdr.py,sha256=dO8sWLAY_ifT1IJJ1-JJ2z_thvfqJnK3c1_bHF_UI28,1953
|
136
143
|
stubber/utils/manifest.py,sha256=XBYCkxtYVAdUcch1784eHPAXlXfyfjco4WnRXxBHZYA,3273
|
137
144
|
stubber/utils/post.py,sha256=oSFZdoP6JwEeAOvsBo3kTk7l8ff_AVtL2Y4VIjzujlE,2837
|
138
145
|
stubber/utils/repos.py,sha256=nNr6Wy-UfIivMPB-1dCzqLJMueqlwQbQA2ha882CnRs,5815
|
139
146
|
stubber/utils/stubmaker.py,sha256=qld_Wfm9f4EuzedXlX1Ky0i0BJdR75oOOTha13_ekz0,5238
|
140
147
|
stubber/utils/typed_config_toml.py,sha256=ikifCIZGNhS_uqsfp6IwIpxdtZqbLtywprjWG_Q0y8o,2629
|
141
|
-
stubber/utils/versions.py,sha256=
|
148
|
+
stubber/utils/versions.py,sha256=4cGr-4Nbgqzoi-iJC08b_LFZH-CiyTNODlT-ihv4ZE0,3901
|
142
149
|
stubber/variants.py,sha256=-o4TgotbKaCcYBdXkutPaBSR1JdxWmOAiuNT1UlahYc,3784
|
143
|
-
micropython_stubber-1.20.
|
144
|
-
micropython_stubber-1.20.
|
145
|
-
micropython_stubber-1.20.
|
146
|
-
micropython_stubber-1.20.
|
147
|
-
micropython_stubber-1.20.
|
150
|
+
micropython_stubber-1.20.2.dist-info/entry_points.txt,sha256=NQi_M36fgq5k6giSuASas3LrpF6CVdkzfvJC0ja73_g,55
|
151
|
+
micropython_stubber-1.20.2.dist-info/LICENSE,sha256=Fx9qrL45ayRXgH6QzttboqZEjKXms0w1t_b_nkOqYCU,1572
|
152
|
+
micropython_stubber-1.20.2.dist-info/METADATA,sha256=tOtMx82j-mRnlMlKbdPSSA_k-UWeJ6WXBbk92utyGdY,19107
|
153
|
+
micropython_stubber-1.20.2.dist-info/WHEEL,sha256=d2fvjOD7sXsVzChCqf0Ty0JbHKBaLYwDbGQDwQTnJ50,88
|
154
|
+
micropython_stubber-1.20.2.dist-info/RECORD,,
|
mpflash/README.md
CHANGED
@@ -1,15 +1,28 @@
|
|
1
|
-
#
|
2
|
-
|
1
|
+
# MPFLASH
|
2
|
+
[](https://pypi.org/project/mpflash/)
|
3
|
+
[](https://badgen.net/pypi/python/mpflash)
|
4
|
+
[](https://pepy.tech/project/mpflash)
|
3
5
|
|
4
|
-
This tool was created to be used in a CI/CD pipeline to automate the process of downloading and flashing MicroPython firmware to multiple boards, but it can also be used for manual flashing and development.
|
5
6
|
|
6
|
-
mpflash
|
7
|
+
`mpflash` is a command-line tool for working with MicroPython firmware. It provides features to help you flash and update Micropython on one or more .
|
7
8
|
|
9
|
+
This tool was initially created to be used in a CI/CD pipeline to automate the process of downloading and flashing MicroPython firmware to multiple boards, but it has been extend with a TUI to be used for manual downloadig, flashing and development.
|
10
|
+
|
11
|
+
`mpflash` has been tested on:
|
12
|
+
- OS: Windows x64, Linux X64, but not (yet) macOS.
|
13
|
+
- Micropython (hardware) ports:
|
14
|
+
- `rp2`, using `.uf2`, using filecopy (macos not tested yet)
|
15
|
+
- `samd`, using ` .uf2`, using filecopy (macos not tested yet)
|
16
|
+
- `esp32`, using `.bin`, using esptool,
|
17
|
+
- `esp8266`, using `.bin`, using esptool
|
18
|
+
- `stm32`, using ` .dfu`, using pydfu
|
19
|
+
|
20
|
+
Not yet implemented: `nrf`, `cc3200`, `mimxrt`
|
21
|
+
|
8
22
|
## Features
|
9
23
|
1. List the connected boards including their firmware details, in a tabular or json format
|
10
|
-
2. Download MicroPython firmware for
|
11
|
-
3. Flash one or all connected MicroPython boards with a specific firmware or version.
|
12
|
-
Tested ports: rp2, samd, esp32, esp32s3, esp8266 and stm32
|
24
|
+
2. Download MicroPython firmware for versions, and matching a specified board or matches your current attached board.
|
25
|
+
3. Flash one or all connected MicroPython boards with a specific firmware or version.
|
13
26
|
|
14
27
|
## Installation
|
15
28
|
To install mpflash, you can use pip: `pip install mpflash`
|
@@ -30,40 +43,39 @@ On Windows this will not be an issue, but on Linux you can use udev rules to gi
|
|
30
43
|
[See the stm32_permissions documentation](./stm32_udev_rules.md) for more information.
|
31
44
|
|
32
45
|
|
33
|
-
##
|
46
|
+
## Detailed usage
|
34
47
|
You can list the connected boards using the following command:
|
35
48
|
```bash
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
│
|
44
|
-
│
|
45
|
-
│
|
46
|
-
│
|
47
|
-
|
48
|
-
│ COM8 │ micropython │ esp32 │ ESP32_GENERIC_S3 │ ESP32S3 │ 1.23.0-preview │ 155 │
|
49
|
-
└────────┴─────────────┴─────────┴────────────────────┴─────────────┴────────────────┴───────┘
|
49
|
+
$> mpflash list
|
50
|
+
Connected boards
|
51
|
+
┏━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━┓
|
52
|
+
┃ Serial ┃Family ┃Port ┃Board ┃CPU ┃Version ┃build ┃
|
53
|
+
┡━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━┩
|
54
|
+
│ COM21 │micropython │rp2 │RPI_PICO │RP2040 │v1.23.0-preview │ 236 │
|
55
|
+
│ │ │ │Raspberry Pi Pico with RP2040 │ │ │ │
|
56
|
+
│ COM23 │micropython │rp2 │RPI_PICO_W │RP2040 │v1.23.0-preview │ 176 │
|
57
|
+
│ │ │ │Raspberry Pi Pico W with RP2040 │ │ │ │
|
58
|
+
│ COM9 │micropython │rp2 │ARDUINO_NANO_RP2040_CONNECT │RP2040 │v1.23.0-preview │ 341 │
|
59
|
+
│ │ │ │Arduino Nano RP2040 Connect with RP2040 │ │ │ │
|
60
|
+
└─────────┴─────────────┴──────┴───────────────────────────────────────────┴────────┴─────────────────┴──────┘
|
50
61
|
```
|
62
|
+
## Download the firmware
|
51
63
|
|
52
|
-
|
64
|
+
To download the MicroPython firmware for some boards, use the following command:
|
65
|
+
- `mpflash download` download the latest stable firmware for all connected boards
|
66
|
+
- `mpflash download --version preview` download the current preview for all connected boards
|
67
|
+
- `mpflash download --board ESP8266_GENERIC --board SEEED_WIO_TERMINAL` download these specific boards
|
68
|
+
- `mpflash download --version ? --board ?` prompt to select a specific version and board to download
|
53
69
|
|
54
|
-
|
55
|
-
# download the firmware
|
56
|
-
$ mpflash download --board ESP8266_GENERIC --board SEEED_WIO_TERMINAL
|
57
|
-
```
|
58
|
-
This will download the latest stable version of the MicroPython firmware for the boards and save it in the `firmware` directory.
|
70
|
+
These will try to download the prebuilt MicroPython firmware for the boards from https://micropython.org/download/ and save it in your downloads folder in the `firmware` directory.
|
59
71
|
The stable version (default) is determined based on the most recent published release,
|
60
|
-
other
|
72
|
+
other versions are `--version preview` and `--version x.y.z` to download the latest preview or version x.y.z respectively.
|
61
73
|
|
62
|
-
|
74
|
+
By default the firmware will be downloaded to your OS's preferred `Downloads/firmware` folder, but you can speciy a different directory using the `--dir` option.
|
63
75
|
|
64
|
-
```bash
|
65
76
|
The directory structure will be something like this:
|
66
|
-
|
77
|
+
|
78
|
+
``` text
|
67
79
|
Downloads/firmware
|
68
80
|
| firmware.jsonl
|
69
81
|
+---esp8266
|
@@ -74,9 +86,16 @@ Downloads/firmware
|
|
74
86
|
\---samd
|
75
87
|
SEEED_WIO_TERMINAL-v1.22.2.uf2
|
76
88
|
```
|
77
|
-
|
89
|
+
|
90
|
+
## Flashing the firmware
|
91
|
+
After you have downloaded a firmware you can flash the firmware to a board using the following command: `mpflash flash`
|
78
92
|
This will (try to) autodetect the connected boards, and determine the correct firmware to flash to each board.
|
79
93
|
|
94
|
+
- `mpflash flash` will flash the latest stable firmware to all connected boards.
|
95
|
+
- `mpflash flash --serial ? --board ?` will prompt to select a specific serial port and board to flash. (the firmware must be dowloaded earlier)
|
96
|
+
|
97
|
+
|
98
|
+
### Flashing all connected boards with the latest stable firmware
|
80
99
|
```bash
|
81
100
|
> mpflash flash
|
82
101
|
22:15:55 | ℹ️ - Using latest stable version: v1.22.2
|
@@ -158,8 +177,8 @@ Note that if no matching firmware can be found for a board, it will be skipped.
|
|
158
177
|
(For example, the PYBV11 and ESP32_GENERIC_S3 boards in the example above.)
|
159
178
|
|
160
179
|
## Issues and bug reports
|
161
|
-
mpflash is currently co-located in the [micropython-stubber](https://github.com/Josverl/micropython-stubber) repository.
|
162
|
-
Please report any issues or bugs in the [issue tracker](https://github.com/Josverl/micropython-stubber/issues)
|
180
|
+
mpflash is currently co-located in the [micropython-stubber](https://github.com/Josverl/micropython-stubber) repository.
|
181
|
+
Please report any issues or bugs in the [issue tracker](https://github.com/Josverl/micropython-stubber/issues) using the MPflash feedback template.
|
163
182
|
|
164
183
|
## License
|
165
184
|
mpflash is licensed under the MIT license. See the LICENSE file for more details.
|