micrOSDevToolKit 2.19.0__py3-none-any.whl → 2.21.0__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.
Potentially problematic release.
This version of micrOSDevToolKit might be problematic. Click here for more details.
- micrOS/release_info/micrOS_ReleaseInfo/system_analysis_sum.json +35 -35
- micrOS/source/Common.py +5 -13
- micrOS/source/Config.py +5 -2
- micrOS/source/Espnow.py +101 -45
- micrOS/source/Files.py +50 -23
- micrOS/source/InterConnect.py +10 -5
- micrOS/source/Pacman.py +141 -0
- micrOS/source/Shell.py +1 -1
- micrOS/source/Tasks.py +59 -54
- micrOS/source/modules/LM_buzzer.py +1 -4
- micrOS/source/modules/LM_cct.py +2 -4
- micrOS/source/modules/LM_dimmer.py +1 -2
- micrOS/source/modules/LM_distance.py +1 -3
- micrOS/source/modules/LM_i2s_mic.py +1 -2
- micrOS/source/modules/LM_keychain.py +1 -2
- micrOS/source/modules/LM_light_sensor.py +1 -4
- micrOS/source/modules/LM_mqtt_client.py +13 -10
- micrOS/source/modules/LM_neopixel.py +1 -2
- micrOS/source/modules/LM_oled_ui.py +39 -41
- micrOS/source/modules/LM_oledui.py +58 -89
- micrOS/source/modules/LM_pacman.py +36 -44
- micrOS/source/modules/LM_presence.py +1 -2
- micrOS/source/modules/LM_rest.py +1 -2
- micrOS/source/modules/LM_rgb.py +1 -2
- micrOS/source/modules/LM_roboarm.py +3 -4
- micrOS/source/modules/LM_robustness.py +1 -2
- micrOS/source/modules/LM_telegram.py +1 -2
- micrOS/source/urequests.py +1 -1
- {microsdevtoolkit-2.19.0.dist-info → microsdevtoolkit-2.21.0.dist-info}/METADATA +153 -214
- {microsdevtoolkit-2.19.0.dist-info → microsdevtoolkit-2.21.0.dist-info}/RECORD +67 -67
- toolkit/DevEnvOTA.py +2 -2
- toolkit/DevEnvUSB.py +1 -1
- toolkit/dashboard_apps/SystemTest.py +17 -14
- toolkit/lib/micrOSClient.py +37 -15
- toolkit/lib/micrOSClientHistory.py +35 -1
- toolkit/simulator_lib/__pycache__/uos.cpython-312.pyc +0 -0
- toolkit/simulator_lib/uos.py +1 -0
- toolkit/workspace/precompiled/Common.mpy +0 -0
- toolkit/workspace/precompiled/Config.mpy +0 -0
- toolkit/workspace/precompiled/Espnow.mpy +0 -0
- toolkit/workspace/precompiled/Files.mpy +0 -0
- toolkit/workspace/precompiled/InterConnect.mpy +0 -0
- toolkit/workspace/precompiled/Pacman.mpy +0 -0
- toolkit/workspace/precompiled/Shell.mpy +0 -0
- toolkit/workspace/precompiled/Tasks.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_buzzer.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_cct.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_dimmer.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_distance.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_i2s_mic.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_keychain.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_light_sensor.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_mqtt_client.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_neopixel.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_oled_ui.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_oledui.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_pacman.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_presence.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_rest.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_rgb.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_roboarm.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_robustness.py +1 -2
- toolkit/workspace/precompiled/modules/LM_telegram.mpy +0 -0
- micrOS/source/modules/LM_pet_feeder.py +0 -78
- toolkit/workspace/precompiled/modules/LM_pet_feeder.py +0 -78
- {microsdevtoolkit-2.19.0.data → microsdevtoolkit-2.21.0.data}/scripts/devToolKit.py +0 -0
- {microsdevtoolkit-2.19.0.dist-info → microsdevtoolkit-2.21.0.dist-info}/WHEEL +0 -0
- {microsdevtoolkit-2.19.0.dist-info → microsdevtoolkit-2.21.0.dist-info}/licenses/LICENSE +0 -0
- {microsdevtoolkit-2.19.0.dist-info → microsdevtoolkit-2.21.0.dist-info}/top_level.txt +0 -0
|
@@ -31,23 +31,24 @@ micrOS/micropython/esp32s3-8MBflash-20241129-v1.24.1.bin,sha256=Att5Tefiky4cDYBh
|
|
|
31
31
|
micrOS/micropython/esp32s3_spiram_oct-20241129-v1.24.1.bin,sha256=VbOF_F0YeqttkQd2ePTW66Jd34RU8u9ccFfcv8kxO_U,1662672
|
|
32
32
|
micrOS/micropython/rpi-pico-w-20241129-v1.24.1.uf2,sha256=v4aYIbWaE94_f6DDzBWS-a9L1BzlcdkZwld9R7bOVA4,1727488
|
|
33
33
|
micrOS/micropython/tinypico-20241129-v1.24.1.bin,sha256=Kf3cr766a5SK99CZy8bwdWjwvAZxls3tBYvaHBsw7ac,1527200
|
|
34
|
-
micrOS/release_info/micrOS_ReleaseInfo/system_analysis_sum.json,sha256=
|
|
34
|
+
micrOS/release_info/micrOS_ReleaseInfo/system_analysis_sum.json,sha256=hCygQauU89dR9vLlp2xTkmeRudATsc9v8idyw-wVfuI,6327
|
|
35
35
|
micrOS/source/.DS_Store,sha256=1lFlJ5EFymdzGAUAaI30vcaaLHt3F1LwpG7xILf9jsM,6148
|
|
36
|
-
micrOS/source/Common.py,sha256=
|
|
37
|
-
micrOS/source/Config.py,sha256=
|
|
36
|
+
micrOS/source/Common.py,sha256=Ef6Pk2Esx0SpNbxV951NilMBUqFf2LbGSAeKUSNovxs,16585
|
|
37
|
+
micrOS/source/Config.py,sha256=IdKoyawKSIGwhyeD34Gl9rIHASmoweC_3gQdrn8dyms,9311
|
|
38
38
|
micrOS/source/Debug.py,sha256=in2tx6Dw8EqeKYTrJpLxSevpoIrJjxlH17JLrTui1o8,3287
|
|
39
|
-
micrOS/source/Espnow.py,sha256=
|
|
40
|
-
micrOS/source/Files.py,sha256=
|
|
39
|
+
micrOS/source/Espnow.py,sha256=fzvd54XJXrofeWfDRSWwOqKOr36_jzCVw32KQ0qO-ZM,15072
|
|
40
|
+
micrOS/source/Files.py,sha256=IqzRjVFKZt7tNJGqWY_xqxY8IXX0W_7IOpJvyKGkHHU,6445
|
|
41
41
|
micrOS/source/Hooks.py,sha256=XdHCo2avht0wUj5xT1oM4tPGZM4uZ2DYmaCOFHYIpjM,4190
|
|
42
|
-
micrOS/source/InterConnect.py,sha256=
|
|
42
|
+
micrOS/source/InterConnect.py,sha256=_UsUm73Di-HG5tD2YuT69H3bUkIzCnqcYZbrVyCVyIA,11377
|
|
43
43
|
micrOS/source/Interrupts.py,sha256=kLDsByjoGeEiDk_0yV7iAvsZlKs9uFqPcAKkdNNR6HU,7543
|
|
44
44
|
micrOS/source/Logger.py,sha256=QSABn-dFDBDQFxgQzu1vpWnqHFg7UjJ-6utMmpEWqes,3979
|
|
45
45
|
micrOS/source/Network.py,sha256=bFG_OE1baHQFJgpcNC_KAKTGPQlgN7pisV07CI30k1g,10165
|
|
46
46
|
micrOS/source/Notify.py,sha256=5_Sqy2FeBVG6HznC48Rgg812AglGjO8pkDYGSpp5qSg,2637
|
|
47
|
+
micrOS/source/Pacman.py,sha256=9IqgO5bHWQi5wPiXYkyWZJZd3BWHKdLwS054Gl7iwdI,5230
|
|
47
48
|
micrOS/source/Scheduler.py,sha256=EhOdDQqN4V1G0TD2jU5cmjUjY_g-sU8NwFoUfniBKF0,9628
|
|
48
49
|
micrOS/source/Server.py,sha256=WSDW2BaCkTxkDruKZXW98jhtQXHKaCz7Em1oPYQL4Kk,16869
|
|
49
|
-
micrOS/source/Shell.py,sha256=
|
|
50
|
-
micrOS/source/Tasks.py,sha256=
|
|
50
|
+
micrOS/source/Shell.py,sha256=_IQLE8KR4MpmYgIfY97vosA7e1obOsd1SkrtgRPE7ak,13309
|
|
51
|
+
micrOS/source/Tasks.py,sha256=BqGj6i1Ao_T89M5mos8yeNtBohsb2euFc8p6GK5ZWGg,24504
|
|
51
52
|
micrOS/source/Time.py,sha256=8EHp86CAkbGIErGgN-VGAsslUBFIooRGkHB1hUYwwOE,6408
|
|
52
53
|
micrOS/source/Types.py,sha256=Ft_gHokGNa9aQRGSwE3NYIvYZuolT3zfkD5JzhycQ1s,3499
|
|
53
54
|
micrOS/source/Web.py,sha256=EeZzKcZMTDVls5Qu-kT8dnX2Mt8L6M4eLiCBhDBJa40,11059
|
|
@@ -56,7 +57,7 @@ micrOS/source/micrOS.py,sha256=QM1lgUnv2qrklj5-qgU6MM_6YsTKq4VGk71Od3Dzx1M,2872
|
|
|
56
57
|
micrOS/source/micrOSloader.py,sha256=9o6VIWPAgnQVb3uQDHENW9aO21gkM4jgR4O1t6uoPHI,4624
|
|
57
58
|
micrOS/source/microIO.py,sha256=h7i78Rl_DKG5vwpCgk1dsY-Z9ikvmOQLMiusYP_yRMI,7096
|
|
58
59
|
micrOS/source/reset.py,sha256=i7wsPkOXE7Mm0xOiw1CjqCvCdNjBvYswn9CRDvE2VbE,248
|
|
59
|
-
micrOS/source/urequests.py,sha256=
|
|
60
|
+
micrOS/source/urequests.py,sha256=yqLR4B0JBTIo_B1vbPBafDWivVAsiYAT7sh_YX6as1k,9464
|
|
60
61
|
micrOS/source/__pycache__/Common.cpython-312.pyc,sha256=lQtONeXVsuA-HBJs6PDex5dzKTS5NAT9vSBuD3TZFss,20232
|
|
61
62
|
micrOS/source/__pycache__/Debug.cpython-312.pyc,sha256=mpOPlK6qEb2Xd2j3PmXXV6jYA4R1MFUtNMgCKa9q2Qs,3932
|
|
62
63
|
micrOS/source/__pycache__/Files.cpython-312.pyc,sha256=kaWr8UH2EPFwaOE6GK_kcTODqrjZeS42Kj4J4xF-rv0,6724
|
|
@@ -79,15 +80,15 @@ micrOS/source/modules/LM_OV2640.py,sha256=E8zveGtp7GHerY4Chokvd0iREf-qMGXD2nA4YR
|
|
|
79
80
|
micrOS/source/modules/LM_VL53L0X.py,sha256=dqK7yP9Qgc-OzRJBAX3-26N_cwoMGlpG7oBcc7faPoM,10122
|
|
80
81
|
micrOS/source/modules/LM_aht10.py,sha256=aC6-cvfG6OWoBinYD47mYGg7eIY8BfJxg6yMENr7k90,4002
|
|
81
82
|
micrOS/source/modules/LM_bme280.py,sha256=4v7HtJ3HgbLwpRe-OwKR-D2nTM_PBDyFR8SHInig3Is,12708
|
|
82
|
-
micrOS/source/modules/LM_buzzer.py,sha256=
|
|
83
|
-
micrOS/source/modules/LM_cct.py,sha256=
|
|
83
|
+
micrOS/source/modules/LM_buzzer.py,sha256=EWkAWkC-W0-zFbxv1XCg_j_kS6hl5zVj03CxGw9jFSg,12356
|
|
84
|
+
micrOS/source/modules/LM_cct.py,sha256=iZKgAHeTF16TmNDPfb-UNfw9x-5LvV_3me-O_GBbFjk,14049
|
|
84
85
|
micrOS/source/modules/LM_cluster.py,sha256=iI-l6TJP4ejOY8tlE3OgjP82AL7dPNmn2fnaq4CRIdo,8937
|
|
85
86
|
micrOS/source/modules/LM_co2.py,sha256=Eopq9eEPV9W2x5mx5EJGllg09_HFTYiI1hZE2T_PWTY,5460
|
|
86
87
|
micrOS/source/modules/LM_dashboard_be.py,sha256=KVaJH37TCJkEwZJdGAVKpJtZXyVqYKDupyJO5BXvI0c,966
|
|
87
88
|
micrOS/source/modules/LM_dht11.py,sha256=pmmtpxnYHApo63WvQXHlgx_z3A86dMSi1Stb9pSRpYY,2010
|
|
88
89
|
micrOS/source/modules/LM_dht22.py,sha256=QVJ1OidP27LFPGesSSdEUr19QXAwYOcqEWC622k_eIA,2011
|
|
89
|
-
micrOS/source/modules/LM_dimmer.py,sha256=
|
|
90
|
-
micrOS/source/modules/LM_distance.py,sha256=
|
|
90
|
+
micrOS/source/modules/LM_dimmer.py,sha256=qMmYGKhij2euvM9IpXHPlGdA9oOfv7NzbxqMcZqBgE8,8321
|
|
91
|
+
micrOS/source/modules/LM_distance.py,sha256=kxqtx2_Zo4v3oohbdtm6jgNF_dmZOug-qf9yHHReTI8,4338
|
|
91
92
|
micrOS/source/modules/LM_ds18.py,sha256=mLaH97j8d4lUXcjS8hNtwU8hL5Ybt-Q1WuoiWPnk5Ho,1807
|
|
92
93
|
micrOS/source/modules/LM_esp32.py,sha256=AAMceuWTWMDu_1EJH-617dmp5ClPaAzFKgDOHWEiX0I,1862
|
|
93
94
|
micrOS/source/modules/LM_espnow.py,sha256=8WVKGinXL380aj6-qB2euhpwxN2y9pQcXMH-CrW7FJ0,1085
|
|
@@ -95,28 +96,27 @@ micrOS/source/modules/LM_gameOfLife.py,sha256=Mvr_S5zsJ6x_pMCGrkdgl5QdejNQjAF9mB
|
|
|
95
96
|
micrOS/source/modules/LM_genIO.py,sha256=rTiFByly8ImjHBgc2RceGczGp1rzti7Juz_Vvg5hrtc,5013
|
|
96
97
|
micrOS/source/modules/LM_haptic.py,sha256=W0WiuOCxIu9RB-pWu8r8fvHmvuseet1UI7RSc9WO8zo,2862
|
|
97
98
|
micrOS/source/modules/LM_i2c.py,sha256=hdInP8L2gRPUQ5_8YnqEDOKf5nJ9lwyikRADYO6Em_4,1600
|
|
98
|
-
micrOS/source/modules/LM_i2s_mic.py,sha256=
|
|
99
|
-
micrOS/source/modules/LM_keychain.py,sha256
|
|
99
|
+
micrOS/source/modules/LM_i2s_mic.py,sha256=HpyrzeHLa5yDbgS6TYVj7zaXXud8PLvq0WivlFhVPRo,12216
|
|
100
|
+
micrOS/source/modules/LM_keychain.py,sha256=0PPAjdBGHXSj47GeovO-YdrQK0uf2toEFjkDbelNzAE,12640
|
|
100
101
|
micrOS/source/modules/LM_ld2410.py,sha256=dWBsIkI0ryomn0zDrmz5YxaGcoH5TqjAsi2qwGd8UZM,6524
|
|
101
|
-
micrOS/source/modules/LM_light_sensor.py,sha256=
|
|
102
|
-
micrOS/source/modules/LM_mqtt_client.py,sha256=
|
|
102
|
+
micrOS/source/modules/LM_light_sensor.py,sha256=QTyzkJKOOqHvkbzkzn1ZUQe4gSpXVMzJOP05-u8L52U,4401
|
|
103
|
+
micrOS/source/modules/LM_mqtt_client.py,sha256=QEtmnMWUZJsGVe8Ca5Q10gbR8TQMewWa4HMRz7iCFFU,8567
|
|
103
104
|
micrOS/source/modules/LM_neoeffects.py,sha256=zzsHEfZE7-c6cLVlRM9tPhbUDqBYytdHlvm41fv1nG0,9858
|
|
104
105
|
micrOS/source/modules/LM_neomatrix.py,sha256=jCNpV-HDOpNHe7k00fr4TfDVYkM45wCmB4ZfvKAm_NA,14332
|
|
105
|
-
micrOS/source/modules/LM_neopixel.py,sha256=
|
|
106
|
+
micrOS/source/modules/LM_neopixel.py,sha256=V0WEwHtjj0cKfiUpWNdRVOa6KEJ6q3VhNzobN9PfQr4,13212
|
|
106
107
|
micrOS/source/modules/LM_oled.py,sha256=ZwLndxWuY1Ii5d06YEf9Z_jxmTyoOYRL-BO3VhJ0b14,9903
|
|
107
108
|
micrOS/source/modules/LM_oled_sh1106.py,sha256=av2_ftFHvfAIxcPYHbrOMQNZgM1Go6MQzBu5cIeVK4w,11723
|
|
108
|
-
micrOS/source/modules/LM_oled_ui.py,sha256=
|
|
109
|
-
micrOS/source/modules/LM_oledui.py,sha256=
|
|
110
|
-
micrOS/source/modules/LM_pacman.py,sha256=
|
|
111
|
-
micrOS/source/modules/
|
|
112
|
-
micrOS/source/modules/LM_presence.py,sha256=8cagHD12HF4E6qgSn6zkf6yyY6aiBiIcEvRrfVuPyzE,8796
|
|
109
|
+
micrOS/source/modules/LM_oled_ui.py,sha256=3E3f2goWfmue7Oq34sXyYWqIC9fHxtNhg-8A_dOqnfE,22285
|
|
110
|
+
micrOS/source/modules/LM_oledui.py,sha256=6QduSOFDRH3Tr4SAv3L-qWb6x1sk9cgshnsCBBD3MnE,34357
|
|
111
|
+
micrOS/source/modules/LM_pacman.py,sha256=a2M-c_DJ7bsvfOy6a09PDUx9qg3kSJi0JGaGaofPShI,9787
|
|
112
|
+
micrOS/source/modules/LM_presence.py,sha256=jzJKJJ6hwPCZjQfOTO8iQdVIym89V4DhIiYf72KtXso,8741
|
|
113
113
|
micrOS/source/modules/LM_qmi8658.py,sha256=4OOAUo7NV7G1Rx01l8LK-wGw19GDaAukDjH6vvxt7ds,6303
|
|
114
114
|
micrOS/source/modules/LM_rencoder.py,sha256=9w00JP8UKC_GEKr18xgZ5axX9xc_wVeR9XlWpVR2Qzw,3973
|
|
115
|
-
micrOS/source/modules/LM_rest.py,sha256=
|
|
116
|
-
micrOS/source/modules/LM_rgb.py,sha256=
|
|
115
|
+
micrOS/source/modules/LM_rest.py,sha256=HwKfKkX6VIC99o1BEaR_xzQY6e6UMsQXRjPa1jFyhCM,2617
|
|
116
|
+
micrOS/source/modules/LM_rgb.py,sha256=ITPxLTPbFI9vXu9waVEKJ-C66IvORtbCW9OwZFcjEig,11895
|
|
117
117
|
micrOS/source/modules/LM_rgbcct.py,sha256=Ct0X_O0AuSTsf4YiZjP4Zvke81y6dQMryhcn-HKkR9M,1841
|
|
118
|
-
micrOS/source/modules/LM_roboarm.py,sha256=
|
|
119
|
-
micrOS/source/modules/LM_robustness.py,sha256=
|
|
118
|
+
micrOS/source/modules/LM_roboarm.py,sha256=fmzR0L_EJuLi8u_kCNFyKRBoC-J-90leeMW1EgDq55M,9984
|
|
119
|
+
micrOS/source/modules/LM_robustness.py,sha256=09h-sE10J4PriNB6VK3b544cPMrQbiTqIvpB7mS-lYM,3760
|
|
120
120
|
micrOS/source/modules/LM_rp2w.py,sha256=vdN-gxc38-WI4XK6MMz3FBPYmLdUSjEyB6JuKR_slbM,391
|
|
121
121
|
micrOS/source/modules/LM_sdcard.py,sha256=y7pB35Xqb0EporESZ6_wHTUe8ez_R2ud_mwdh-wC-30,1030
|
|
122
122
|
micrOS/source/modules/LM_servo.py,sha256=83YPK5qlHuEOo3jTn5wXRsvPzzJPp0ZtCW-BhHHMBK0,3481
|
|
@@ -125,7 +125,7 @@ micrOS/source/modules/LM_stepper.py,sha256=CkI4QBe2KJ7E5DKL7Z23oAMPDUFlUt7btAvqr
|
|
|
125
125
|
micrOS/source/modules/LM_switch.py,sha256=1go-jfbh0zisi3Cw680n9PmcoC-dwh_N4c5fMRceJBc,7868
|
|
126
126
|
micrOS/source/modules/LM_system.py,sha256=-URoeSdNZkv4veJlxlsj7JrEHbMKFfXlImwZpGUnm-4,6579
|
|
127
127
|
micrOS/source/modules/LM_tcs3472.py,sha256=Kvkpxigv-9zgfy2_jUqKJzZgMBZxOXqQf4QBU9McndY,5459
|
|
128
|
-
micrOS/source/modules/LM_telegram.py,sha256=
|
|
128
|
+
micrOS/source/modules/LM_telegram.py,sha256=unA5P6h_o0MPvESnJxp8RfEg_fbRtMafJjZeazIZ52w,15170
|
|
129
129
|
micrOS/source/modules/LM_tinyrgb.py,sha256=kChL607HPTl3Z2hYN2XnzXXfZ6omdP78PQutHdbdfCo,3031
|
|
130
130
|
micrOS/source/modules/LM_trackball.py,sha256=N2hhy3wuk55-ja4dmENpfthBolIEj28d2pzcjel5OKg,9716
|
|
131
131
|
micrOS/source/modules/LM_veml7700.py,sha256=3eb6-HuMA_tYBA0cJHUsZzOBriHacIpVSrK-1iB3_pY,5762
|
|
@@ -137,11 +137,11 @@ micrOS/source/web/udashboard.js,sha256=42mPR_NU3jOqUgLi7yZv2L7bN6uGqw9LpScDrGGF5
|
|
|
137
137
|
micrOS/source/web/ustyle.css,sha256=P-s8ENwAcWoZi5bocrK3_kVzEjaRFKtFvEF6JRh4MBY,1429
|
|
138
138
|
micrOS/source/web/uwidgets.js,sha256=BGeUSbNHn6PClgIgIE6QszwQVJ6j7lzgCBwvIX8cYgo,6631
|
|
139
139
|
micrOS/source/web/uwidgets_pro.js,sha256=gbkk3SVttEVvDCwde-pJhAh4k7GuCFPdcWNq32pcKPE,3639
|
|
140
|
-
microsdevtoolkit-2.
|
|
141
|
-
microsdevtoolkit-2.
|
|
140
|
+
microsdevtoolkit-2.21.0.data/scripts/devToolKit.py,sha256=4GutIOErF1ny0HSNWQZzEneZdUWhSdqKPBjpRFTr5do,11192
|
|
141
|
+
microsdevtoolkit-2.21.0.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
|
142
142
|
toolkit/DevEnvCompile.py,sha256=wNBf0T7w07SYC3eLFow3JtZApHQK-92Fu7CvJHqWuSM,13189
|
|
143
|
-
toolkit/DevEnvOTA.py,sha256=
|
|
144
|
-
toolkit/DevEnvUSB.py,sha256=
|
|
143
|
+
toolkit/DevEnvOTA.py,sha256=oUZsOy9MFO3RWyNypV2jbWWMtd4VI-N14-EAhxVNWe0,26945
|
|
144
|
+
toolkit/DevEnvUSB.py,sha256=NTocKaYBRoNPEJ4jJVHukPqjwS_5KwzDQ_gQcd8y4ao,37207
|
|
145
145
|
toolkit/Gateway.py,sha256=wz81ZteRtKuNsXmX3Zi9Uo4g5fuCxbErAhas0HrkJqU,25353
|
|
146
146
|
toolkit/LM_to_compile.dat,sha256=EcJSCR3xugskiLAJY1BWEBfa0A4EhP5qHDXNRQZQ30E,619
|
|
147
147
|
toolkit/MicrOSDevEnv.py,sha256=Puh0u2oQhPptj-XTvvi8N9Wm3UzDBys1ZHQvzCXjmB4,14583
|
|
@@ -168,7 +168,7 @@ toolkit/dashboard_apps/RGBTest.py,sha256=QIky1Ts87h52VS9vHs3rYoEYvwFX02BlJxzK-uE
|
|
|
168
168
|
toolkit/dashboard_apps/RoboArm.py,sha256=fqsBFTLEKXLyuZtZhbsNMNLCVtJw3gHWE-37EzjRttw,1814
|
|
169
169
|
toolkit/dashboard_apps/SED_test.py,sha256=hQG8F2isZvCEsb0EvUdvcowLtJ86vrhLMOvpe9EPcJM,2703
|
|
170
170
|
toolkit/dashboard_apps/SensorsTest.py,sha256=h6Sqz9HzjUawKuvxBPMltgWAycIXUUqlLANZqlF030M,1472
|
|
171
|
-
toolkit/dashboard_apps/SystemTest.py,sha256=
|
|
171
|
+
toolkit/dashboard_apps/SystemTest.py,sha256=AKV1J9VRSHykSmFMh53dfuyM_qUs-oGUebrIDi6f4w4,26519
|
|
172
172
|
toolkit/dashboard_apps/Template_app.py,sha256=1OLO-xA6qNKyDCj-J7nHkA3Eis4ZKnHfhMcaSqHNX4A,758
|
|
173
173
|
toolkit/dashboard_apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
174
174
|
toolkit/dashboard_apps/_app_base.py,sha256=u2-Clkaosftr0bgr2kiClcQ1lkJT8GoUD9UUOOKVVmk,1039
|
|
@@ -186,8 +186,8 @@ toolkit/lib/SerialDriverHandler.py,sha256=Zn0zeq4mshTMVc6fzycvrOZiKt6w6YOxJcTWw3
|
|
|
186
186
|
toolkit/lib/TerminalColors.py,sha256=Ly_8o9-eBmka1dqA2M3DBlcd1zvCCO2K_BnQ1XbqxcE,947
|
|
187
187
|
toolkit/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
188
188
|
toolkit/lib/macroScript.py,sha256=DQR8cFoks7fa0dgRUfGhTpEdUJWNQ1vikRoqukRKx14,14014
|
|
189
|
-
toolkit/lib/micrOSClient.py,sha256=
|
|
190
|
-
toolkit/lib/micrOSClientHistory.py,sha256=
|
|
189
|
+
toolkit/lib/micrOSClient.py,sha256=CWSmuYMJ4Rlphh8ZnBFn4Eq2tL26usubKNkGfnPqBFI,20000
|
|
190
|
+
toolkit/lib/micrOSClientHistory.py,sha256=XsymDBTUhfyvmHhAMZ2wHQCZrgkITFeeNm0fAOxgOIQ,5673
|
|
191
191
|
toolkit/lib/pip_package_installer.py,sha256=BYhJR3KnVan9iTAe4p5ZgpHJlimtRx_yG3uKGbQrjXc,4482
|
|
192
192
|
toolkit/simulator_lib/.DS_Store,sha256=1lFlJ5EFymdzGAUAaI30vcaaLHt3F1LwpG7xILf9jsM,6148
|
|
193
193
|
toolkit/simulator_lib/IO_darwin.py,sha256=f8HOfQKJvniShvjpBe6f4nisr6oJd9SnvxPsbdNIGQk,2336
|
|
@@ -210,7 +210,7 @@ toolkit/simulator_lib/simgc.py,sha256=qaYlZKW48ciIglgYxZt9ZxRUyThskhoQqke_A_bfIy
|
|
|
210
210
|
toolkit/simulator_lib/simulator.py,sha256=BHIQVY0f71ActHJo2Eo3JEg-4ELr2bv-TRSZqlPVHIo,8102
|
|
211
211
|
toolkit/simulator_lib/tinypico.py,sha256=z6B0743-7Cg8ISa7q7kljvKi0DGoegWus3HbiaOGU3E,156
|
|
212
212
|
toolkit/simulator_lib/uasyncio.py,sha256=4ENv435IIr56x5IWeJUr1-QdczBBVG1zFr3-H2VDSpw,822
|
|
213
|
-
toolkit/simulator_lib/uos.py,sha256=
|
|
213
|
+
toolkit/simulator_lib/uos.py,sha256=QREvzngY5R4dhxyl-h-6gUxpzvVIJncAwZkWxyHy0Mw,3643
|
|
214
214
|
toolkit/simulator_lib/usocket.py,sha256=7cqbG03yW5wySY1yCdFRbjDgDvbFqpU1otNJxyedaGU,347
|
|
215
215
|
toolkit/simulator_lib/ussl.py,sha256=yBXPRGKIWwBRQFcKwciHCDfTj69bgfswH0WSrk3Zhjg,601
|
|
216
216
|
toolkit/simulator_lib/ustruct.py,sha256=XEcN7BdO_dDw2j5fDNzv-McTGPC0kObt1LJ2KU1Kpm8,136
|
|
@@ -266,7 +266,7 @@ toolkit/simulator_lib/__pycache__/tinypico.cpython-39.pyc,sha256=VPvz9Caomn5rtrR
|
|
|
266
266
|
toolkit/simulator_lib/__pycache__/uasyncio.cpython-312.pyc,sha256=ihShEcyfAQVtDTWDcsx3rENRGWKlw4ZLo90OTt_opCQ,2112
|
|
267
267
|
toolkit/simulator_lib/__pycache__/uasyncio.cpython-38.pyc,sha256=F9FU77fFSaOYcAsDiMTQbOIaQ9bKeI1HuAqLZCjNIfk,976
|
|
268
268
|
toolkit/simulator_lib/__pycache__/uasyncio.cpython-39.pyc,sha256=OMX0MlM7Y4WWePolE-QTVMoKn1yQnQHxvpsb42JErcI,1355
|
|
269
|
-
toolkit/simulator_lib/__pycache__/uos.cpython-312.pyc,sha256=
|
|
269
|
+
toolkit/simulator_lib/__pycache__/uos.cpython-312.pyc,sha256=3zfY4et_ChyusaeHot6vbuNxufAYVHjb67Mq7fDg8QE,6186
|
|
270
270
|
toolkit/simulator_lib/__pycache__/usocket.cpython-312.pyc,sha256=rAKwfzQXhHGDSvCYyRcohNbb1dzKxZHZ2EGrSF-B8L0,842
|
|
271
271
|
toolkit/simulator_lib/__pycache__/ussl.cpython-312.pyc,sha256=ZffWjvpL_43ihw5Rb4dGQ-8a7s3r5G-6ZvX8LixPCjU,1019
|
|
272
272
|
toolkit/simulator_lib/__pycache__/ustruct.cpython-312.pyc,sha256=T_xaVNR9vCkHsrkuBOB9jKzx9HPGo1I3GeSO20b2kRI,516
|
|
@@ -290,21 +290,22 @@ toolkit/user_data/webhooks/macro.py,sha256=r1TnOP4Bq-G3XQGwcV0FHcvlzwVaojUrrhbtp
|
|
|
290
290
|
toolkit/user_data/webhooks/template.macro,sha256=XikSl3FsD6W9pUx3sqavM5tWIMBquFx9f3bh_CB8k-A,631
|
|
291
291
|
toolkit/user_data/webhooks/template.py,sha256=UhyXmETAEr-VQutY9ME4gAb-4qi7qVfZ0NjSU1inn-E,342
|
|
292
292
|
toolkit/workspace/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
293
|
-
toolkit/workspace/precompiled/Common.mpy,sha256=
|
|
294
|
-
toolkit/workspace/precompiled/Config.mpy,sha256=
|
|
293
|
+
toolkit/workspace/precompiled/Common.mpy,sha256=NhIMgu2QPTifEzkZCLBKVxGwNIQ6xyyQ3b03gEJoTBg,4133
|
|
294
|
+
toolkit/workspace/precompiled/Config.mpy,sha256=Zj45tP3RcZ9dNhIsIx69Fnpbf2m6r-mVO6exxlTPoUo,3347
|
|
295
295
|
toolkit/workspace/precompiled/Debug.mpy,sha256=BJqoH4QdOmeybdUxUlhNu6ApHo4KTraJ5F_winmwOm0,1039
|
|
296
|
-
toolkit/workspace/precompiled/Espnow.mpy,sha256=
|
|
297
|
-
toolkit/workspace/precompiled/Files.mpy,sha256=
|
|
296
|
+
toolkit/workspace/precompiled/Espnow.mpy,sha256=esmiz87lAdd_QiQ_ilOkdA1B6LK__XJVGF2qHrndjME,4837
|
|
297
|
+
toolkit/workspace/precompiled/Files.mpy,sha256=AtPakPIScSpVW3GdEDTZ9dlhu02lfpYHdOOsoVousQE,1920
|
|
298
298
|
toolkit/workspace/precompiled/Hooks.mpy,sha256=Jb-3JliF0O4RitSfsVm8zxSFT3VGcYmPked9W6X1jNw,1769
|
|
299
|
-
toolkit/workspace/precompiled/InterConnect.mpy,sha256=
|
|
299
|
+
toolkit/workspace/precompiled/InterConnect.mpy,sha256=lpSXfr_c6sXwUxKiIPhF9AuxMj8gpIxZsIGyxsCRDag,3482
|
|
300
300
|
toolkit/workspace/precompiled/Interrupts.mpy,sha256=0p3Bpx1C7wXWHz9jLM-eqFD0X9wuT6eKzaOdmzpkVBE,2128
|
|
301
301
|
toolkit/workspace/precompiled/Logger.mpy,sha256=lgAiS5nQqIskNBtEqDoH3GwohOH0mflr8JoYV6b5x4g,1324
|
|
302
302
|
toolkit/workspace/precompiled/Network.mpy,sha256=foBjsIZ1SafRplCw8v5GgDU_WjPTaRz1W9D6VYyaBSc,3553
|
|
303
303
|
toolkit/workspace/precompiled/Notify.mpy,sha256=i8LNNynvNxi-tA5QT0pQJ8NJ_DNxJNW4NTZRD6gGS7M,970
|
|
304
|
+
toolkit/workspace/precompiled/Pacman.mpy,sha256=jNKvOMl_4JJyZKoy55h-egVnCA5axQJ9H9p0OjTSjGs,1805
|
|
304
305
|
toolkit/workspace/precompiled/Scheduler.mpy,sha256=S-ZS1N420Xew74F_90O4FvFvrvmRTMiCh-C8szrdhfI,2198
|
|
305
306
|
toolkit/workspace/precompiled/Server.mpy,sha256=dS2IY9NAjvy2v7-fQHeY44n080GlL3ZV8ENtN1A3KPw,4896
|
|
306
|
-
toolkit/workspace/precompiled/Shell.mpy,sha256=
|
|
307
|
-
toolkit/workspace/precompiled/Tasks.mpy,sha256=
|
|
307
|
+
toolkit/workspace/precompiled/Shell.mpy,sha256=yUVTELQ3Fhkgu5eWuh8Bhy5IRiQV3vxnDB3HUZYpiCQ,4821
|
|
308
|
+
toolkit/workspace/precompiled/Tasks.mpy,sha256=j4GC3pjZ2g2Npm5FUWLZWMZcJrrc5BxfD8G3IloncC8,6762
|
|
308
309
|
toolkit/workspace/precompiled/Time.mpy,sha256=3thC6iKW4UJdjNP-Jo1Ol0Zn-e4oy2H1wiIz7SH182E,2865
|
|
309
310
|
toolkit/workspace/precompiled/Types.mpy,sha256=5QGhswa0jWAU1Ywpyl_92miQg4qDHReXLqq3iHBwUCs,1397
|
|
310
311
|
toolkit/workspace/precompiled/Web.mpy,sha256=X3-nqKYY_RSLsAspTFY_O7H5vkUR0OwECFbSyxqSUUc,4030
|
|
@@ -332,15 +333,15 @@ toolkit/workspace/precompiled/modules/LM_OV2640.mpy,sha256=1uZhEZuY8WlLO3c6MWc9n
|
|
|
332
333
|
toolkit/workspace/precompiled/modules/LM_VL53L0X.py,sha256=dqK7yP9Qgc-OzRJBAX3-26N_cwoMGlpG7oBcc7faPoM,10122
|
|
333
334
|
toolkit/workspace/precompiled/modules/LM_aht10.mpy,sha256=ju5Xs_Krt212I6h2CSo7glZlGR3FyAPYnaJPrDuuzHM,1422
|
|
334
335
|
toolkit/workspace/precompiled/modules/LM_bme280.mpy,sha256=qDxvzKhQkPaKpgXB2KZZ3D8F9nTlDiVDISof7NXxXtQ,4438
|
|
335
|
-
toolkit/workspace/precompiled/modules/LM_buzzer.mpy,sha256=
|
|
336
|
-
toolkit/workspace/precompiled/modules/LM_cct.mpy,sha256=
|
|
336
|
+
toolkit/workspace/precompiled/modules/LM_buzzer.mpy,sha256=bRQ_V3TuzHVsCrkdkb2OoyBsYDsm7xW3r0GwoUHm0r4,5944
|
|
337
|
+
toolkit/workspace/precompiled/modules/LM_cct.mpy,sha256=0WlWm2v56OquSvC9NChjcXQYUg3KhkPaFOlvOYGGzlY,3836
|
|
337
338
|
toolkit/workspace/precompiled/modules/LM_cluster.mpy,sha256=GjZHkj6Y-XKBAnQRkEIPmKb_xEox9j738_531E8z1og,3020
|
|
338
339
|
toolkit/workspace/precompiled/modules/LM_co2.mpy,sha256=ma_cjCG8LoBMq_dt74PsrL-sn6U61a58pl_JgyxXdDM,1487
|
|
339
340
|
toolkit/workspace/precompiled/modules/LM_dashboard_be.py,sha256=KVaJH37TCJkEwZJdGAVKpJtZXyVqYKDupyJO5BXvI0c,966
|
|
340
341
|
toolkit/workspace/precompiled/modules/LM_dht11.mpy,sha256=esQhbgiMGiGChsTUAn1VbG9K6JHU3tQAxRKKfVMloEQ,745
|
|
341
342
|
toolkit/workspace/precompiled/modules/LM_dht22.mpy,sha256=1neWPrEHqMoG3aO6ElLRneZvAFJxTevqiQR5Aq79NMw,745
|
|
342
|
-
toolkit/workspace/precompiled/modules/LM_dimmer.mpy,sha256=
|
|
343
|
-
toolkit/workspace/precompiled/modules/LM_distance.mpy,sha256=
|
|
343
|
+
toolkit/workspace/precompiled/modules/LM_dimmer.mpy,sha256=5e848cdQnMRYCngIvwl2dKW_QmPXE0iPkeGs1gXfKQY,2382
|
|
344
|
+
toolkit/workspace/precompiled/modules/LM_distance.mpy,sha256=DkMrb_EeiXk8IgWFnvNRyIp_kFE-FuTR1KfMYY40R2c,1476
|
|
344
345
|
toolkit/workspace/precompiled/modules/LM_ds18.mpy,sha256=WtM_FBMcwvxjqB1EsAgfkUAWBYV7AEGKIoaXOEmifB0,652
|
|
345
346
|
toolkit/workspace/precompiled/modules/LM_esp32.py,sha256=AAMceuWTWMDu_1EJH-617dmp5ClPaAzFKgDOHWEiX0I,1862
|
|
346
347
|
toolkit/workspace/precompiled/modules/LM_espnow.py,sha256=8WVKGinXL380aj6-qB2euhpwxN2y9pQcXMH-CrW7FJ0,1085
|
|
@@ -348,28 +349,27 @@ toolkit/workspace/precompiled/modules/LM_gameOfLife.mpy,sha256=z-JxoeQ76mTOXY6c_
|
|
|
348
349
|
toolkit/workspace/precompiled/modules/LM_genIO.mpy,sha256=M7aYNyNB1SqmLnt9y_Q0MfSMIfewyT3Uc_MSFJpjd3Q,1730
|
|
349
350
|
toolkit/workspace/precompiled/modules/LM_haptic.mpy,sha256=pNUF7OJJhq-kyiDI9ceuJp3YbB1P8Gj95DvLlZSz1aw,1284
|
|
350
351
|
toolkit/workspace/precompiled/modules/LM_i2c.py,sha256=hdInP8L2gRPUQ5_8YnqEDOKf5nJ9lwyikRADYO6Em_4,1600
|
|
351
|
-
toolkit/workspace/precompiled/modules/LM_i2s_mic.mpy,sha256=
|
|
352
|
-
toolkit/workspace/precompiled/modules/LM_keychain.mpy,sha256=
|
|
352
|
+
toolkit/workspace/precompiled/modules/LM_i2s_mic.mpy,sha256=6ys15rwdyLjjfwnjXqOOEdHnsHoqeap_l0qW8luvhCI,3959
|
|
353
|
+
toolkit/workspace/precompiled/modules/LM_keychain.mpy,sha256=VfUJDCHBo61TmT5kCMCX2zvVjr4Mn2vlymlB6V8istA,3597
|
|
353
354
|
toolkit/workspace/precompiled/modules/LM_ld2410.mpy,sha256=Yost6gCTx55nQoyggmHHHoDmFDWpEK14MCsP6o70m_8,2589
|
|
354
|
-
toolkit/workspace/precompiled/modules/LM_light_sensor.mpy,sha256=
|
|
355
|
-
toolkit/workspace/precompiled/modules/LM_mqtt_client.mpy,sha256=
|
|
355
|
+
toolkit/workspace/precompiled/modules/LM_light_sensor.mpy,sha256=qsGHgrEA5awuQsFyF8v4ps4saS1VqmV9mEH1MtBfdlw,1430
|
|
356
|
+
toolkit/workspace/precompiled/modules/LM_mqtt_client.mpy,sha256=USpE4Q_8dJA3-9d-NS8sdAonZUVzgP0T1L9dhk3pDjw,2857
|
|
356
357
|
toolkit/workspace/precompiled/modules/LM_neoeffects.mpy,sha256=R3Ssmr3Ag-cJP5IKBsSDTSXQmxMIeo4JzvTEvcug5FU,3089
|
|
357
358
|
toolkit/workspace/precompiled/modules/LM_neomatrix.mpy,sha256=exJxcMKVP4xUi1ct7yj5LWFAfeIWmU12JnexmGloHM0,5071
|
|
358
|
-
toolkit/workspace/precompiled/modules/LM_neopixel.mpy,sha256=
|
|
359
|
+
toolkit/workspace/precompiled/modules/LM_neopixel.mpy,sha256=INhwGU1maVlk52j8_WS1t9wX22xsnpPeE0rNyZoPKlc,3637
|
|
359
360
|
toolkit/workspace/precompiled/modules/LM_oled.mpy,sha256=82OqTsCgooB4y6BdMMBaDyfHYoHkq1W_UMteOmy0ePw,3162
|
|
360
361
|
toolkit/workspace/precompiled/modules/LM_oled_sh1106.mpy,sha256=tOsOk5zOT9f5sw027wQyUEXRanx8IcSyuUN6tgfd73w,3769
|
|
361
|
-
toolkit/workspace/precompiled/modules/LM_oled_ui.mpy,sha256=
|
|
362
|
-
toolkit/workspace/precompiled/modules/LM_oledui.mpy,sha256=
|
|
363
|
-
toolkit/workspace/precompiled/modules/LM_pacman.mpy,sha256=
|
|
364
|
-
toolkit/workspace/precompiled/modules/
|
|
365
|
-
toolkit/workspace/precompiled/modules/LM_presence.mpy,sha256=1ZRzBCmDqwAYhVp4Ww_bcPj2bp5LLsP8l7jNBtOSpUk,2744
|
|
362
|
+
toolkit/workspace/precompiled/modules/LM_oled_ui.mpy,sha256=_VVkCz9y0VKQy-44DIqwn3yy5p02LxxwFojBljDckGM,6964
|
|
363
|
+
toolkit/workspace/precompiled/modules/LM_oledui.mpy,sha256=mNWY2P7vJ6GCwrbXepcPxN58NdV3CYYPWIFOOYwNrpQ,11084
|
|
364
|
+
toolkit/workspace/precompiled/modules/LM_pacman.mpy,sha256=p4T2GthxJGncvsQZWS7tpRzy5qATga-Es-tsXAvNNmE,3439
|
|
365
|
+
toolkit/workspace/precompiled/modules/LM_presence.mpy,sha256=dYdKcSMimZBHNJakSgfwe0wjqXBPALyNfZC6TrHlK0U,2706
|
|
366
366
|
toolkit/workspace/precompiled/modules/LM_qmi8658.py,sha256=4OOAUo7NV7G1Rx01l8LK-wGw19GDaAukDjH6vvxt7ds,6303
|
|
367
367
|
toolkit/workspace/precompiled/modules/LM_rencoder.py,sha256=9w00JP8UKC_GEKr18xgZ5axX9xc_wVeR9XlWpVR2Qzw,3973
|
|
368
|
-
toolkit/workspace/precompiled/modules/LM_rest.mpy,sha256=
|
|
369
|
-
toolkit/workspace/precompiled/modules/LM_rgb.mpy,sha256
|
|
368
|
+
toolkit/workspace/precompiled/modules/LM_rest.mpy,sha256=mRA5YcMgC9gXcOfzfMC0LHwgXO0ni94_Xi9C_y6fX5I,998
|
|
369
|
+
toolkit/workspace/precompiled/modules/LM_rgb.mpy,sha256=adtk1vfNoEC1MuLxmsi9Fax9P6Xq52Q-1XE8Kftfbd8,3429
|
|
370
370
|
toolkit/workspace/precompiled/modules/LM_rgbcct.mpy,sha256=WGWd6x7r8LEte1tSQkVT_zEnN2_Z5P8CVdUmZ3t0jog,632
|
|
371
|
-
toolkit/workspace/precompiled/modules/LM_roboarm.mpy,sha256=
|
|
372
|
-
toolkit/workspace/precompiled/modules/LM_robustness.py,sha256=
|
|
371
|
+
toolkit/workspace/precompiled/modules/LM_roboarm.mpy,sha256=9FTdso0-8gx1SZ-C7ewx8rMTKeBoqtH32bZKmAimK9A,3242
|
|
372
|
+
toolkit/workspace/precompiled/modules/LM_robustness.py,sha256=09h-sE10J4PriNB6VK3b544cPMrQbiTqIvpB7mS-lYM,3760
|
|
373
373
|
toolkit/workspace/precompiled/modules/LM_rp2w.py,sha256=vdN-gxc38-WI4XK6MMz3FBPYmLdUSjEyB6JuKR_slbM,391
|
|
374
374
|
toolkit/workspace/precompiled/modules/LM_sdcard.py,sha256=y7pB35Xqb0EporESZ6_wHTUe8ez_R2ud_mwdh-wC-30,1030
|
|
375
375
|
toolkit/workspace/precompiled/modules/LM_servo.mpy,sha256=xVK5jhO_5ABHHr_pvZRUXmJKMx1QO5idUJzbLhXrZG4,1152
|
|
@@ -378,7 +378,7 @@ toolkit/workspace/precompiled/modules/LM_stepper.mpy,sha256=7FJuw86m5AnjPoiD089l
|
|
|
378
378
|
toolkit/workspace/precompiled/modules/LM_switch.mpy,sha256=zQCsYkulOQ-vRmlAFjGGThOo2X9FQh6P9-En8t31zy0,2302
|
|
379
379
|
toolkit/workspace/precompiled/modules/LM_system.mpy,sha256=DIL5FxfWKAn7gjMK5Wcn7t9IyNLQWhI8qREV-8e6R_o,2824
|
|
380
380
|
toolkit/workspace/precompiled/modules/LM_tcs3472.py,sha256=Kvkpxigv-9zgfy2_jUqKJzZgMBZxOXqQf4QBU9McndY,5459
|
|
381
|
-
toolkit/workspace/precompiled/modules/LM_telegram.mpy,sha256=
|
|
381
|
+
toolkit/workspace/precompiled/modules/LM_telegram.mpy,sha256=AfMdTPpG_J7XnL8mWFP-BvIzD6qbMfHKYGOSNN9EK4w,5116
|
|
382
382
|
toolkit/workspace/precompiled/modules/LM_tinyrgb.mpy,sha256=ggoQ1nT8GJzA96GZovfuzWderEpOwO_aklDGm2O3WcU,1024
|
|
383
383
|
toolkit/workspace/precompiled/modules/LM_trackball.mpy,sha256=gRdSB3DX1wIFsDqMxLfvBEKy9Xr-otGqx97NvkwHYFI,3479
|
|
384
384
|
toolkit/workspace/precompiled/modules/LM_veml7700.mpy,sha256=X_2O0XnGtEZgSrXHpZc7uOEAdpMZug7tm4RJ-n-mqbM,1961
|
|
@@ -390,7 +390,7 @@ toolkit/workspace/precompiled/web/udashboard.js,sha256=42mPR_NU3jOqUgLi7yZv2L7bN
|
|
|
390
390
|
toolkit/workspace/precompiled/web/ustyle.css,sha256=P-s8ENwAcWoZi5bocrK3_kVzEjaRFKtFvEF6JRh4MBY,1429
|
|
391
391
|
toolkit/workspace/precompiled/web/uwidgets.js,sha256=BGeUSbNHn6PClgIgIE6QszwQVJ6j7lzgCBwvIX8cYgo,6631
|
|
392
392
|
toolkit/workspace/precompiled/web/uwidgets_pro.js,sha256=gbkk3SVttEVvDCwde-pJhAh4k7GuCFPdcWNq32pcKPE,3639
|
|
393
|
-
microsdevtoolkit-2.
|
|
394
|
-
microsdevtoolkit-2.
|
|
395
|
-
microsdevtoolkit-2.
|
|
396
|
-
microsdevtoolkit-2.
|
|
393
|
+
microsdevtoolkit-2.21.0.dist-info/METADATA,sha256=417XpOTgpz2Li0KndHPjqrNMr7jU10WQ0eWZskbnq0I,50837
|
|
394
|
+
microsdevtoolkit-2.21.0.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
|
|
395
|
+
microsdevtoolkit-2.21.0.dist-info/top_level.txt,sha256=rOGOIXqLBdGZAoDTiLdZ9B_leFB7bMv7YabLwuIc2bc,25
|
|
396
|
+
microsdevtoolkit-2.21.0.dist-info/RECORD,,
|
toolkit/DevEnvOTA.py
CHANGED
|
@@ -42,7 +42,7 @@ class OTA(Compile):
|
|
|
42
42
|
# Skip the following modules in OTA update (safe mode) to have recovery mode
|
|
43
43
|
self.safe_mode_file_exception_list = ['main.py', 'micrOSloader.mpy',
|
|
44
44
|
'Network.mpy', 'Config.mpy',
|
|
45
|
-
'Debug.mpy']
|
|
45
|
+
'Debug.mpy', 'Files.py']
|
|
46
46
|
|
|
47
47
|
def safe_core_list(self):
|
|
48
48
|
return self.safe_mode_file_exception_list
|
|
@@ -421,7 +421,7 @@ class OTA(Compile):
|
|
|
421
421
|
source_name_target = os.path.join('web', source_name)
|
|
422
422
|
elif check_python_extensions(source_name):
|
|
423
423
|
source_name_target = os.path.join('modules', source_name)
|
|
424
|
-
elif source_name.endswith("node_config.json"):
|
|
424
|
+
elif source_name.endswith("node_config.json") or source_name.endswith("requirements.txt"):
|
|
425
425
|
source_name_target = os.path.join('config', source_name)
|
|
426
426
|
else:
|
|
427
427
|
# Copy file to micrOS data folder (not web, not module, not config)
|
toolkit/DevEnvUSB.py
CHANGED
|
@@ -386,7 +386,7 @@ class USB(Compile):
|
|
|
386
386
|
# List USB devices on Windows
|
|
387
387
|
import serial.tools.list_ports as serial_port_list # Import here (only windows...), package not exists on some platforms
|
|
388
388
|
ports = list(serial_port_list.comports())
|
|
389
|
-
win_known_devices = ("CP210", "CH340", "CH343")
|
|
389
|
+
win_known_devices = ("CP210", "CH340", "CH343", "CH9102")
|
|
390
390
|
for item in ports:
|
|
391
391
|
self.console(f'[Win] Com device: {item.description}')
|
|
392
392
|
if any(device in str(item.description) for device in win_known_devices):
|
|
@@ -168,38 +168,38 @@ def micrOS_config_set():
|
|
|
168
168
|
|
|
169
169
|
|
|
170
170
|
def micrOS_bgjob_one_shot_check():
|
|
171
|
-
info = "[ST] Run
|
|
171
|
+
info = "[ST] Run async microTask check [system clock &]"
|
|
172
172
|
print(info)
|
|
173
|
-
|
|
174
173
|
# Initial task cleanup...
|
|
175
174
|
CLIENT.execute(['task kill system.clock'])
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
if output[
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
return True, info
|
|
175
|
+
time.sleep(1)
|
|
176
|
+
cmd_list = ['system clock &']
|
|
177
|
+
output = CLIENT.execute(cmd_list)
|
|
178
|
+
if output[0]:
|
|
179
|
+
# Legacy return OR New dict return
|
|
180
|
+
if 'Start system.clock' in output[1].strip() or "{'system.clock': 'Starting'}" in output[1].strip():
|
|
181
|
+
return True, info
|
|
182
|
+
return False, f'{info} + not expected return: {output[1]}'
|
|
185
183
|
|
|
186
184
|
|
|
187
185
|
def micrOS_bgjob_loop_check():
|
|
188
|
-
info = "[ST] Run
|
|
186
|
+
info = "[ST] Run async microTask check [system clock &&] + task kill"
|
|
189
187
|
print(info)
|
|
190
188
|
|
|
191
189
|
# Start background task loop
|
|
192
190
|
cmd_list = ['system clock &&']
|
|
193
191
|
output = CLIENT.execute(cmd_list)
|
|
194
192
|
if output[0]:
|
|
195
|
-
|
|
193
|
+
# Legacy return OR New dict return
|
|
194
|
+
if not ('Start system.clock' in output[1].strip() or "{'system.clock': 'Starting'}" in output[1]):
|
|
196
195
|
return False, f'[Start Task error] {info} + not expected return: {output[1]}'
|
|
197
196
|
|
|
198
197
|
# Attempt to overload background thread
|
|
199
198
|
cmd_list = ['system clock &&']
|
|
200
199
|
output = CLIENT.execute(cmd_list)
|
|
201
200
|
if output[0]:
|
|
202
|
-
|
|
201
|
+
# Legacy return OR New dict return
|
|
202
|
+
if not ('system.clock is Busy' in output[1].strip() or "{'system.clock': 'Already running'}" in output[1]):
|
|
203
203
|
return False, f'[Overload task - run same] {info} + not expected return: {output[1]}'
|
|
204
204
|
|
|
205
205
|
# Show task output by task tag
|
|
@@ -220,6 +220,7 @@ def micrOS_bgjob_loop_check():
|
|
|
220
220
|
# Failed verdict
|
|
221
221
|
return False, f'[Thread not stopped]{info} + not expected return: {output[1]}'
|
|
222
222
|
|
|
223
|
+
|
|
223
224
|
def micrOS_task_list_check():
|
|
224
225
|
info = "[ST] Run micrOS Task list feature check [task list][task list >json]"
|
|
225
226
|
print(info)
|
|
@@ -243,6 +244,7 @@ def micrOS_task_list_check():
|
|
|
243
244
|
print(f"{info} - task list >json error: {output[1]}")
|
|
244
245
|
return True, info
|
|
245
246
|
|
|
247
|
+
|
|
246
248
|
def micrOS_get_version():
|
|
247
249
|
info = "[ST] Run micrOS get version [version]"
|
|
248
250
|
print(info)
|
|
@@ -670,6 +672,7 @@ def app(devfid=None, pwd=None):
|
|
|
670
672
|
'clean-reboot': after_st_reboot()
|
|
671
673
|
}
|
|
672
674
|
|
|
675
|
+
|
|
673
676
|
# Test Evaluation
|
|
674
677
|
final_state = True
|
|
675
678
|
ok_cnt = 0
|
toolkit/lib/micrOSClient.py
CHANGED
|
@@ -7,6 +7,9 @@ try:
|
|
|
7
7
|
except:
|
|
8
8
|
from TerminalColors import Colors as color
|
|
9
9
|
|
|
10
|
+
|
|
11
|
+
ANSI_ESCAPE_RE = re.compile(r"\x1B\[[0-?]*[ -/]*[@-~]")
|
|
12
|
+
|
|
10
13
|
def load_command_history(prompt_getter):
|
|
11
14
|
"""Optional command history feature"""
|
|
12
15
|
try:
|
|
@@ -173,22 +176,33 @@ class micrOSClient:
|
|
|
173
176
|
|
|
174
177
|
def __filter_preprompt(self, _data):
|
|
175
178
|
if len(_data) == 0:
|
|
176
|
-
return
|
|
177
|
-
|
|
178
|
-
|
|
179
|
+
return _data
|
|
180
|
+
|
|
181
|
+
has_trailing_newline = _data.endswith('\n')
|
|
182
|
+
working = _data.rstrip('\n')
|
|
183
|
+
lines = working.split('\n') if working else ['']
|
|
184
|
+
last_line = lines[-1]
|
|
185
|
+
|
|
179
186
|
if self.prompt is not None:
|
|
180
|
-
|
|
181
|
-
if
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
187
|
+
prompt_index = last_line.find(self.prompt)
|
|
188
|
+
if prompt_index != -1:
|
|
189
|
+
raw_prefix = last_line[:prompt_index]
|
|
190
|
+
plain_prefix = ANSI_ESCAPE_RE.sub('', raw_prefix)
|
|
191
|
+
|
|
192
|
+
plain_prefix = plain_prefix.rstrip()
|
|
193
|
+
if plain_prefix:
|
|
194
|
+
if not plain_prefix.endswith(' '):
|
|
195
|
+
plain_prefix += ' '
|
|
196
|
+
self.preprompt = plain_prefix
|
|
197
|
+
else:
|
|
198
|
+
self.preprompt = ""
|
|
199
|
+
|
|
200
|
+
lines[-1] = last_line[prompt_index:]
|
|
201
|
+
|
|
202
|
+
rebuilt = '\n'.join(lines)
|
|
203
|
+
if has_trailing_newline:
|
|
204
|
+
rebuilt += '\n'
|
|
205
|
+
return rebuilt
|
|
192
206
|
|
|
193
207
|
def __receive_data(self, read_timeout=20, stream=False):
|
|
194
208
|
"""
|
|
@@ -323,18 +337,26 @@ class micrOSClient:
|
|
|
323
337
|
return
|
|
324
338
|
|
|
325
339
|
history = load_command_history(self.telnet_prompt) # History: Beta feature
|
|
340
|
+
if history is not None:
|
|
341
|
+
history.prompt = self.telnet_prompt
|
|
326
342
|
print(self.telnet_prompt, end="")
|
|
327
343
|
is_empty = False # Empty input support
|
|
328
344
|
while True:
|
|
329
345
|
try:
|
|
330
346
|
# INPUT HANDLING
|
|
347
|
+
if history is not None:
|
|
348
|
+
history.prompt = self.telnet_prompt
|
|
331
349
|
cmd = input(self.telnet_prompt if is_empty else '') # CANNOT contain prompt - it is coming back from response data
|
|
332
350
|
if len(cmd.strip()) == 0:
|
|
333
351
|
is_empty = True
|
|
352
|
+
if history is not None:
|
|
353
|
+
history.prompt = self.telnet_prompt
|
|
334
354
|
continue
|
|
335
355
|
is_empty = False
|
|
336
356
|
# SEND COMMAND
|
|
337
357
|
output = self.send_cmd(cmd, timeout=timeout, stream=True)
|
|
358
|
+
if history is not None:
|
|
359
|
+
history.prompt = self.telnet_prompt
|
|
338
360
|
if not (history is None or output is None) and "Shell: for hints type help." not in output: # History: Beta feature
|
|
339
361
|
history.add_history(cmd)
|
|
340
362
|
# OUTPUT HANDLING
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import sys
|
|
2
2
|
import os
|
|
3
|
+
import re
|
|
3
4
|
|
|
4
5
|
try:
|
|
5
6
|
import readline # Linux/macOS
|
|
@@ -12,8 +13,14 @@ except:
|
|
|
12
13
|
from TerminalColors import Colors as color
|
|
13
14
|
|
|
14
15
|
|
|
16
|
+
ANSI_ESCAPE_RE = re.compile(r"\x1B\[[0-?]*[ -/]*[@-~]")
|
|
17
|
+
|
|
18
|
+
|
|
15
19
|
class CommandInterface:
|
|
16
20
|
def __init__(self, prompt):
|
|
21
|
+
self._prompt = ""
|
|
22
|
+
self._prompt_plain = ""
|
|
23
|
+
self._last_rendered_length = 0
|
|
17
24
|
self.prompt = prompt
|
|
18
25
|
self.command_history = ["help"]
|
|
19
26
|
self.history_file = os.path.expanduser("~/.micrOS_cmd_history") # History file (Linux/macOS)
|
|
@@ -76,10 +83,37 @@ class CommandInterface:
|
|
|
76
83
|
matches = list(dict.fromkeys(cmd for cmd in self.command_history if cmd.startswith(text)))
|
|
77
84
|
return matches[state] if state < len(matches) else None
|
|
78
85
|
|
|
86
|
+
@staticmethod
|
|
87
|
+
def _strip_ansi(value):
|
|
88
|
+
if not value:
|
|
89
|
+
return ""
|
|
90
|
+
return ANSI_ESCAPE_RE.sub("", value)
|
|
91
|
+
|
|
92
|
+
@property
|
|
93
|
+
def prompt(self):
|
|
94
|
+
return self._prompt
|
|
95
|
+
|
|
96
|
+
@prompt.setter
|
|
97
|
+
def prompt(self, value):
|
|
98
|
+
self._prompt = value
|
|
99
|
+
self._prompt_plain = self._strip_ansi(value)
|
|
100
|
+
|
|
79
101
|
def pre_input_hook(self):
|
|
80
102
|
"""Ensures prompt visibility when scrolling through history."""
|
|
81
|
-
|
|
103
|
+
buffer = readline.get_line_buffer()
|
|
104
|
+
sys.stdout.write("\r")
|
|
105
|
+
rendered = f"{self.prompt}{buffer}"
|
|
106
|
+
sys.stdout.write(rendered)
|
|
107
|
+
|
|
108
|
+
visible_length = len(self._prompt_plain) + len(buffer)
|
|
109
|
+
if visible_length < self._last_rendered_length:
|
|
110
|
+
padding = " " * (self._last_rendered_length - visible_length)
|
|
111
|
+
sys.stdout.write(padding)
|
|
112
|
+
sys.stdout.write("\r")
|
|
113
|
+
sys.stdout.write(rendered)
|
|
114
|
+
|
|
82
115
|
sys.stdout.flush()
|
|
116
|
+
self._last_rendered_length = visible_length
|
|
83
117
|
readline.redisplay() # Ensures history navigation does not erase prompt
|
|
84
118
|
|
|
85
119
|
def completion_display(self, substitutions, matches, longest_match_length):
|
|
Binary file
|
toolkit/simulator_lib/uos.py
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|