micrOSDevToolKit 2.17.2__py3-none-any.whl → 2.20.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 +29 -33
- micrOS/source/Common.py +5 -13
- micrOS/source/Config.py +2 -2
- micrOS/source/Espnow.py +32 -18
- micrOS/source/InterConnect.py +106 -31
- micrOS/source/Server.py +2 -3
- micrOS/source/Shell.py +1 -1
- micrOS/source/Tasks.py +66 -62
- micrOS/source/micrOSloader.py +1 -1
- 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_espnow.py +18 -1
- 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_neoeffects.py +1 -1
- micrOS/source/modules/LM_neomatrix.py +1 -1
- micrOS/source/modules/LM_neopixel.py +1 -2
- micrOS/source/modules/LM_oled_ui.py +4 -3
- micrOS/source/modules/LM_oledui.py +6 -7
- 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_tcs3472.py +131 -17
- micrOS/source/modules/LM_telegram.py +17 -18
- {microsdevtoolkit-2.17.2.dist-info → microsdevtoolkit-2.20.0.dist-info}/METADATA +151 -215
- {microsdevtoolkit-2.17.2.dist-info → microsdevtoolkit-2.20.0.dist-info}/RECORD +69 -73
- toolkit/Gateway.py +1 -1
- toolkit/dashboard_apps/SystemTest.py +39 -32
- toolkit/micrOSdashboard.py +8 -13
- toolkit/socketClient.py +27 -7
- toolkit/workspace/precompiled/Common.mpy +0 -0
- toolkit/workspace/precompiled/Config.mpy +0 -0
- toolkit/workspace/precompiled/Espnow.mpy +0 -0
- toolkit/workspace/precompiled/InterConnect.mpy +0 -0
- toolkit/workspace/precompiled/Server.mpy +0 -0
- toolkit/workspace/precompiled/Shell.mpy +0 -0
- toolkit/workspace/precompiled/Tasks.mpy +0 -0
- toolkit/workspace/precompiled/micrOSloader.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_espnow.py +18 -1
- 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_neoeffects.mpy +0 -0
- toolkit/workspace/precompiled/modules/LM_neomatrix.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_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_tcs3472.py +131 -17
- toolkit/workspace/precompiled/modules/LM_telegram.mpy +0 -0
- micrOS/micropython/esp32s2-LOLIN_MINI-20220618-v1.19.1.bin +0 -0
- micrOS/micropython/esp32s3_spiram_oct-20231005-v1.21.0.bin +0 -0
- micrOS/source/modules/LM_pet_feeder.py +0 -78
- toolkit/workspace/precompiled/modules/LM_pet_feeder.py +0 -78
- {microsdevtoolkit-2.17.2.data → microsdevtoolkit-2.20.0.data}/scripts/devToolKit.py +0 -0
- {microsdevtoolkit-2.17.2.dist-info → microsdevtoolkit-2.20.0.dist-info}/WHEEL +0 -0
- {microsdevtoolkit-2.17.2.dist-info → microsdevtoolkit-2.20.0.dist-info}/licenses/LICENSE +0 -0
- {microsdevtoolkit-2.17.2.dist-info → microsdevtoolkit-2.20.0.dist-info}/top_level.txt +0 -0
|
@@ -25,37 +25,35 @@ micrOS/micropython/esp32c3-20240222-v1.22.2.bin,sha256=GktHoOmEndjNy-5d4Jetx2tW1
|
|
|
25
25
|
micrOS/micropython/esp32c6-GENERIC-20250415-v1.25.0.bin,sha256=a1womN0H96anNycVgIYT9bMkSi6HHs437ZtantOuSHg,1995392
|
|
26
26
|
micrOS/micropython/esp32cam-v1.21.0_camera.bin,sha256=0j5OTjWERTfyt_RpPIC8fWA829UcCQE7MEMmYHzBOKs,1433072
|
|
27
27
|
micrOS/micropython/esp32s2-20240602-v1.23.0.bin,sha256=t2ExDdbS4FZ7o0SZTur34UTQdlaim8LymDnpqtM23Yk,1422304
|
|
28
|
-
micrOS/micropython/esp32s2-LOLIN_MINI-20220618-v1.19.1.bin,sha256=bXR9KjDPeHZZ6DnLMXNiEq1oLt1oogyH3Dt2xqk_wUA,1230192
|
|
29
28
|
micrOS/micropython/esp32s2-LOLIN_MINI-20240602-v1.23.0.bin,sha256=OJi-_TLCDZt_tEALtb9RoQ0S10H0nLQCGJmfxH_TSIg,1422256
|
|
30
29
|
micrOS/micropython/esp32s3-4MBflash-20241129-v1.24.1.bin,sha256=PXVpriBIBil_96-6z4gqpDrdB5EyuIEBVTW9y33tWyk,1659056
|
|
31
30
|
micrOS/micropython/esp32s3-8MBflash-20241129-v1.24.1.bin,sha256=Att5Tefiky4cDYBhBgFJx7imcrbLDSqhT7l9_yAE1Do,1659056
|
|
32
|
-
micrOS/micropython/esp32s3_spiram_oct-20231005-v1.21.0.bin,sha256=S-sv_QeL_Tylg1t9nR-5gjxt0-xMpFY-_O8ot-L8jlE,1561184
|
|
33
31
|
micrOS/micropython/esp32s3_spiram_oct-20241129-v1.24.1.bin,sha256=VbOF_F0YeqttkQd2ePTW66Jd34RU8u9ccFfcv8kxO_U,1662672
|
|
34
32
|
micrOS/micropython/rpi-pico-w-20241129-v1.24.1.uf2,sha256=v4aYIbWaE94_f6DDzBWS-a9L1BzlcdkZwld9R7bOVA4,1727488
|
|
35
33
|
micrOS/micropython/tinypico-20241129-v1.24.1.bin,sha256=Kf3cr766a5SK99CZy8bwdWjwvAZxls3tBYvaHBsw7ac,1527200
|
|
36
|
-
micrOS/release_info/micrOS_ReleaseInfo/system_analysis_sum.json,sha256=
|
|
34
|
+
micrOS/release_info/micrOS_ReleaseInfo/system_analysis_sum.json,sha256=jxV1a-5_zokkX1Ot_ZchBpVjMUckk4b6142YbfItyMY,6260
|
|
37
35
|
micrOS/source/.DS_Store,sha256=1lFlJ5EFymdzGAUAaI30vcaaLHt3F1LwpG7xILf9jsM,6148
|
|
38
|
-
micrOS/source/Common.py,sha256=
|
|
39
|
-
micrOS/source/Config.py,sha256=
|
|
36
|
+
micrOS/source/Common.py,sha256=Ef6Pk2Esx0SpNbxV951NilMBUqFf2LbGSAeKUSNovxs,16585
|
|
37
|
+
micrOS/source/Config.py,sha256=Ci2VjlK2RW1rvKr1xR4A6HeqktZYAkrU12hFVqngXB0,9178
|
|
40
38
|
micrOS/source/Debug.py,sha256=in2tx6Dw8EqeKYTrJpLxSevpoIrJjxlH17JLrTui1o8,3287
|
|
41
|
-
micrOS/source/Espnow.py,sha256=
|
|
39
|
+
micrOS/source/Espnow.py,sha256=E-hqJstOrcE2WtniwMdUT3UfXX1NlitAir05pSbou-8,13082
|
|
42
40
|
micrOS/source/Files.py,sha256=SsA4kDWiB8gcunmu9mVVVGmTzxSvkpBqQV-J-U5rzt4,5428
|
|
43
41
|
micrOS/source/Hooks.py,sha256=XdHCo2avht0wUj5xT1oM4tPGZM4uZ2DYmaCOFHYIpjM,4190
|
|
44
|
-
micrOS/source/InterConnect.py,sha256=
|
|
42
|
+
micrOS/source/InterConnect.py,sha256=MZGPo1h2fcztDkXUBHt9oRknbg6Mr281-3z6XKrUZgo,11098
|
|
45
43
|
micrOS/source/Interrupts.py,sha256=kLDsByjoGeEiDk_0yV7iAvsZlKs9uFqPcAKkdNNR6HU,7543
|
|
46
44
|
micrOS/source/Logger.py,sha256=QSABn-dFDBDQFxgQzu1vpWnqHFg7UjJ-6utMmpEWqes,3979
|
|
47
45
|
micrOS/source/Network.py,sha256=bFG_OE1baHQFJgpcNC_KAKTGPQlgN7pisV07CI30k1g,10165
|
|
48
46
|
micrOS/source/Notify.py,sha256=5_Sqy2FeBVG6HznC48Rgg812AglGjO8pkDYGSpp5qSg,2637
|
|
49
47
|
micrOS/source/Scheduler.py,sha256=EhOdDQqN4V1G0TD2jU5cmjUjY_g-sU8NwFoUfniBKF0,9628
|
|
50
|
-
micrOS/source/Server.py,sha256=
|
|
51
|
-
micrOS/source/Shell.py,sha256=
|
|
52
|
-
micrOS/source/Tasks.py,sha256=
|
|
48
|
+
micrOS/source/Server.py,sha256=WSDW2BaCkTxkDruKZXW98jhtQXHKaCz7Em1oPYQL4Kk,16869
|
|
49
|
+
micrOS/source/Shell.py,sha256=I1zK7WFhOVUt9VicUJLnv-pmwTWNVMFu4hu7pSOZRfs,13309
|
|
50
|
+
micrOS/source/Tasks.py,sha256=yZK3LeDcAZZ-tthFdAD1BWon5pbTzY-ReW-I1Q-0-mY,24383
|
|
53
51
|
micrOS/source/Time.py,sha256=8EHp86CAkbGIErGgN-VGAsslUBFIooRGkHB1hUYwwOE,6408
|
|
54
52
|
micrOS/source/Types.py,sha256=Ft_gHokGNa9aQRGSwE3NYIvYZuolT3zfkD5JzhycQ1s,3499
|
|
55
53
|
micrOS/source/Web.py,sha256=EeZzKcZMTDVls5Qu-kT8dnX2Mt8L6M4eLiCBhDBJa40,11059
|
|
56
54
|
micrOS/source/main.py,sha256=cVlhoWwU9dSKEol0HWPihFAPzrUUvzSGwZNNMrpyfSY,440
|
|
57
55
|
micrOS/source/micrOS.py,sha256=QM1lgUnv2qrklj5-qgU6MM_6YsTKq4VGk71Od3Dzx1M,2872
|
|
58
|
-
micrOS/source/micrOSloader.py,sha256=
|
|
56
|
+
micrOS/source/micrOSloader.py,sha256=9o6VIWPAgnQVb3uQDHENW9aO21gkM4jgR4O1t6uoPHI,4624
|
|
59
57
|
micrOS/source/microIO.py,sha256=h7i78Rl_DKG5vwpCgk1dsY-Z9ikvmOQLMiusYP_yRMI,7096
|
|
60
58
|
micrOS/source/reset.py,sha256=i7wsPkOXE7Mm0xOiw1CjqCvCdNjBvYswn9CRDvE2VbE,248
|
|
61
59
|
micrOS/source/urequests.py,sha256=SrzOgo8UF9YncjfeItM9-xqUr5xEoUt1kOcPxisn6uw,9456
|
|
@@ -81,44 +79,43 @@ micrOS/source/modules/LM_OV2640.py,sha256=E8zveGtp7GHerY4Chokvd0iREf-qMGXD2nA4YR
|
|
|
81
79
|
micrOS/source/modules/LM_VL53L0X.py,sha256=dqK7yP9Qgc-OzRJBAX3-26N_cwoMGlpG7oBcc7faPoM,10122
|
|
82
80
|
micrOS/source/modules/LM_aht10.py,sha256=aC6-cvfG6OWoBinYD47mYGg7eIY8BfJxg6yMENr7k90,4002
|
|
83
81
|
micrOS/source/modules/LM_bme280.py,sha256=4v7HtJ3HgbLwpRe-OwKR-D2nTM_PBDyFR8SHInig3Is,12708
|
|
84
|
-
micrOS/source/modules/LM_buzzer.py,sha256=
|
|
85
|
-
micrOS/source/modules/LM_cct.py,sha256=
|
|
82
|
+
micrOS/source/modules/LM_buzzer.py,sha256=EWkAWkC-W0-zFbxv1XCg_j_kS6hl5zVj03CxGw9jFSg,12356
|
|
83
|
+
micrOS/source/modules/LM_cct.py,sha256=iZKgAHeTF16TmNDPfb-UNfw9x-5LvV_3me-O_GBbFjk,14049
|
|
86
84
|
micrOS/source/modules/LM_cluster.py,sha256=iI-l6TJP4ejOY8tlE3OgjP82AL7dPNmn2fnaq4CRIdo,8937
|
|
87
85
|
micrOS/source/modules/LM_co2.py,sha256=Eopq9eEPV9W2x5mx5EJGllg09_HFTYiI1hZE2T_PWTY,5460
|
|
88
86
|
micrOS/source/modules/LM_dashboard_be.py,sha256=KVaJH37TCJkEwZJdGAVKpJtZXyVqYKDupyJO5BXvI0c,966
|
|
89
87
|
micrOS/source/modules/LM_dht11.py,sha256=pmmtpxnYHApo63WvQXHlgx_z3A86dMSi1Stb9pSRpYY,2010
|
|
90
88
|
micrOS/source/modules/LM_dht22.py,sha256=QVJ1OidP27LFPGesSSdEUr19QXAwYOcqEWC622k_eIA,2011
|
|
91
|
-
micrOS/source/modules/LM_dimmer.py,sha256=
|
|
92
|
-
micrOS/source/modules/LM_distance.py,sha256=
|
|
89
|
+
micrOS/source/modules/LM_dimmer.py,sha256=qMmYGKhij2euvM9IpXHPlGdA9oOfv7NzbxqMcZqBgE8,8321
|
|
90
|
+
micrOS/source/modules/LM_distance.py,sha256=kxqtx2_Zo4v3oohbdtm6jgNF_dmZOug-qf9yHHReTI8,4338
|
|
93
91
|
micrOS/source/modules/LM_ds18.py,sha256=mLaH97j8d4lUXcjS8hNtwU8hL5Ybt-Q1WuoiWPnk5Ho,1807
|
|
94
92
|
micrOS/source/modules/LM_esp32.py,sha256=AAMceuWTWMDu_1EJH-617dmp5ClPaAzFKgDOHWEiX0I,1862
|
|
95
|
-
micrOS/source/modules/LM_espnow.py,sha256=
|
|
93
|
+
micrOS/source/modules/LM_espnow.py,sha256=8WVKGinXL380aj6-qB2euhpwxN2y9pQcXMH-CrW7FJ0,1085
|
|
96
94
|
micrOS/source/modules/LM_gameOfLife.py,sha256=Mvr_S5zsJ6x_pMCGrkdgl5QdejNQjAF9mBYLN5-OA38,7685
|
|
97
95
|
micrOS/source/modules/LM_genIO.py,sha256=rTiFByly8ImjHBgc2RceGczGp1rzti7Juz_Vvg5hrtc,5013
|
|
98
96
|
micrOS/source/modules/LM_haptic.py,sha256=W0WiuOCxIu9RB-pWu8r8fvHmvuseet1UI7RSc9WO8zo,2862
|
|
99
97
|
micrOS/source/modules/LM_i2c.py,sha256=hdInP8L2gRPUQ5_8YnqEDOKf5nJ9lwyikRADYO6Em_4,1600
|
|
100
|
-
micrOS/source/modules/LM_i2s_mic.py,sha256=
|
|
101
|
-
micrOS/source/modules/LM_keychain.py,sha256
|
|
98
|
+
micrOS/source/modules/LM_i2s_mic.py,sha256=HpyrzeHLa5yDbgS6TYVj7zaXXud8PLvq0WivlFhVPRo,12216
|
|
99
|
+
micrOS/source/modules/LM_keychain.py,sha256=0PPAjdBGHXSj47GeovO-YdrQK0uf2toEFjkDbelNzAE,12640
|
|
102
100
|
micrOS/source/modules/LM_ld2410.py,sha256=dWBsIkI0ryomn0zDrmz5YxaGcoH5TqjAsi2qwGd8UZM,6524
|
|
103
|
-
micrOS/source/modules/LM_light_sensor.py,sha256=
|
|
104
|
-
micrOS/source/modules/LM_mqtt_client.py,sha256=
|
|
105
|
-
micrOS/source/modules/LM_neoeffects.py,sha256=
|
|
106
|
-
micrOS/source/modules/LM_neomatrix.py,sha256=
|
|
107
|
-
micrOS/source/modules/LM_neopixel.py,sha256=
|
|
101
|
+
micrOS/source/modules/LM_light_sensor.py,sha256=QTyzkJKOOqHvkbzkzn1ZUQe4gSpXVMzJOP05-u8L52U,4401
|
|
102
|
+
micrOS/source/modules/LM_mqtt_client.py,sha256=QEtmnMWUZJsGVe8Ca5Q10gbR8TQMewWa4HMRz7iCFFU,8567
|
|
103
|
+
micrOS/source/modules/LM_neoeffects.py,sha256=zzsHEfZE7-c6cLVlRM9tPhbUDqBYytdHlvm41fv1nG0,9858
|
|
104
|
+
micrOS/source/modules/LM_neomatrix.py,sha256=jCNpV-HDOpNHe7k00fr4TfDVYkM45wCmB4ZfvKAm_NA,14332
|
|
105
|
+
micrOS/source/modules/LM_neopixel.py,sha256=V0WEwHtjj0cKfiUpWNdRVOa6KEJ6q3VhNzobN9PfQr4,13212
|
|
108
106
|
micrOS/source/modules/LM_oled.py,sha256=ZwLndxWuY1Ii5d06YEf9Z_jxmTyoOYRL-BO3VhJ0b14,9903
|
|
109
107
|
micrOS/source/modules/LM_oled_sh1106.py,sha256=av2_ftFHvfAIxcPYHbrOMQNZgM1Go6MQzBu5cIeVK4w,11723
|
|
110
|
-
micrOS/source/modules/LM_oled_ui.py,sha256=
|
|
111
|
-
micrOS/source/modules/LM_oledui.py,sha256=
|
|
108
|
+
micrOS/source/modules/LM_oled_ui.py,sha256=Dux4h8zUwSPa8zfo_lwmhH31Xmyb76d04AFoSTlwa98,22276
|
|
109
|
+
micrOS/source/modules/LM_oledui.py,sha256=LlkJixv3bl3o-8Das7Iu8ouaivuB79iWs2ZLiSRnwuI,35321
|
|
112
110
|
micrOS/source/modules/LM_pacman.py,sha256=YWshcR0itd3CAZSfvpOkyH9Ux9H0dBKonI4fzK77qls,9750
|
|
113
|
-
micrOS/source/modules/
|
|
114
|
-
micrOS/source/modules/LM_presence.py,sha256=8cagHD12HF4E6qgSn6zkf6yyY6aiBiIcEvRrfVuPyzE,8796
|
|
111
|
+
micrOS/source/modules/LM_presence.py,sha256=jzJKJJ6hwPCZjQfOTO8iQdVIym89V4DhIiYf72KtXso,8741
|
|
115
112
|
micrOS/source/modules/LM_qmi8658.py,sha256=4OOAUo7NV7G1Rx01l8LK-wGw19GDaAukDjH6vvxt7ds,6303
|
|
116
113
|
micrOS/source/modules/LM_rencoder.py,sha256=9w00JP8UKC_GEKr18xgZ5axX9xc_wVeR9XlWpVR2Qzw,3973
|
|
117
|
-
micrOS/source/modules/LM_rest.py,sha256=
|
|
118
|
-
micrOS/source/modules/LM_rgb.py,sha256=
|
|
114
|
+
micrOS/source/modules/LM_rest.py,sha256=HwKfKkX6VIC99o1BEaR_xzQY6e6UMsQXRjPa1jFyhCM,2617
|
|
115
|
+
micrOS/source/modules/LM_rgb.py,sha256=ITPxLTPbFI9vXu9waVEKJ-C66IvORtbCW9OwZFcjEig,11895
|
|
119
116
|
micrOS/source/modules/LM_rgbcct.py,sha256=Ct0X_O0AuSTsf4YiZjP4Zvke81y6dQMryhcn-HKkR9M,1841
|
|
120
|
-
micrOS/source/modules/LM_roboarm.py,sha256=
|
|
121
|
-
micrOS/source/modules/LM_robustness.py,sha256=
|
|
117
|
+
micrOS/source/modules/LM_roboarm.py,sha256=fmzR0L_EJuLi8u_kCNFyKRBoC-J-90leeMW1EgDq55M,9984
|
|
118
|
+
micrOS/source/modules/LM_robustness.py,sha256=09h-sE10J4PriNB6VK3b544cPMrQbiTqIvpB7mS-lYM,3760
|
|
122
119
|
micrOS/source/modules/LM_rp2w.py,sha256=vdN-gxc38-WI4XK6MMz3FBPYmLdUSjEyB6JuKR_slbM,391
|
|
123
120
|
micrOS/source/modules/LM_sdcard.py,sha256=y7pB35Xqb0EporESZ6_wHTUe8ez_R2ud_mwdh-wC-30,1030
|
|
124
121
|
micrOS/source/modules/LM_servo.py,sha256=83YPK5qlHuEOo3jTn5wXRsvPzzJPp0ZtCW-BhHHMBK0,3481
|
|
@@ -126,8 +123,8 @@ micrOS/source/modules/LM_sound_event.py,sha256=9BZnrT8Jc2HL-28yVZE5sdeTa8Biq1qkQ
|
|
|
126
123
|
micrOS/source/modules/LM_stepper.py,sha256=CkI4QBe2KJ7E5DKL7Z23oAMPDUFlUt7btAvqrn4H6Kg,4278
|
|
127
124
|
micrOS/source/modules/LM_switch.py,sha256=1go-jfbh0zisi3Cw680n9PmcoC-dwh_N4c5fMRceJBc,7868
|
|
128
125
|
micrOS/source/modules/LM_system.py,sha256=-URoeSdNZkv4veJlxlsj7JrEHbMKFfXlImwZpGUnm-4,6579
|
|
129
|
-
micrOS/source/modules/LM_tcs3472.py,sha256=
|
|
130
|
-
micrOS/source/modules/LM_telegram.py,sha256=
|
|
126
|
+
micrOS/source/modules/LM_tcs3472.py,sha256=Kvkpxigv-9zgfy2_jUqKJzZgMBZxOXqQf4QBU9McndY,5459
|
|
127
|
+
micrOS/source/modules/LM_telegram.py,sha256=unA5P6h_o0MPvESnJxp8RfEg_fbRtMafJjZeazIZ52w,15170
|
|
131
128
|
micrOS/source/modules/LM_tinyrgb.py,sha256=kChL607HPTl3Z2hYN2XnzXXfZ6omdP78PQutHdbdfCo,3031
|
|
132
129
|
micrOS/source/modules/LM_trackball.py,sha256=N2hhy3wuk55-ja4dmENpfthBolIEj28d2pzcjel5OKg,9716
|
|
133
130
|
micrOS/source/modules/LM_veml7700.py,sha256=3eb6-HuMA_tYBA0cJHUsZzOBriHacIpVSrK-1iB3_pY,5762
|
|
@@ -139,21 +136,21 @@ micrOS/source/web/udashboard.js,sha256=42mPR_NU3jOqUgLi7yZv2L7bN6uGqw9LpScDrGGF5
|
|
|
139
136
|
micrOS/source/web/ustyle.css,sha256=P-s8ENwAcWoZi5bocrK3_kVzEjaRFKtFvEF6JRh4MBY,1429
|
|
140
137
|
micrOS/source/web/uwidgets.js,sha256=BGeUSbNHn6PClgIgIE6QszwQVJ6j7lzgCBwvIX8cYgo,6631
|
|
141
138
|
micrOS/source/web/uwidgets_pro.js,sha256=gbkk3SVttEVvDCwde-pJhAh4k7GuCFPdcWNq32pcKPE,3639
|
|
142
|
-
microsdevtoolkit-2.
|
|
143
|
-
microsdevtoolkit-2.
|
|
139
|
+
microsdevtoolkit-2.20.0.data/scripts/devToolKit.py,sha256=4GutIOErF1ny0HSNWQZzEneZdUWhSdqKPBjpRFTr5do,11192
|
|
140
|
+
microsdevtoolkit-2.20.0.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
|
144
141
|
toolkit/DevEnvCompile.py,sha256=wNBf0T7w07SYC3eLFow3JtZApHQK-92Fu7CvJHqWuSM,13189
|
|
145
142
|
toolkit/DevEnvOTA.py,sha256=8IfAcvV0L_H91FAiZDRBmC06cWOXXCpoSDO-JWE6CG4,26889
|
|
146
143
|
toolkit/DevEnvUSB.py,sha256=TorXJt5qJ1Wk8Qi5Ncn3ortu432GHVCSQFXhSuA0OSU,37197
|
|
147
|
-
toolkit/Gateway.py,sha256=
|
|
144
|
+
toolkit/Gateway.py,sha256=wz81ZteRtKuNsXmX3Zi9Uo4g5fuCxbErAhas0HrkJqU,25353
|
|
148
145
|
toolkit/LM_to_compile.dat,sha256=EcJSCR3xugskiLAJY1BWEBfa0A4EhP5qHDXNRQZQ30E,619
|
|
149
146
|
toolkit/MicrOSDevEnv.py,sha256=Puh0u2oQhPptj-XTvvi8N9Wm3UzDBys1ZHQvzCXjmB4,14583
|
|
150
147
|
toolkit/WebRepl.py,sha256=805SJGoflJztyFR4DFxP80KVvNEeJfqZxlYeA3uD680,2696
|
|
151
148
|
toolkit/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
152
149
|
toolkit/img_stream.html,sha256=ZGyrUgpi-JhMl4euS-TTjwwGrg66a2pGUQCopWiveds,5135
|
|
153
150
|
toolkit/index.html,sha256=agTgT1d4FH8l2h47Hfb4Lv061BW9shsCAgq1abO5hlI,10998
|
|
154
|
-
toolkit/micrOSdashboard.py,sha256=
|
|
151
|
+
toolkit/micrOSdashboard.py,sha256=5cd7-m3VlTMBX4jkw-kzVHS-Rzj7MnYNKKLm4w9hgOM,54335
|
|
155
152
|
toolkit/micrOSlint.py,sha256=39TpsZs815L3XCI3opweOGiIJHYdvEizFbd9TlHiuck,26126
|
|
156
|
-
toolkit/socketClient.py,sha256=
|
|
153
|
+
toolkit/socketClient.py,sha256=sQ1I04WPSmk8KwvJTgjPCWdMHKE5sKLSwMsUrOUxCao,19980
|
|
157
154
|
toolkit/dashboard_apps/BackupRestore.py,sha256=udhuFpCawO0mwyiN4vFMfV8wONqHnUjYvL0udJzkq44,5897
|
|
158
155
|
toolkit/dashboard_apps/CCTDemo.py,sha256=oV7k6sxepOxEa7tBNcuK5IHgKnv01sIQRPvUljic8NI,1125
|
|
159
156
|
toolkit/dashboard_apps/CCTTest.py,sha256=saU4L8gOst31bno44vlwaeSzqrIBppW2DrZf2KV7_4o,3641
|
|
@@ -170,7 +167,7 @@ toolkit/dashboard_apps/RGBTest.py,sha256=QIky1Ts87h52VS9vHs3rYoEYvwFX02BlJxzK-uE
|
|
|
170
167
|
toolkit/dashboard_apps/RoboArm.py,sha256=fqsBFTLEKXLyuZtZhbsNMNLCVtJw3gHWE-37EzjRttw,1814
|
|
171
168
|
toolkit/dashboard_apps/SED_test.py,sha256=hQG8F2isZvCEsb0EvUdvcowLtJ86vrhLMOvpe9EPcJM,2703
|
|
172
169
|
toolkit/dashboard_apps/SensorsTest.py,sha256=h6Sqz9HzjUawKuvxBPMltgWAycIXUUqlLANZqlF030M,1472
|
|
173
|
-
toolkit/dashboard_apps/SystemTest.py,sha256=
|
|
170
|
+
toolkit/dashboard_apps/SystemTest.py,sha256=AKV1J9VRSHykSmFMh53dfuyM_qUs-oGUebrIDi6f4w4,26519
|
|
174
171
|
toolkit/dashboard_apps/Template_app.py,sha256=1OLO-xA6qNKyDCj-J7nHkA3Eis4ZKnHfhMcaSqHNX4A,758
|
|
175
172
|
toolkit/dashboard_apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
176
173
|
toolkit/dashboard_apps/_app_base.py,sha256=u2-Clkaosftr0bgr2kiClcQ1lkJT8GoUD9UUOOKVVmk,1039
|
|
@@ -292,28 +289,28 @@ toolkit/user_data/webhooks/macro.py,sha256=r1TnOP4Bq-G3XQGwcV0FHcvlzwVaojUrrhbtp
|
|
|
292
289
|
toolkit/user_data/webhooks/template.macro,sha256=XikSl3FsD6W9pUx3sqavM5tWIMBquFx9f3bh_CB8k-A,631
|
|
293
290
|
toolkit/user_data/webhooks/template.py,sha256=UhyXmETAEr-VQutY9ME4gAb-4qi7qVfZ0NjSU1inn-E,342
|
|
294
291
|
toolkit/workspace/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
295
|
-
toolkit/workspace/precompiled/Common.mpy,sha256=
|
|
296
|
-
toolkit/workspace/precompiled/Config.mpy,sha256=
|
|
292
|
+
toolkit/workspace/precompiled/Common.mpy,sha256=NhIMgu2QPTifEzkZCLBKVxGwNIQ6xyyQ3b03gEJoTBg,4133
|
|
293
|
+
toolkit/workspace/precompiled/Config.mpy,sha256=tj0x_vwNo59wqBbkoFJ_-7reXQWwwQtG3-Sg_CMeNlo,3272
|
|
297
294
|
toolkit/workspace/precompiled/Debug.mpy,sha256=BJqoH4QdOmeybdUxUlhNu6ApHo4KTraJ5F_winmwOm0,1039
|
|
298
|
-
toolkit/workspace/precompiled/Espnow.mpy,sha256=
|
|
295
|
+
toolkit/workspace/precompiled/Espnow.mpy,sha256=iIWsO_ov7Wh_iQlEeqtb8vHd6ppo8BgqnInbuRFljsA,4445
|
|
299
296
|
toolkit/workspace/precompiled/Files.mpy,sha256=_qwNi5p_d1PXPRoF5SWiFuxmY3qt8OtT8FOhW5JusF0,1798
|
|
300
297
|
toolkit/workspace/precompiled/Hooks.mpy,sha256=Jb-3JliF0O4RitSfsVm8zxSFT3VGcYmPked9W6X1jNw,1769
|
|
301
|
-
toolkit/workspace/precompiled/InterConnect.mpy,sha256=
|
|
298
|
+
toolkit/workspace/precompiled/InterConnect.mpy,sha256=bhoTshgN07Ou4fRnW5YHDtd8sk2e3-dCQEgdJWlsnYQ,3330
|
|
302
299
|
toolkit/workspace/precompiled/Interrupts.mpy,sha256=0p3Bpx1C7wXWHz9jLM-eqFD0X9wuT6eKzaOdmzpkVBE,2128
|
|
303
300
|
toolkit/workspace/precompiled/Logger.mpy,sha256=lgAiS5nQqIskNBtEqDoH3GwohOH0mflr8JoYV6b5x4g,1324
|
|
304
301
|
toolkit/workspace/precompiled/Network.mpy,sha256=foBjsIZ1SafRplCw8v5GgDU_WjPTaRz1W9D6VYyaBSc,3553
|
|
305
302
|
toolkit/workspace/precompiled/Notify.mpy,sha256=i8LNNynvNxi-tA5QT0pQJ8NJ_DNxJNW4NTZRD6gGS7M,970
|
|
306
303
|
toolkit/workspace/precompiled/Scheduler.mpy,sha256=S-ZS1N420Xew74F_90O4FvFvrvmRTMiCh-C8szrdhfI,2198
|
|
307
|
-
toolkit/workspace/precompiled/Server.mpy,sha256=
|
|
308
|
-
toolkit/workspace/precompiled/Shell.mpy,sha256=
|
|
309
|
-
toolkit/workspace/precompiled/Tasks.mpy,sha256=
|
|
304
|
+
toolkit/workspace/precompiled/Server.mpy,sha256=dS2IY9NAjvy2v7-fQHeY44n080GlL3ZV8ENtN1A3KPw,4896
|
|
305
|
+
toolkit/workspace/precompiled/Shell.mpy,sha256=EgF2dSFgednlMKdoR4TCndHV4frf4h2XBseIzU31_xw,4821
|
|
306
|
+
toolkit/workspace/precompiled/Tasks.mpy,sha256=OCEIC_9OCjOA0hye1t-d_5iGv1Hg700XZMvyz2UIFts,6712
|
|
310
307
|
toolkit/workspace/precompiled/Time.mpy,sha256=3thC6iKW4UJdjNP-Jo1Ol0Zn-e4oy2H1wiIz7SH182E,2865
|
|
311
308
|
toolkit/workspace/precompiled/Types.mpy,sha256=5QGhswa0jWAU1Ywpyl_92miQg4qDHReXLqq3iHBwUCs,1397
|
|
312
309
|
toolkit/workspace/precompiled/Web.mpy,sha256=X3-nqKYY_RSLsAspTFY_O7H5vkUR0OwECFbSyxqSUUc,4030
|
|
313
310
|
toolkit/workspace/precompiled/_mpy.version,sha256=Kik-fvRGfWAmpEjKdJLq7nPOqYR_jVgB0aiXZ8LMvMA,6
|
|
314
311
|
toolkit/workspace/precompiled/main.py,sha256=cVlhoWwU9dSKEol0HWPihFAPzrUUvzSGwZNNMrpyfSY,440
|
|
315
312
|
toolkit/workspace/precompiled/micrOS.mpy,sha256=zNzWg5S_-sHW_kxX9FOPlMboGMCNe_kzc1WWdN1_PEg,1208
|
|
316
|
-
toolkit/workspace/precompiled/micrOSloader.mpy,sha256
|
|
313
|
+
toolkit/workspace/precompiled/micrOSloader.mpy,sha256=-4nL5AeXCf1-lKP6sXbj4F_QayQjCo2PpA0AHdZYQEg,1574
|
|
317
314
|
toolkit/workspace/precompiled/microIO.mpy,sha256=pyfx0fA6VPniMKvmOID9Uzkq0loakhntT59hbtinsH4,1722
|
|
318
315
|
toolkit/workspace/precompiled/reset.mpy,sha256=D-ZwUk-oR8OAg5ERWJXErdPAGbx_3M13hK4IBawhIg0,217
|
|
319
316
|
toolkit/workspace/precompiled/urequests.mpy,sha256=tG4ttpfHPkyNk5vvbXDHKZm8zYPNEw1NYE0Ltnrjca8,2516
|
|
@@ -334,44 +331,43 @@ toolkit/workspace/precompiled/modules/LM_OV2640.mpy,sha256=1uZhEZuY8WlLO3c6MWc9n
|
|
|
334
331
|
toolkit/workspace/precompiled/modules/LM_VL53L0X.py,sha256=dqK7yP9Qgc-OzRJBAX3-26N_cwoMGlpG7oBcc7faPoM,10122
|
|
335
332
|
toolkit/workspace/precompiled/modules/LM_aht10.mpy,sha256=ju5Xs_Krt212I6h2CSo7glZlGR3FyAPYnaJPrDuuzHM,1422
|
|
336
333
|
toolkit/workspace/precompiled/modules/LM_bme280.mpy,sha256=qDxvzKhQkPaKpgXB2KZZ3D8F9nTlDiVDISof7NXxXtQ,4438
|
|
337
|
-
toolkit/workspace/precompiled/modules/LM_buzzer.mpy,sha256=
|
|
338
|
-
toolkit/workspace/precompiled/modules/LM_cct.mpy,sha256=
|
|
334
|
+
toolkit/workspace/precompiled/modules/LM_buzzer.mpy,sha256=bRQ_V3TuzHVsCrkdkb2OoyBsYDsm7xW3r0GwoUHm0r4,5944
|
|
335
|
+
toolkit/workspace/precompiled/modules/LM_cct.mpy,sha256=0WlWm2v56OquSvC9NChjcXQYUg3KhkPaFOlvOYGGzlY,3836
|
|
339
336
|
toolkit/workspace/precompiled/modules/LM_cluster.mpy,sha256=GjZHkj6Y-XKBAnQRkEIPmKb_xEox9j738_531E8z1og,3020
|
|
340
337
|
toolkit/workspace/precompiled/modules/LM_co2.mpy,sha256=ma_cjCG8LoBMq_dt74PsrL-sn6U61a58pl_JgyxXdDM,1487
|
|
341
338
|
toolkit/workspace/precompiled/modules/LM_dashboard_be.py,sha256=KVaJH37TCJkEwZJdGAVKpJtZXyVqYKDupyJO5BXvI0c,966
|
|
342
339
|
toolkit/workspace/precompiled/modules/LM_dht11.mpy,sha256=esQhbgiMGiGChsTUAn1VbG9K6JHU3tQAxRKKfVMloEQ,745
|
|
343
340
|
toolkit/workspace/precompiled/modules/LM_dht22.mpy,sha256=1neWPrEHqMoG3aO6ElLRneZvAFJxTevqiQR5Aq79NMw,745
|
|
344
|
-
toolkit/workspace/precompiled/modules/LM_dimmer.mpy,sha256=
|
|
345
|
-
toolkit/workspace/precompiled/modules/LM_distance.mpy,sha256=
|
|
341
|
+
toolkit/workspace/precompiled/modules/LM_dimmer.mpy,sha256=5e848cdQnMRYCngIvwl2dKW_QmPXE0iPkeGs1gXfKQY,2382
|
|
342
|
+
toolkit/workspace/precompiled/modules/LM_distance.mpy,sha256=DkMrb_EeiXk8IgWFnvNRyIp_kFE-FuTR1KfMYY40R2c,1476
|
|
346
343
|
toolkit/workspace/precompiled/modules/LM_ds18.mpy,sha256=WtM_FBMcwvxjqB1EsAgfkUAWBYV7AEGKIoaXOEmifB0,652
|
|
347
344
|
toolkit/workspace/precompiled/modules/LM_esp32.py,sha256=AAMceuWTWMDu_1EJH-617dmp5ClPaAzFKgDOHWEiX0I,1862
|
|
348
|
-
toolkit/workspace/precompiled/modules/LM_espnow.py,sha256=
|
|
345
|
+
toolkit/workspace/precompiled/modules/LM_espnow.py,sha256=8WVKGinXL380aj6-qB2euhpwxN2y9pQcXMH-CrW7FJ0,1085
|
|
349
346
|
toolkit/workspace/precompiled/modules/LM_gameOfLife.mpy,sha256=z-JxoeQ76mTOXY6c_NnKclRJ4Mny0O-b9s2XBPJfXUE,2059
|
|
350
347
|
toolkit/workspace/precompiled/modules/LM_genIO.mpy,sha256=M7aYNyNB1SqmLnt9y_Q0MfSMIfewyT3Uc_MSFJpjd3Q,1730
|
|
351
348
|
toolkit/workspace/precompiled/modules/LM_haptic.mpy,sha256=pNUF7OJJhq-kyiDI9ceuJp3YbB1P8Gj95DvLlZSz1aw,1284
|
|
352
349
|
toolkit/workspace/precompiled/modules/LM_i2c.py,sha256=hdInP8L2gRPUQ5_8YnqEDOKf5nJ9lwyikRADYO6Em_4,1600
|
|
353
|
-
toolkit/workspace/precompiled/modules/LM_i2s_mic.mpy,sha256=
|
|
354
|
-
toolkit/workspace/precompiled/modules/LM_keychain.mpy,sha256=
|
|
350
|
+
toolkit/workspace/precompiled/modules/LM_i2s_mic.mpy,sha256=6ys15rwdyLjjfwnjXqOOEdHnsHoqeap_l0qW8luvhCI,3959
|
|
351
|
+
toolkit/workspace/precompiled/modules/LM_keychain.mpy,sha256=VfUJDCHBo61TmT5kCMCX2zvVjr4Mn2vlymlB6V8istA,3597
|
|
355
352
|
toolkit/workspace/precompiled/modules/LM_ld2410.mpy,sha256=Yost6gCTx55nQoyggmHHHoDmFDWpEK14MCsP6o70m_8,2589
|
|
356
|
-
toolkit/workspace/precompiled/modules/LM_light_sensor.mpy,sha256=
|
|
357
|
-
toolkit/workspace/precompiled/modules/LM_mqtt_client.mpy,sha256=
|
|
358
|
-
toolkit/workspace/precompiled/modules/LM_neoeffects.mpy,sha256=
|
|
359
|
-
toolkit/workspace/precompiled/modules/LM_neomatrix.mpy,sha256=
|
|
360
|
-
toolkit/workspace/precompiled/modules/LM_neopixel.mpy,sha256=
|
|
353
|
+
toolkit/workspace/precompiled/modules/LM_light_sensor.mpy,sha256=qsGHgrEA5awuQsFyF8v4ps4saS1VqmV9mEH1MtBfdlw,1430
|
|
354
|
+
toolkit/workspace/precompiled/modules/LM_mqtt_client.mpy,sha256=USpE4Q_8dJA3-9d-NS8sdAonZUVzgP0T1L9dhk3pDjw,2857
|
|
355
|
+
toolkit/workspace/precompiled/modules/LM_neoeffects.mpy,sha256=R3Ssmr3Ag-cJP5IKBsSDTSXQmxMIeo4JzvTEvcug5FU,3089
|
|
356
|
+
toolkit/workspace/precompiled/modules/LM_neomatrix.mpy,sha256=exJxcMKVP4xUi1ct7yj5LWFAfeIWmU12JnexmGloHM0,5071
|
|
357
|
+
toolkit/workspace/precompiled/modules/LM_neopixel.mpy,sha256=INhwGU1maVlk52j8_WS1t9wX22xsnpPeE0rNyZoPKlc,3637
|
|
361
358
|
toolkit/workspace/precompiled/modules/LM_oled.mpy,sha256=82OqTsCgooB4y6BdMMBaDyfHYoHkq1W_UMteOmy0ePw,3162
|
|
362
359
|
toolkit/workspace/precompiled/modules/LM_oled_sh1106.mpy,sha256=tOsOk5zOT9f5sw027wQyUEXRanx8IcSyuUN6tgfd73w,3769
|
|
363
|
-
toolkit/workspace/precompiled/modules/LM_oled_ui.mpy,sha256=
|
|
364
|
-
toolkit/workspace/precompiled/modules/LM_oledui.mpy,sha256=
|
|
360
|
+
toolkit/workspace/precompiled/modules/LM_oled_ui.mpy,sha256=JRd-1h_rk8_-r7BuXW18d7abJHgr8zv56Kjd4dJ-Ass,7044
|
|
361
|
+
toolkit/workspace/precompiled/modules/LM_oledui.mpy,sha256=vf3dnKokNmOlE4e_z1J6gMV1bfOuWmJ3quGzQWgP0UY,11488
|
|
365
362
|
toolkit/workspace/precompiled/modules/LM_pacman.mpy,sha256=m7S4Gi3fAihwxpfzCaSkTDPyIzmqp4hf6KroBo5ucPw,3946
|
|
366
|
-
toolkit/workspace/precompiled/modules/
|
|
367
|
-
toolkit/workspace/precompiled/modules/LM_presence.mpy,sha256=1ZRzBCmDqwAYhVp4Ww_bcPj2bp5LLsP8l7jNBtOSpUk,2744
|
|
363
|
+
toolkit/workspace/precompiled/modules/LM_presence.mpy,sha256=dYdKcSMimZBHNJakSgfwe0wjqXBPALyNfZC6TrHlK0U,2706
|
|
368
364
|
toolkit/workspace/precompiled/modules/LM_qmi8658.py,sha256=4OOAUo7NV7G1Rx01l8LK-wGw19GDaAukDjH6vvxt7ds,6303
|
|
369
365
|
toolkit/workspace/precompiled/modules/LM_rencoder.py,sha256=9w00JP8UKC_GEKr18xgZ5axX9xc_wVeR9XlWpVR2Qzw,3973
|
|
370
|
-
toolkit/workspace/precompiled/modules/LM_rest.mpy,sha256=
|
|
371
|
-
toolkit/workspace/precompiled/modules/LM_rgb.mpy,sha256
|
|
366
|
+
toolkit/workspace/precompiled/modules/LM_rest.mpy,sha256=mRA5YcMgC9gXcOfzfMC0LHwgXO0ni94_Xi9C_y6fX5I,998
|
|
367
|
+
toolkit/workspace/precompiled/modules/LM_rgb.mpy,sha256=adtk1vfNoEC1MuLxmsi9Fax9P6Xq52Q-1XE8Kftfbd8,3429
|
|
372
368
|
toolkit/workspace/precompiled/modules/LM_rgbcct.mpy,sha256=WGWd6x7r8LEte1tSQkVT_zEnN2_Z5P8CVdUmZ3t0jog,632
|
|
373
|
-
toolkit/workspace/precompiled/modules/LM_roboarm.mpy,sha256=
|
|
374
|
-
toolkit/workspace/precompiled/modules/LM_robustness.py,sha256=
|
|
369
|
+
toolkit/workspace/precompiled/modules/LM_roboarm.mpy,sha256=9FTdso0-8gx1SZ-C7ewx8rMTKeBoqtH32bZKmAimK9A,3242
|
|
370
|
+
toolkit/workspace/precompiled/modules/LM_robustness.py,sha256=09h-sE10J4PriNB6VK3b544cPMrQbiTqIvpB7mS-lYM,3760
|
|
375
371
|
toolkit/workspace/precompiled/modules/LM_rp2w.py,sha256=vdN-gxc38-WI4XK6MMz3FBPYmLdUSjEyB6JuKR_slbM,391
|
|
376
372
|
toolkit/workspace/precompiled/modules/LM_sdcard.py,sha256=y7pB35Xqb0EporESZ6_wHTUe8ez_R2ud_mwdh-wC-30,1030
|
|
377
373
|
toolkit/workspace/precompiled/modules/LM_servo.mpy,sha256=xVK5jhO_5ABHHr_pvZRUXmJKMx1QO5idUJzbLhXrZG4,1152
|
|
@@ -379,8 +375,8 @@ toolkit/workspace/precompiled/modules/LM_sound_event.mpy,sha256=HhHnSYPTzd4hHjUK
|
|
|
379
375
|
toolkit/workspace/precompiled/modules/LM_stepper.mpy,sha256=7FJuw86m5AnjPoiD089l90MvXFcpH7sJL8prhrcyjB0,1474
|
|
380
376
|
toolkit/workspace/precompiled/modules/LM_switch.mpy,sha256=zQCsYkulOQ-vRmlAFjGGThOo2X9FQh6P9-En8t31zy0,2302
|
|
381
377
|
toolkit/workspace/precompiled/modules/LM_system.mpy,sha256=DIL5FxfWKAn7gjMK5Wcn7t9IyNLQWhI8qREV-8e6R_o,2824
|
|
382
|
-
toolkit/workspace/precompiled/modules/LM_tcs3472.py,sha256=
|
|
383
|
-
toolkit/workspace/precompiled/modules/LM_telegram.mpy,sha256=
|
|
378
|
+
toolkit/workspace/precompiled/modules/LM_tcs3472.py,sha256=Kvkpxigv-9zgfy2_jUqKJzZgMBZxOXqQf4QBU9McndY,5459
|
|
379
|
+
toolkit/workspace/precompiled/modules/LM_telegram.mpy,sha256=AfMdTPpG_J7XnL8mWFP-BvIzD6qbMfHKYGOSNN9EK4w,5116
|
|
384
380
|
toolkit/workspace/precompiled/modules/LM_tinyrgb.mpy,sha256=ggoQ1nT8GJzA96GZovfuzWderEpOwO_aklDGm2O3WcU,1024
|
|
385
381
|
toolkit/workspace/precompiled/modules/LM_trackball.mpy,sha256=gRdSB3DX1wIFsDqMxLfvBEKy9Xr-otGqx97NvkwHYFI,3479
|
|
386
382
|
toolkit/workspace/precompiled/modules/LM_veml7700.mpy,sha256=X_2O0XnGtEZgSrXHpZc7uOEAdpMZug7tm4RJ-n-mqbM,1961
|
|
@@ -392,7 +388,7 @@ toolkit/workspace/precompiled/web/udashboard.js,sha256=42mPR_NU3jOqUgLi7yZv2L7bN
|
|
|
392
388
|
toolkit/workspace/precompiled/web/ustyle.css,sha256=P-s8ENwAcWoZi5bocrK3_kVzEjaRFKtFvEF6JRh4MBY,1429
|
|
393
389
|
toolkit/workspace/precompiled/web/uwidgets.js,sha256=BGeUSbNHn6PClgIgIE6QszwQVJ6j7lzgCBwvIX8cYgo,6631
|
|
394
390
|
toolkit/workspace/precompiled/web/uwidgets_pro.js,sha256=gbkk3SVttEVvDCwde-pJhAh4k7GuCFPdcWNq32pcKPE,3639
|
|
395
|
-
microsdevtoolkit-2.
|
|
396
|
-
microsdevtoolkit-2.
|
|
397
|
-
microsdevtoolkit-2.
|
|
398
|
-
microsdevtoolkit-2.
|
|
391
|
+
microsdevtoolkit-2.20.0.dist-info/METADATA,sha256=RozLFA-_nXNRhi9y_plpL6s0ZKpPu0nlDfwzDdBR6jQ,50711
|
|
392
|
+
microsdevtoolkit-2.20.0.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
|
|
393
|
+
microsdevtoolkit-2.20.0.dist-info/top_level.txt,sha256=rOGOIXqLBdGZAoDTiLdZ9B_leFB7bMv7YabLwuIc2bc,25
|
|
394
|
+
microsdevtoolkit-2.20.0.dist-info/RECORD,,
|
toolkit/Gateway.py
CHANGED
|
@@ -211,7 +211,7 @@ class ListDevices(Resource):
|
|
|
211
211
|
|
|
212
212
|
def sort_devices(self):
|
|
213
213
|
device_struct = socketClient.ConnectionData.list_devices()
|
|
214
|
-
online_devices = socketClient.ConnectionData.nodes_status()
|
|
214
|
+
online_devices = socketClient.ConnectionData.nodes_status(feature_stat=False)
|
|
215
215
|
filtered_devices = {"online": {}, "offline": {}}
|
|
216
216
|
for uid, data in device_struct.items():
|
|
217
217
|
if data[0] in online_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)
|
|
@@ -412,6 +414,10 @@ def check_intercon(host=None):
|
|
|
412
414
|
except Exception as e:
|
|
413
415
|
print(f"WARNING: cannot parse output as dir: {e}")
|
|
414
416
|
data_dict = {'tag': None, 'verdict': f'{data}: {str(e)}'}
|
|
417
|
+
# Handle new syntax: {"taskID": "verdict"}
|
|
418
|
+
if data[0] and data_dict.get("tag") is None:
|
|
419
|
+
_ttag = list(data_dict.keys())[0]
|
|
420
|
+
data_dict = {'tag': _ttag, 'verdict': f'{list(data_dict.values())[0]}: task show {_ttag}'}
|
|
415
421
|
return data[0], data_dict
|
|
416
422
|
|
|
417
423
|
def _get_intercon_output(tag):
|
|
@@ -426,51 +432,51 @@ def check_intercon(host=None):
|
|
|
426
432
|
break
|
|
427
433
|
return _state, _output
|
|
428
434
|
|
|
429
|
-
def run_intercon_hello(tout):
|
|
435
|
+
def run_intercon_hello(tout=8):
|
|
430
436
|
nonlocal host
|
|
431
437
|
cmd_list = [f'hello >>{host}']
|
|
432
|
-
_output = CLIENT.execute(cmd_list, tout=
|
|
433
|
-
|
|
434
|
-
if "hello:" in _output[1]: # TODO: remove...
|
|
435
|
-
# LEGACY WAY: FALLBACK
|
|
436
|
-
cmd_list = ['intercon sendcmd "{}" "hello" >json'.format(host)]
|
|
437
|
-
_output = CLIENT.execute(cmd_list, tout=tout)
|
|
438
|
-
_new_intercon = False
|
|
439
|
-
return _new_intercon, _output
|
|
438
|
+
_output = CLIENT.execute(cmd_list, tout=tout)
|
|
439
|
+
return _output
|
|
440
440
|
|
|
441
441
|
info_msg = '[ST] Check device-device connectivity'
|
|
442
442
|
print(info_msg)
|
|
443
443
|
host = 'test.local' if host is None else host
|
|
444
|
-
|
|
444
|
+
output = run_intercon_hello(tout=8)
|
|
445
445
|
output = _convert_return_to_dict(output)
|
|
446
|
+
|
|
446
447
|
device_was_found = False
|
|
447
448
|
if output[0] is False or output[1] is None:
|
|
448
449
|
output = 'Device was not found: {}:{}'.format(host, output)
|
|
449
450
|
return False, output
|
|
450
|
-
|
|
451
|
+
if output[1] == '[]':
|
|
451
452
|
# Valid input, device was not found
|
|
452
453
|
output = 'Device was not found: {}:{}'.format(host, output)
|
|
453
454
|
state = True, f'{info_msg}:\n\t\t{output}'
|
|
454
455
|
elif len(output[1]) > 1 and "hello" in output[1]['verdict']:
|
|
455
456
|
response_state, response = _get_intercon_output(output[1]['tag'])
|
|
456
457
|
# Valid input on online device
|
|
457
|
-
output = "Device was found: {}:{}
|
|
458
|
-
state =
|
|
458
|
+
output = "Device was found: {}:{}".format(host, f"{output}: {response}")
|
|
459
|
+
state = response_state, f'{info_msg}:\n\t\t{output}'
|
|
459
460
|
device_was_found = True
|
|
460
461
|
else:
|
|
461
|
-
state = False, output
|
|
462
|
+
state = False, f" InterCon Failed: {output}"
|
|
462
463
|
|
|
463
464
|
if device_was_found:
|
|
464
465
|
# DO Negative testing as well
|
|
465
466
|
host = "notavailable.local"
|
|
466
|
-
|
|
467
|
+
output_neg = run_intercon_hello(tout=20)
|
|
468
|
+
if output_neg[0] and output_neg[1] == '':
|
|
469
|
+
# NO HOST TIMEOUT ...
|
|
470
|
+
output_neg = f'Device was not found (dhcp timeout): {host}:{output_neg}: {output_neg[1]}'
|
|
471
|
+
return True & state[0], f"{state[1]}\n\t\tNegative test: {output_neg}"
|
|
472
|
+
# Valid return on negative testing
|
|
467
473
|
output_neg = _convert_return_to_dict(output_neg)
|
|
468
|
-
state_neg = False, output_neg
|
|
474
|
+
state_neg = False, f"Negative test failed: {output_neg}"
|
|
469
475
|
if len(output_neg[1]) > 1 and "hello" in output_neg[1]['verdict']:
|
|
470
476
|
response_state, response = _get_intercon_output(output_neg[1]['tag'])
|
|
471
477
|
output_neg = f'Device was not found: {host}":{output_neg}: {response}'
|
|
472
|
-
state_neg =
|
|
473
|
-
return state[0] & state_neg[0], "{}\n\t\tNegative test: {
|
|
478
|
+
state_neg = response_state, output_neg
|
|
479
|
+
return state[0] & state_neg[0], f"{state[1]}\n\t\tNegative test: {state_neg[1]}"
|
|
474
480
|
return state
|
|
475
481
|
|
|
476
482
|
|
|
@@ -666,6 +672,7 @@ def app(devfid=None, pwd=None):
|
|
|
666
672
|
'clean-reboot': after_st_reboot()
|
|
667
673
|
}
|
|
668
674
|
|
|
675
|
+
|
|
669
676
|
# Test Evaluation
|
|
670
677
|
final_state = True
|
|
671
678
|
ok_cnt = 0
|
toolkit/micrOSdashboard.py
CHANGED
|
@@ -6,17 +6,12 @@ import os
|
|
|
6
6
|
import threading
|
|
7
7
|
import subprocess
|
|
8
8
|
import time
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
from PyQt5.
|
|
13
|
-
from PyQt5.QtGui import QIcon
|
|
14
|
-
|
|
15
|
-
from PyQt5.QtWidgets import QApplication, QPlainTextEdit
|
|
16
|
-
from PyQt5.QtCore import QThread, pyqtSignal
|
|
17
|
-
from PyQt5.QtGui import QFont
|
|
18
|
-
from PyQt5 import QtGui
|
|
19
|
-
from PyQt5.QtGui import QPixmap
|
|
9
|
+
|
|
10
|
+
from PyQt5.QtWidgets import (QApplication, QPlainTextEdit, QPushButton, QProgressBar, QComboBox, QLabel, QCheckBox,
|
|
11
|
+
QLineEdit, QMessageBox, QWidget, QToolTip)
|
|
12
|
+
from PyQt5.QtCore import pyqtSlot, QThread, QSize, pyqtSignal
|
|
13
|
+
from PyQt5.QtGui import QIcon, QTextCursor, QFont, QPixmap
|
|
14
|
+
|
|
20
15
|
import concurrent.futures
|
|
21
16
|
|
|
22
17
|
MYPATH = os.path.dirname(__file__)
|
|
@@ -454,7 +449,7 @@ class HeaderInfo:
|
|
|
454
449
|
logo_path = os.path.join(MYPATH, '../media/logo_mini.png')
|
|
455
450
|
button = QPushButton('', self.parent_obj)
|
|
456
451
|
button.setIcon(QIcon(logo_path))
|
|
457
|
-
button.setIconSize(
|
|
452
|
+
button.setIconSize(QSize(50, 50))
|
|
458
453
|
button.setGeometry(20, 5, 50, 50)
|
|
459
454
|
button.setToolTip(f"Open micrOS repo documentation\n{self.url}")
|
|
460
455
|
button.setStyleSheet('border: 0px solid black;')
|
|
@@ -1219,7 +1214,7 @@ class micrOSGUI(QWidget):
|
|
|
1219
1214
|
|
|
1220
1215
|
def main():
|
|
1221
1216
|
app = QApplication(sys.argv)
|
|
1222
|
-
app.setWindowIcon(
|
|
1217
|
+
app.setWindowIcon(QIcon(os.path.join(MYPATH, '../media/logo.png')))
|
|
1223
1218
|
ex = micrOSGUI()
|
|
1224
1219
|
ex.draw()
|
|
1225
1220
|
sys.exit(app.exec_())
|
toolkit/socketClient.py
CHANGED
|
@@ -185,8 +185,8 @@ class ConnectionData:
|
|
|
185
185
|
return None, None, None, None
|
|
186
186
|
|
|
187
187
|
@staticmethod
|
|
188
|
-
def nodes_status():
|
|
189
|
-
spr_offset1 =
|
|
188
|
+
def nodes_status(feature_stat=True):
|
|
189
|
+
spr_offset1 = 25
|
|
190
190
|
spr_offset2 = 57
|
|
191
191
|
|
|
192
192
|
def _dev_status(ip, port, fuid, uid):
|
|
@@ -199,6 +199,10 @@ class ConnectionData:
|
|
|
199
199
|
Colors.WARN, Colors.NC)
|
|
200
200
|
version_data = '<n/a>'
|
|
201
201
|
elapsed_time = 'n/a'
|
|
202
|
+
webui_state = 'n/a'
|
|
203
|
+
espnow_state = 'n/a'
|
|
204
|
+
cron_state = 'n/a'
|
|
205
|
+
timirq_state = 'n/a'
|
|
202
206
|
online_ip = None
|
|
203
207
|
|
|
204
208
|
# is online
|
|
@@ -206,9 +210,17 @@ class ConnectionData:
|
|
|
206
210
|
# get version data
|
|
207
211
|
online_ip = ip
|
|
208
212
|
try:
|
|
213
|
+
connection = SocketDictClient(host=ip, port=port, silent_mode=True, tout=3)
|
|
214
|
+
# Get version and elapsed time data
|
|
209
215
|
start_comm = time.time()
|
|
210
|
-
version_data =
|
|
216
|
+
version_data = connection.non_interactive(['version'])
|
|
211
217
|
elapsed_time = "{:.3f}".format(time.time() - start_comm)
|
|
218
|
+
if feature_stat:
|
|
219
|
+
# Get active features info
|
|
220
|
+
webui_state = connection.non_interactive(['conf', 'webui'])
|
|
221
|
+
espnow_state = connection.non_interactive(['conf', 'espnow'])
|
|
222
|
+
cron_state = connection.non_interactive(['conf', 'cron'])
|
|
223
|
+
timirq_state = connection.non_interactive(['conf', 'timirq'])
|
|
212
224
|
except Exception as e:
|
|
213
225
|
print(f"Getting device version {fuid}:{uid} error: {e}")
|
|
214
226
|
|
|
@@ -216,14 +228,22 @@ class ConnectionData:
|
|
|
216
228
|
base_info = "{uid}{spr1}{fuid}".format(uid=uid, spr1=spacer1, fuid=fuid)
|
|
217
229
|
spacer1 = " " * (spr_offset2 - len(base_info))
|
|
218
230
|
spacer2 = "\t" if len(version_data) > 7 else "\t\t"
|
|
219
|
-
|
|
231
|
+
feature_info = ""
|
|
232
|
+
if feature_stat:
|
|
233
|
+
_on_str = f"{Colors.OKGREEN}{Colors.BOLD}ON {Colors.NC}"
|
|
234
|
+
_off_str = f"{Colors.BOLD}OFF{Colors.NC}"
|
|
235
|
+
_fspacer = " "*6
|
|
236
|
+
bool2str = lambda x: _on_str if x.strip() == "True" else _off_str if x != "n/a" else x
|
|
237
|
+
feature_info = f"\t\t{bool2str(webui_state)}{_fspacer}{bool2str(espnow_state)}{_fspacer}{bool2str(cron_state)}{_fspacer}{bool2str(timirq_state)}"
|
|
238
|
+
data_line_str = f"{base_info}{spacer1}{ip}\t{is_online}\t\t{version_data}{spacer2}{elapsed_time}{feature_info}"
|
|
220
239
|
return data_line_str, online_ip
|
|
221
240
|
return None
|
|
222
241
|
|
|
223
242
|
nodes_dict = ConnectionData.read_micrOS_device_cache()
|
|
224
|
-
spacer1 = " " * (spr_offset1 -
|
|
225
|
-
|
|
226
|
-
|
|
243
|
+
spacer1 = " " * (spr_offset1 - 8)
|
|
244
|
+
feature_header_str = "\t[WEBUI | ESPNOW | CRON | TIMIRQ]" if feature_stat else ""
|
|
245
|
+
print("{cols}[ UID ]{spr1}[ FUID ]\t\t[ IP ]\t\t[ STATUS ]\t[ VERSION ]\t[COMM SEC]{features}{cole}"
|
|
246
|
+
.format(spr1=spacer1, cols=Colors.OKBLUE + Colors.BOLD, features=feature_header_str, cole=Colors.NC))
|
|
227
247
|
|
|
228
248
|
# Start parallel status queries
|
|
229
249
|
query_list = []
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|