micrOSDevToolKit 2.9.11__tar.gz → 2.10.2__tar.gz
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.
- {microsdevtoolkit-2.9.11/micrOSDevToolKit.egg-info → microsdevtoolkit-2.10.2}/PKG-INFO +11 -14
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/README.md +10 -13
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/release_info/micrOS_ReleaseInfo/system_analysis_sum.json +19 -19
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Common.py +4 -4
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/InterConnect.py +14 -11
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_intercon.py +3 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_light_sensor.py +7 -15
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_oled_ui.py +18 -22
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_oledui.py +13 -16
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_presence.py +8 -11
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_system.py +7 -6
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_telegram.py +21 -16
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Shell.py +22 -19
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Tasks.py +30 -15
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Web.py +3 -2
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/__pycache__/Common.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2/micrOSDevToolKit.egg-info}/PKG-INFO +11 -14
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/setup.py +1 -1
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/SystemTest.py +17 -6
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/micrOSClient.py +25 -6
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/socketClient.py +2 -3
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/Common.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/InterConnect.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_intercon.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/LM_light_sensor.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/LM_oled_ui.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/LM_oledui.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/LM_presence.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_system.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/LM_telegram.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/Shell.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/Tasks.mpy +0 -0
- microsdevtoolkit-2.10.2/toolkit/workspace/precompiled/Web.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/Common.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/InterConnect.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/LM_light_sensor.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/LM_oled_ui.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/LM_oledui.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/LM_presence.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/LM_telegram.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/Shell.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/Tasks.mpy +0 -0
- microsdevtoolkit-2.9.11/toolkit/workspace/precompiled/Web.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/LICENSE +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/MANIFEST.in +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/devToolKit.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/__init__.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/.DS_Store +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/CP210xVCPInstaller_x64.exe +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/CP210xVCPInstaller_x86.exe +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/CP210x_Universal_Windows_Driver_ReleaseNotes.txt +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/SLAB_License_Agreement_VCP_Windows.txt +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/arm/silabser.sys +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/arm64/silabser.sys +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/dpinst.xml +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/silabser.cat +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/silabser.inf +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/x64/silabser.sys +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/CP210x_Universal_Windows_Driver/x86/silabser.sys +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/macOS_VCP_Driver/SiLabsUSBDriverDisk.dmg +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/env/driver_cp210x/macOS_VCP_Driver/macOS_VCP_Driver_Release_Notes.txt +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/media/__init__.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/media/dnd.png +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/media/logo.png +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/media/logo_mini.png +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/media/usb_port_icon.png +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/media/wifi_icon.png +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/__init__.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32-20241129-v1.24.1.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32c3-20240222-v1.22.2.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32cam-v1.21.0_camera.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32s2-20240602-v1.23.0.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32s2-LOLIN_MINI-20220618-v1.19.1.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32s2-LOLIN_MINI-20240602-v1.23.0.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32s3-20240105-v1.22.1.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32s3-20241129-v1.24.1.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32s3_spiram_oct-20231005-v1.21.0.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/esp32s3_spiram_oct-20241129-v1.24.1.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/rpi-pico-w-20241129-v1.24.1.uf2 +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/micropython/tinypico-20241129-v1.24.1.bin +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/.DS_Store +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Config.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Debug.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Espnow.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Hooks.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/IO_esp32.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/IO_esp32c3.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/IO_esp32s2.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/IO_esp32s3.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/IO_m5stamp.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/IO_qtpy.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/IO_rp2.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/IO_tinypico.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Interrupts.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_L298N_DCmotor.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_L9110_DCmotor.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_OV2640.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_VL53L0X.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_aht10.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_bme280.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_buzzer.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_catgame.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_cct.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_co2.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_dashboard_be.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_demo.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_dht11.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_dht22.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_dimmer.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_distance.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_ds18.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_esp32.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_espnow.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_gameOfLife.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_genIO.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_haptic.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_i2c.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_i2s_mic.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_keychain.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_ld2410.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_neoeffects.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_neopixel.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_oled.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_oled_sh1106.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_pacman.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_pet_feeder.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_ph_sensor.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_rencoder.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_rest.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_rgb.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_rgbcct.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_roboarm.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_robustness.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_rp2w.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_sdcard.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_servo.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_sound_event.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_stepper.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_switch.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_tinyrgb.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_trackball.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/LM_veml7700.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Logger.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Network.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Notify.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Scheduler.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Server.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Time.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/Types.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/__pycache__/Logger.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/__pycache__/Server.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/dashboard.html +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/index.html +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/main.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/micrOS.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/micrOSloader.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/microIO.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/reset.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/uapi.js +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/udashboard.js +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/urequests.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/ustyle.css +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/uwidgets.js +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOS/source/uwidgets_pro.js +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOSDevToolKit.egg-info/SOURCES.txt +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOSDevToolKit.egg-info/dependency_links.txt +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOSDevToolKit.egg-info/requires.txt +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/micrOSDevToolKit.egg-info/top_level.txt +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/setup.cfg +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/DevEnvCompile.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/DevEnvOTA.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/DevEnvUSB.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/Gateway.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/LM_to_compile.dat +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/MicrOSDevEnv.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/WebRepl.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/__init__.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/BackupRestore.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/CCTDemo.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/CCTTest.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/CamStream.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/CatGame.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/Dimmer.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/GetVersion.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/MicrophoneTest.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/NeoEffectsDemo.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/NeopixelTest.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/PresenceTest.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/RGBTest.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/RoboArm.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/SED_test.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/SensorsTest.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/Template_app.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/__init__.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/_app_base.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/_capture.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/_micPlotting.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/_presencePlotting.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/dashboard_apps/uLightDemo.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/img_stream.html +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/index.html +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/LocalMachine.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/Repository.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/SafeInput.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/SearchDevices.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/SerialDriverHandler.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/TerminalColors.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/__init__.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/file_extensions.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/macroScript.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/micrOSClientHistory.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/lib/pip_package_installer.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/micrOSdashboard.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/micrOSlint.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/.DS_Store +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/IO_darwin.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/IO_darwin.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/aioespnow.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/camera.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/dht.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/dht.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/dotstar.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/dotstar.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/dotstar.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/ds18x20.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/ds18x20.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/ds18x20.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/esp32.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/esp32.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/esp32.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/framebuf.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/framebuf.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/framebuf.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/machine.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/machine.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/machine.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/micropython.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/micropython.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/micropython.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/neopixel.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/neopixel.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/neopixel.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/network.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/network.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/network.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/ntptime.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/onewire.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/onewire.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/onewire.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/sim_console.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/sim_console.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/sim_console.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/simgc.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/simgc.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/simgc.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/simulator.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/simulator.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/simulator.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/tinypico.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/tinypico.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/tinypico.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/uasyncio.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/uasyncio.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/uasyncio.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/uos.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/usocket.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/ussl.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/ustruct.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/ustruct.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/utime.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/utime.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/utime.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/webrepl.cpython-312.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/webrepl.cpython-38.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/__pycache__/webrepl.cpython-39.pyc +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/aioespnow.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/camera.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/dht.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/dotstar.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/ds18x20.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/esp32.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/framebuf.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/machine.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/micropython.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/neopixel.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/network.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/node_config.json +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/ntptime.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/onewire.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/sim_console.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/simgc.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/simulator.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/tinypico.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/uasyncio.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/uos.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/usocket.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/ussl.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/ustruct.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/utime.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/view01.jpg +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/view02.jpg +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/simulator_lib/webrepl.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/user_data/.include +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/user_data/webhooks/generic.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/user_data/webhooks/macro.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/user_data/webhooks/template.macro +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/user_data/webhooks/template.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/__init__.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Config.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Debug.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Espnow.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Hooks.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/IO_esp32.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/IO_esp32c3.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/IO_esp32s2.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/IO_esp32s3.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/IO_m5stamp.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/IO_qtpy.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/IO_rp2.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/IO_tinypico.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Interrupts.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_L298N_DCmotor.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_L9110_DCmotor.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_OV2640.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_VL53L0X.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_aht10.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_bme280.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_buzzer.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_catgame.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_cct.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_co2.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_dashboard_be.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_demo.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_dht11.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_dht22.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_dimmer.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_distance.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_ds18.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_esp32.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_espnow.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_gameOfLife.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_genIO.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_haptic.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_i2c.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_i2s_mic.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_keychain.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_ld2410.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_neoeffects.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_neopixel.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_oled.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_oled_sh1106.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_pacman.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_pet_feeder.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_ph_sensor.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_rencoder.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_rest.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_rgb.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_rgbcct.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_roboarm.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_robustness.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_rp2w.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_sdcard.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_servo.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_sound_event.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_stepper.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_switch.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_tinyrgb.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_trackball.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/LM_veml7700.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Logger.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Network.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Notify.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Scheduler.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Server.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Time.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/Types.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/_mpy.version +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/dashboard.html +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/index.html +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/main.py +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/micrOS.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/micrOSloader.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/microIO.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/reset.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/uapi.js +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/udashboard.js +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/urequests.mpy +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/ustyle.css +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/uwidgets.js +0 -0
- {microsdevtoolkit-2.9.11 → microsdevtoolkit-2.10.2}/toolkit/workspace/precompiled/uwidgets_pro.js +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: micrOSDevToolKit
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.10.2
|
|
4
4
|
Summary: Development and deployment environment for micrOS, the diy micropython automation OS (IoT)
|
|
5
5
|
Home-page: https://github.com/BxNxM/micrOS
|
|
6
6
|
Author: Marcell Ban
|
|
@@ -494,11 +494,11 @@ Version **3.0.0-0** `micrOS-Autonomous`
|
|
|
494
494
|
- (1) Async SSL/TLS integration (micropython 1.22+ required) [DONE]
|
|
495
495
|
- urequest module async redesign for rest clients [OK]
|
|
496
496
|
- LM_telegram (Notify) + server (listener - chatbot) [OK]
|
|
497
|
-
- (2) ESP-NOW (peer-to-peer communication) integration into InterCon [PoC][TODO]
|
|
498
|
-
- (3) New intercon syntax - command level integration: [
|
|
497
|
+
- (2) ESP-NOW (peer-to-peer communication) integration into InterCon [PoC:OK][TODO]
|
|
498
|
+
- (3) New intercon syntax - command level integration: [DONE]
|
|
499
499
|
- rgb toggle >>RingLight.local
|
|
500
|
-
- similar as: intercon sendcmd host="RingLight.local" cmd="rgb toggle"
|
|
501
|
-
- (4) Create multi level project structure (curret is flat fs) [TODO] FS
|
|
500
|
+
- similar as (obsolete): intercon sendcmd host="RingLight.local" cmd="rgb toggle"
|
|
501
|
+
- (4) Create multi level project structure (curret is flat fs) [TODO?] FS
|
|
502
502
|
- New micrOS FS structure:
|
|
503
503
|
- Note:
|
|
504
504
|
- On device (boot) micrOS Hooks.py/os_dir_fs_hook (check+correct) [Phase1-FS:TODO]
|
|
@@ -528,6 +528,9 @@ Version **3.0.0-0** `micrOS-Autonomous`
|
|
|
528
528
|
- *.js
|
|
529
529
|
- *.css
|
|
530
530
|
|
|
531
|
+
- /logs
|
|
532
|
+
- still there (created runtime)
|
|
533
|
+
|
|
531
534
|
- (5) Proper mip installer support (/lib) [TODO]
|
|
532
535
|
- Note: Autonomous package management over wifi (github)
|
|
533
536
|
- pacman download
|
|
@@ -731,8 +734,6 @@ devToolKit.py -c -p '--dev BedLamp help'
|
|
|
731
734
|
help
|
|
732
735
|
dht22
|
|
733
736
|
help
|
|
734
|
-
intercon
|
|
735
|
-
help
|
|
736
737
|
robustness
|
|
737
738
|
help
|
|
738
739
|
system
|
|
@@ -862,8 +863,6 @@ BedLamp $ help
|
|
|
862
863
|
help
|
|
863
864
|
dht22
|
|
864
865
|
help
|
|
865
|
-
intercon
|
|
866
|
-
help
|
|
867
866
|
robustness
|
|
868
867
|
help
|
|
869
868
|
system
|
|
@@ -954,10 +953,9 @@ micrOS Load Module resources
|
|
|
954
953
|
43 105 LM_lmpacman.py (mlint: True) (pylint: 8.38) (ref.: 0)
|
|
955
954
|
44 176 LM_gameOfLife.py (mlint: True) (pylint: 9.29) (ref.: 2)
|
|
956
955
|
45 58 LM_catgame.py (mlint: True) (pylint: 8.46) (ref.: 0)
|
|
957
|
-
46
|
|
958
|
-
47
|
|
959
|
-
48
|
|
960
|
-
49 34 LM_sdcard.py (mlint: True) (pylint: 7.88) (ref.: 0)
|
|
956
|
+
46 43 LM_ds18.py (mlint: True) (pylint: 5.0) (ref.: 2)
|
|
957
|
+
47 250 LM_i2s_mic.py (mlint: False) (pylint: 8.71) (ref.: 1)
|
|
958
|
+
48 34 LM_sdcard.py (mlint: True) (pylint: 7.88) (ref.: 0)
|
|
961
959
|
|
|
962
960
|
SUM CODE LINES (WITH COMMENTS, WITHOUT EMPTY LINES): 6822
|
|
963
961
|
```
|
|
@@ -1048,7 +1046,6 @@ micrOS/toolkit/workspace/precompiled
|
|
|
1048
1046
|
│ ├── LM_esp32.py
|
|
1049
1047
|
│ ├── LM_genIO.mpy
|
|
1050
1048
|
│ ├── LM_i2c.py
|
|
1051
|
-
│ ├── LM_intercon.mpy
|
|
1052
1049
|
│ ├── LM_light_sensor.mpy
|
|
1053
1050
|
│ ├── LM_neoeffects.mpy
|
|
1054
1051
|
│ ├── LM_neopixel.mpy
|
|
@@ -457,11 +457,11 @@ Version **3.0.0-0** `micrOS-Autonomous`
|
|
|
457
457
|
- (1) Async SSL/TLS integration (micropython 1.22+ required) [DONE]
|
|
458
458
|
- urequest module async redesign for rest clients [OK]
|
|
459
459
|
- LM_telegram (Notify) + server (listener - chatbot) [OK]
|
|
460
|
-
- (2) ESP-NOW (peer-to-peer communication) integration into InterCon [PoC][TODO]
|
|
461
|
-
- (3) New intercon syntax - command level integration: [
|
|
460
|
+
- (2) ESP-NOW (peer-to-peer communication) integration into InterCon [PoC:OK][TODO]
|
|
461
|
+
- (3) New intercon syntax - command level integration: [DONE]
|
|
462
462
|
- rgb toggle >>RingLight.local
|
|
463
|
-
- similar as: intercon sendcmd host="RingLight.local" cmd="rgb toggle"
|
|
464
|
-
- (4) Create multi level project structure (curret is flat fs) [TODO] FS
|
|
463
|
+
- similar as (obsolete): intercon sendcmd host="RingLight.local" cmd="rgb toggle"
|
|
464
|
+
- (4) Create multi level project structure (curret is flat fs) [TODO?] FS
|
|
465
465
|
- New micrOS FS structure:
|
|
466
466
|
- Note:
|
|
467
467
|
- On device (boot) micrOS Hooks.py/os_dir_fs_hook (check+correct) [Phase1-FS:TODO]
|
|
@@ -491,6 +491,9 @@ Version **3.0.0-0** `micrOS-Autonomous`
|
|
|
491
491
|
- *.js
|
|
492
492
|
- *.css
|
|
493
493
|
|
|
494
|
+
- /logs
|
|
495
|
+
- still there (created runtime)
|
|
496
|
+
|
|
494
497
|
- (5) Proper mip installer support (/lib) [TODO]
|
|
495
498
|
- Note: Autonomous package management over wifi (github)
|
|
496
499
|
- pacman download
|
|
@@ -694,8 +697,6 @@ devToolKit.py -c -p '--dev BedLamp help'
|
|
|
694
697
|
help
|
|
695
698
|
dht22
|
|
696
699
|
help
|
|
697
|
-
intercon
|
|
698
|
-
help
|
|
699
700
|
robustness
|
|
700
701
|
help
|
|
701
702
|
system
|
|
@@ -825,8 +826,6 @@ BedLamp $ help
|
|
|
825
826
|
help
|
|
826
827
|
dht22
|
|
827
828
|
help
|
|
828
|
-
intercon
|
|
829
|
-
help
|
|
830
829
|
robustness
|
|
831
830
|
help
|
|
832
831
|
system
|
|
@@ -917,10 +916,9 @@ micrOS Load Module resources
|
|
|
917
916
|
43 105 LM_lmpacman.py (mlint: True) (pylint: 8.38) (ref.: 0)
|
|
918
917
|
44 176 LM_gameOfLife.py (mlint: True) (pylint: 9.29) (ref.: 2)
|
|
919
918
|
45 58 LM_catgame.py (mlint: True) (pylint: 8.46) (ref.: 0)
|
|
920
|
-
46
|
|
921
|
-
47
|
|
922
|
-
48
|
|
923
|
-
49 34 LM_sdcard.py (mlint: True) (pylint: 7.88) (ref.: 0)
|
|
919
|
+
46 43 LM_ds18.py (mlint: True) (pylint: 5.0) (ref.: 2)
|
|
920
|
+
47 250 LM_i2s_mic.py (mlint: False) (pylint: 8.71) (ref.: 1)
|
|
921
|
+
48 34 LM_sdcard.py (mlint: True) (pylint: 7.88) (ref.: 0)
|
|
924
922
|
|
|
925
923
|
SUM CODE LINES (WITH COMMENTS, WITHOUT EMPTY LINES): 6822
|
|
926
924
|
```
|
|
@@ -1011,7 +1009,6 @@ micrOS/toolkit/workspace/precompiled
|
|
|
1011
1009
|
│ ├── LM_esp32.py
|
|
1012
1010
|
│ ├── LM_genIO.mpy
|
|
1013
1011
|
│ ├── LM_i2c.py
|
|
1014
|
-
│ ├── LM_intercon.mpy
|
|
1015
1012
|
│ ├── LM_light_sensor.mpy
|
|
1016
1013
|
│ ├── LM_neoeffects.mpy
|
|
1017
1014
|
│ ├── LM_neopixel.mpy
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
1
|
|
22
22
|
],
|
|
23
23
|
"Tasks.py": [
|
|
24
|
-
9.
|
|
24
|
+
9.38,
|
|
25
25
|
12
|
|
26
26
|
],
|
|
27
27
|
"Config.py": [
|
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
0
|
|
34
34
|
],
|
|
35
35
|
"Shell.py": [
|
|
36
|
-
9.
|
|
36
|
+
9.34,
|
|
37
37
|
1
|
|
38
38
|
],
|
|
39
39
|
"Notify.py": [
|
|
40
|
-
|
|
40
|
+
9.74,
|
|
41
41
|
3
|
|
42
42
|
],
|
|
43
43
|
"Types.py": [
|
|
@@ -49,12 +49,12 @@
|
|
|
49
49
|
4
|
|
50
50
|
],
|
|
51
51
|
"Common.py": [
|
|
52
|
-
|
|
52
|
+
9.78,
|
|
53
53
|
34
|
|
54
54
|
],
|
|
55
55
|
"InterConnect.py": [
|
|
56
|
-
9.
|
|
57
|
-
|
|
56
|
+
9.41,
|
|
57
|
+
3
|
|
58
58
|
],
|
|
59
59
|
"Debug.py": [
|
|
60
60
|
8.4,
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
8
|
|
66
66
|
],
|
|
67
67
|
"Espnow.py": [
|
|
68
|
-
|
|
68
|
+
9.43,
|
|
69
69
|
1
|
|
70
70
|
],
|
|
71
71
|
"Scheduler.py": [
|
|
@@ -109,11 +109,11 @@
|
|
|
109
109
|
0
|
|
110
110
|
],
|
|
111
111
|
"LM_oled_ui.py": [
|
|
112
|
-
|
|
112
|
+
8.64,
|
|
113
113
|
0
|
|
114
114
|
],
|
|
115
115
|
"LM_system.py": [
|
|
116
|
-
8.
|
|
116
|
+
8.19,
|
|
117
117
|
5
|
|
118
118
|
],
|
|
119
119
|
"LM_robustness.py": [
|
|
@@ -233,7 +233,7 @@
|
|
|
233
233
|
0
|
|
234
234
|
],
|
|
235
235
|
"LM_oledui.py": [
|
|
236
|
-
|
|
236
|
+
7.95,
|
|
237
237
|
0
|
|
238
238
|
],
|
|
239
239
|
"LM_espnow.py": [
|
|
@@ -241,7 +241,7 @@
|
|
|
241
241
|
0
|
|
242
242
|
],
|
|
243
243
|
"LM_telegram.py": [
|
|
244
|
-
9.
|
|
244
|
+
9.58,
|
|
245
245
|
0
|
|
246
246
|
],
|
|
247
247
|
"LM_OV2640.py": [
|
|
@@ -261,7 +261,7 @@
|
|
|
261
261
|
0
|
|
262
262
|
],
|
|
263
263
|
"LM_light_sensor.py": [
|
|
264
|
-
|
|
264
|
+
9.17,
|
|
265
265
|
0
|
|
266
266
|
],
|
|
267
267
|
"LM_rp2w.py": [
|
|
@@ -269,7 +269,7 @@
|
|
|
269
269
|
0
|
|
270
270
|
],
|
|
271
271
|
"LM_presence.py": [
|
|
272
|
-
8.
|
|
272
|
+
8.9,
|
|
273
273
|
4
|
|
274
274
|
],
|
|
275
275
|
"LM_trackball.py": [
|
|
@@ -298,7 +298,7 @@
|
|
|
298
298
|
],
|
|
299
299
|
"LM_intercon.py": [
|
|
300
300
|
8.18,
|
|
301
|
-
|
|
301
|
+
0
|
|
302
302
|
],
|
|
303
303
|
"LM_ds18.py": [
|
|
304
304
|
6.0,
|
|
@@ -315,11 +315,11 @@
|
|
|
315
315
|
},
|
|
316
316
|
"summary": {
|
|
317
317
|
"core": [
|
|
318
|
-
|
|
318
|
+
3380,
|
|
319
319
|
23
|
|
320
320
|
],
|
|
321
321
|
"load": [
|
|
322
|
-
|
|
322
|
+
9077,
|
|
323
323
|
55
|
|
324
324
|
],
|
|
325
325
|
"core_dep": [
|
|
@@ -330,8 +330,8 @@
|
|
|
330
330
|
true,
|
|
331
331
|
5
|
|
332
332
|
],
|
|
333
|
-
"core_score": 9.
|
|
334
|
-
"load_score": 8.
|
|
335
|
-
"version": "2.
|
|
333
|
+
"core_score": 9.22,
|
|
334
|
+
"load_score": 8.2,
|
|
335
|
+
"version": "2.10.2-0"
|
|
336
336
|
}
|
|
337
337
|
}
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
micrOS Load Module programming Official API-s
|
|
3
3
|
Designed by Marcell Ban aka BxNxM
|
|
4
4
|
"""
|
|
5
|
-
|
|
6
5
|
from Server import Server, WebCli
|
|
7
6
|
from Debug import errlog_add, console_write
|
|
8
7
|
from Logger import logger, log_get
|
|
@@ -126,18 +125,19 @@ def manage_task(tag, operation):
|
|
|
126
125
|
raise Exception(f"Invalid operation: {operation}")
|
|
127
126
|
|
|
128
127
|
|
|
129
|
-
def exec_cmd(cmd, skip_check=False):
|
|
128
|
+
def exec_cmd(cmd, jsonify:bool=None, skip_check=False):
|
|
130
129
|
"""
|
|
131
130
|
[LM] Single (sync) LM execution
|
|
132
131
|
:param cmd: command string list
|
|
132
|
+
:param jsonify: request json output
|
|
133
133
|
:param skip_check: skip cmd type check, micropython bug
|
|
134
134
|
return state, output
|
|
135
135
|
"""
|
|
136
136
|
# [BUG] Solution with isinstance/type is not reliable... micropython 1.22
|
|
137
137
|
# Invalid type, must be list: <class list>" ...
|
|
138
138
|
if skip_check:
|
|
139
|
-
return lm_exec(cmd)
|
|
140
|
-
return lm_exec(cmd) if isinstance(cmd, list) else False, f"
|
|
139
|
+
return lm_exec(cmd, jsonify=jsonify)
|
|
140
|
+
return lm_exec(cmd, jsonify=jsonify) if isinstance(cmd, list) else False, f"CMD {type(cmd)}, must be list!"
|
|
141
141
|
|
|
142
142
|
|
|
143
143
|
def notify(text=None) -> bool:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from socket import getaddrinfo, SOCK_STREAM
|
|
2
2
|
from re import compile
|
|
3
|
-
|
|
3
|
+
from uasyncio import open_connection
|
|
4
4
|
from Debug import errlog_add
|
|
5
5
|
from Config import cfgget
|
|
6
6
|
from Server import Server
|
|
@@ -22,7 +22,7 @@ class InterCon:
|
|
|
22
22
|
pattern = compile(r'^(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])$')
|
|
23
23
|
return bool(pattern.match(str_in))
|
|
24
24
|
|
|
25
|
-
async def send_cmd(self, host, cmd):
|
|
25
|
+
async def send_cmd(self, host:str, cmd:list):
|
|
26
26
|
"""
|
|
27
27
|
Async Main method to implement device-device communication with
|
|
28
28
|
- dhcp host resolve and IP caching
|
|
@@ -50,7 +50,7 @@ class InterCon:
|
|
|
50
50
|
if InterCon.validate_ipv4(host):
|
|
51
51
|
try:
|
|
52
52
|
# Create socket object
|
|
53
|
-
self.reader, self.writer = await
|
|
53
|
+
self.reader, self.writer = await open_connection(host, InterCon.PORT)
|
|
54
54
|
# Send command over TCP/IP
|
|
55
55
|
output = await self.__run_command(cmd, hostname)
|
|
56
56
|
except OSError as e:
|
|
@@ -72,14 +72,13 @@ class InterCon:
|
|
|
72
72
|
errlog_add(f"[ERR][intercon] Invalid host: {host}")
|
|
73
73
|
return ''
|
|
74
74
|
|
|
75
|
-
async def __run_command(self, cmd, hostname):
|
|
75
|
+
async def __run_command(self, cmd:list, hostname:str):
|
|
76
76
|
"""
|
|
77
77
|
Implements receive data on open connection, command query and result collection
|
|
78
78
|
:param cmd: command string to server socket shell
|
|
79
79
|
:param hostname: hostname for prompt checking
|
|
80
80
|
Return None here will trigger retry mechanism... + deletes cached IP
|
|
81
81
|
"""
|
|
82
|
-
cmd = str.encode(cmd)
|
|
83
82
|
data, prompt = await self.__receive_data()
|
|
84
83
|
if "Connection is busy. Bye!" in prompt:
|
|
85
84
|
return None
|
|
@@ -87,7 +86,7 @@ class InterCon:
|
|
|
87
86
|
if hostname is None or prompt is None or str(prompt).replace('$', '').strip() == str(hostname).split('.')[0]:
|
|
88
87
|
# Run command on validated device
|
|
89
88
|
# TODO: Handle multiple cmd as input, separated by ; (????)
|
|
90
|
-
self.writer.write(cmd)
|
|
89
|
+
self.writer.write(str.encode(' '.join(cmd)))
|
|
91
90
|
await self.writer.drain()
|
|
92
91
|
data, _ = await self.__receive_data(prompt=prompt)
|
|
93
92
|
if data == '\0':
|
|
@@ -141,7 +140,7 @@ class InterCon:
|
|
|
141
140
|
return data, prompt
|
|
142
141
|
|
|
143
142
|
|
|
144
|
-
async def _send_cmd(host, cmd, com_obj):
|
|
143
|
+
async def _send_cmd(host:str, cmd:list, com_obj):
|
|
145
144
|
"""
|
|
146
145
|
Async send command wrapper for further async task integration and sync send_cmd usage (main)
|
|
147
146
|
:param host: hostname / IP address
|
|
@@ -154,12 +153,12 @@ async def _send_cmd(host, cmd, com_obj):
|
|
|
154
153
|
out = await com_obj.send_cmd(host, cmd) # Send CMD
|
|
155
154
|
if out is not None: # Retry mechanism
|
|
156
155
|
break
|
|
157
|
-
await
|
|
156
|
+
await com_obj.task.feed(sleep_ms=100) # Retry mechanism
|
|
158
157
|
com_obj.task.out = '' if out is None else out
|
|
159
158
|
return com_obj.task.out
|
|
160
159
|
|
|
161
160
|
|
|
162
|
-
def send_cmd(host, cmd):
|
|
161
|
+
def send_cmd(host:str, cmd:list|str) -> dict:
|
|
163
162
|
"""
|
|
164
163
|
Sync wrapper of async _send_cmd (InterCon.send_cmd consumer with retry)
|
|
165
164
|
:param host: hostname / IP address
|
|
@@ -167,11 +166,15 @@ def send_cmd(host, cmd):
|
|
|
167
166
|
"""
|
|
168
167
|
def _tagify():
|
|
169
168
|
nonlocal host, cmd
|
|
170
|
-
_mod = cmd
|
|
169
|
+
_mod = cmd[0]
|
|
171
170
|
if InterCon.validate_ipv4(host):
|
|
172
171
|
return f"{'.'.join(host.split('.')[-2:])}.{_mod}"
|
|
173
172
|
return f"{host.replace('.local', '')}.{_mod}"
|
|
174
173
|
|
|
174
|
+
# Handle legacy string input
|
|
175
|
+
if isinstance(cmd, str):
|
|
176
|
+
cmd = cmd.split()
|
|
177
|
+
|
|
175
178
|
com_obj = InterCon()
|
|
176
179
|
tag = f"con.{_tagify()}"
|
|
177
180
|
started = com_obj.task.create(callback=_send_cmd(host, cmd, com_obj), tag=tag)
|
|
@@ -182,7 +185,7 @@ def send_cmd(host, cmd):
|
|
|
182
185
|
return result
|
|
183
186
|
|
|
184
187
|
|
|
185
|
-
def host_cache():
|
|
188
|
+
def host_cache() -> dict:
|
|
186
189
|
"""
|
|
187
190
|
Dump InterCon connection cache
|
|
188
191
|
"""
|
|
@@ -4,6 +4,7 @@ from Common import syslog
|
|
|
4
4
|
|
|
5
5
|
def sendcmd(*args, **kwargs):
|
|
6
6
|
"""
|
|
7
|
+
[!!!] OBSOLETE - NEW SYNTAX: system top >>node01.local
|
|
7
8
|
Implements send command function towards micrOS devices
|
|
8
9
|
example: sendcmd "hello" host="IP/hostname.local") OR sendcmd host="IP/hostname.local" cmd="system rssi")
|
|
9
10
|
:param host[0]: host IP or Hostname
|
|
@@ -34,6 +35,7 @@ def sendcmd(*args, **kwargs):
|
|
|
34
35
|
|
|
35
36
|
def addr_cache():
|
|
36
37
|
"""
|
|
38
|
+
[!!!] OBSOLETE -> new command: system hosts
|
|
37
39
|
Dump intercon connection cache
|
|
38
40
|
:return dict: device-ip pairs
|
|
39
41
|
"""
|
|
@@ -46,6 +48,7 @@ def addr_cache():
|
|
|
46
48
|
|
|
47
49
|
def help(widgets=False):
|
|
48
50
|
"""
|
|
51
|
+
[!!!] OBSOLETE
|
|
49
52
|
[i] micrOS LM naming convention - built-in help message
|
|
50
53
|
:return tuple:
|
|
51
54
|
(widgets=False) list of functions implemented by this application
|
|
@@ -5,12 +5,8 @@ ADC.ATTN_2_5DB — the full range voltage: 1.5V
|
|
|
5
5
|
ADC.ATTN_6DB — the full range voltage: 2.0V
|
|
6
6
|
ADC.ATTN_11DB — the full range voltage: 3.3V
|
|
7
7
|
"""
|
|
8
|
-
from Common import SmartADC, micro_task
|
|
8
|
+
from Common import SmartADC, micro_task, exec_cmd
|
|
9
9
|
from Types import resolve
|
|
10
|
-
try:
|
|
11
|
-
import LM_intercon as InterCon
|
|
12
|
-
except:
|
|
13
|
-
InterCon = None
|
|
14
10
|
from microIO import bind_pin, pinmap_search
|
|
15
11
|
|
|
16
12
|
|
|
@@ -76,19 +72,15 @@ async def _task(on, off, threshold, tolerance=2, check_ms=5000):
|
|
|
76
72
|
# TURN ON
|
|
77
73
|
if percent <= threshold:
|
|
78
74
|
if on != last_ev:
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
InterCon.send_cmd(host, cmd)
|
|
83
|
-
my_task.out = f"{percent}% <= threshold: {threshold}% - ON"
|
|
75
|
+
host = on[0]
|
|
76
|
+
state, _ = exec_cmd(on[1:] + [f">>{host}"], jsonify=True, skip_check=True)
|
|
77
|
+
my_task.out = f"{percent}% <= threshold: {threshold}% - ON [{'OK' if state else 'NOK'}]"
|
|
84
78
|
last_ev = on
|
|
85
79
|
elif percent > threshold+tolerance: # +tolerance to avoid "on/off/on/off" on threshold limit
|
|
86
80
|
if off != last_ev:
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
InterCon.send_cmd(host, cmd)
|
|
91
|
-
my_task.out = f"{percent}% > threshold: {threshold+tolerance}% - OFF"
|
|
81
|
+
host = off[0]
|
|
82
|
+
state, _ = exec_cmd(off[1:] + [f">>{host}"], jsonify=True, skip_check=True)
|
|
83
|
+
my_task.out = f"{percent}% > threshold: {threshold+tolerance}% - OFF [{'OK' if state else 'NOK'}]"
|
|
92
84
|
last_ev = off
|
|
93
85
|
await my_task.feed(sleep_ms=check_ms) # Sample every <check_ms> sec
|
|
94
86
|
|
|
@@ -7,13 +7,9 @@ from Common import syslog, exec_cmd, manage_task
|
|
|
7
7
|
from machine import Pin
|
|
8
8
|
from Types import resolve
|
|
9
9
|
try:
|
|
10
|
-
from LM_system import memory_usage
|
|
10
|
+
from LM_system import memory_usage, hosts
|
|
11
11
|
except:
|
|
12
12
|
memory_usage = None # Optional function handling
|
|
13
|
-
try:
|
|
14
|
-
import LM_intercon as InterCon
|
|
15
|
-
except:
|
|
16
|
-
InterCon = None # Optional function handling
|
|
17
13
|
try:
|
|
18
14
|
from LM_gameOfLife import next_gen as gol_nextgen, reset as gol_reset
|
|
19
15
|
except:
|
|
@@ -228,6 +224,7 @@ class PageUI:
|
|
|
228
224
|
self.page_callback_list[self.active_page]() # <== Execute page functions
|
|
229
225
|
except Exception as e:
|
|
230
226
|
PageUI.PAGE_UI_OBJ.show_msg = f"Err: {e}" # Show page error in msgbox
|
|
227
|
+
syslog(f"oled_ui render error: {e}")
|
|
231
228
|
PageUI.DISPLAY.show()
|
|
232
229
|
self.__power_save()
|
|
233
230
|
else:
|
|
@@ -322,7 +319,7 @@ class PageUI:
|
|
|
322
319
|
#####################################
|
|
323
320
|
# PAGE GENERATORS #
|
|
324
321
|
#####################################
|
|
325
|
-
def intercon_page(self, host, cmd, run=False):
|
|
322
|
+
def intercon_page(self, host:str, cmd:list, run=False):
|
|
326
323
|
"""Generic interconnect page core - create multiple page with it"""
|
|
327
324
|
posx, posy = 5, 12
|
|
328
325
|
|
|
@@ -331,10 +328,13 @@ class PageUI:
|
|
|
331
328
|
self.open_intercons.append(host)
|
|
332
329
|
try:
|
|
333
330
|
# Send CMD to other device & show result
|
|
334
|
-
data_meta =
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
331
|
+
state, data_meta = exec_cmd(cmd + [f">>{host}"], jsonify=True, skip_check=True)
|
|
332
|
+
if state:
|
|
333
|
+
self.cmd_task_tag = data_meta['tag']
|
|
334
|
+
if "Task is Busy" in data_meta['verdict'] and not run:
|
|
335
|
+
self.cmd_out = data_meta['verdict'] # Otherwise the task start output not relevant on UI
|
|
336
|
+
else:
|
|
337
|
+
self.cmd_out = f"Error: {data_meta}"
|
|
338
338
|
except Exception as e:
|
|
339
339
|
self.cmd_out = str(e)
|
|
340
340
|
self.open_intercons.remove(host)
|
|
@@ -344,7 +344,7 @@ class PageUI:
|
|
|
344
344
|
return
|
|
345
345
|
# Draw host + cmd details
|
|
346
346
|
PageUI.DISPLAY.text(host, 0, posy)
|
|
347
|
-
PageUI.DISPLAY.text(cmd, posx, posy+10)
|
|
347
|
+
PageUI.DISPLAY.text(' '.join(cmd), posx, posy+10)
|
|
348
348
|
# Update display output with retrieved task result (by TaskID)
|
|
349
349
|
if self.cmd_task_tag is not None:
|
|
350
350
|
task_buffer = manage_task(self.cmd_task_tag, 'show').replace(' ', '')
|
|
@@ -373,7 +373,7 @@ class PageUI:
|
|
|
373
373
|
try:
|
|
374
374
|
cmd_list = cmd.strip().split()
|
|
375
375
|
# Send CMD to other device & show result
|
|
376
|
-
state, out = exec_cmd(cmd_list)
|
|
376
|
+
state, out = exec_cmd(cmd_list, skip_check=True)
|
|
377
377
|
try:
|
|
378
378
|
self.cmd_out = ''.join(out.strip().split()).replace(' ', '')
|
|
379
379
|
except Exception:
|
|
@@ -409,13 +409,12 @@ def _sys_page():
|
|
|
409
409
|
|
|
410
410
|
|
|
411
411
|
def _intercon_cache(line_limit=3):
|
|
412
|
-
if InterCon is None:
|
|
413
|
-
return False
|
|
414
412
|
line_start = 15
|
|
415
413
|
line_cnt = 1
|
|
416
414
|
PageUI.DISPLAY.text("InterCon cache", 0, line_start)
|
|
417
|
-
|
|
418
|
-
|
|
415
|
+
cache = hosts()["intercon"]
|
|
416
|
+
if sum([1 for _ in cache]) > 0:
|
|
417
|
+
for key, val in cache.items():
|
|
419
418
|
key = key.split('.')[0]
|
|
420
419
|
val = '.'.join(val.split('.')[-2:])
|
|
421
420
|
PageUI.DISPLAY.text(f" {val} {key}", 0, line_start+(line_cnt*10))
|
|
@@ -502,7 +501,7 @@ def msgbox(msg='micrOS msg'):
|
|
|
502
501
|
return 'Show msg'
|
|
503
502
|
|
|
504
503
|
|
|
505
|
-
def intercon_genpage(cmd=None, run=False):
|
|
504
|
+
def intercon_genpage(cmd:str=None, run=False):
|
|
506
505
|
"""
|
|
507
506
|
Create intercon pages dynamically :)
|
|
508
507
|
- based on cmd value.
|
|
@@ -512,7 +511,7 @@ def intercon_genpage(cmd=None, run=False):
|
|
|
512
511
|
"""
|
|
513
512
|
raw = cmd.split()
|
|
514
513
|
host = raw[0]
|
|
515
|
-
cmd =
|
|
514
|
+
cmd = raw[1:]
|
|
516
515
|
try:
|
|
517
516
|
# Create page for intercon command
|
|
518
517
|
PageUI.PAGE_UI_OBJ.add_page(lambda: PageUI.PAGE_UI_OBJ.intercon_page(host, cmd, run=run))
|
|
@@ -522,7 +521,7 @@ def intercon_genpage(cmd=None, run=False):
|
|
|
522
521
|
return True
|
|
523
522
|
|
|
524
523
|
|
|
525
|
-
def cmd_genpage(cmd=None, run=False):
|
|
524
|
+
def cmd_genpage(cmd:str=None, run=False):
|
|
526
525
|
"""
|
|
527
526
|
Create load module execution pages dynamically :)
|
|
528
527
|
- based on cmd value: load_module function (args)
|
|
@@ -530,9 +529,6 @@ def cmd_genpage(cmd=None, run=False):
|
|
|
530
529
|
:param run: run button event at page init: True/False
|
|
531
530
|
:return: page creation verdict
|
|
532
531
|
"""
|
|
533
|
-
if not isinstance(cmd, str):
|
|
534
|
-
return False
|
|
535
|
-
|
|
536
532
|
try:
|
|
537
533
|
# Create page for intercon command
|
|
538
534
|
PageUI.PAGE_UI_OBJ.add_page(lambda: PageUI.PAGE_UI_OBJ.cmd_call_page(cmd, run=run))
|
|
@@ -4,13 +4,8 @@ from Types import resolve
|
|
|
4
4
|
# Core modules
|
|
5
5
|
from Config import cfgget
|
|
6
6
|
from Time import uptime
|
|
7
|
-
|
|
8
7
|
# Load Modules
|
|
9
|
-
from LM_system import top, memory_usage, ifconfig, rssi as sta_rssi, list_stations
|
|
10
|
-
try:
|
|
11
|
-
import LM_intercon as InterCon
|
|
12
|
-
except:
|
|
13
|
-
InterCon = None # Optional function handling
|
|
8
|
+
from LM_system import top, memory_usage, ifconfig, rssi as sta_rssi, list_stations, hosts
|
|
14
9
|
try:
|
|
15
10
|
from LM_esp32 import temp as cpu_temp
|
|
16
11
|
except Exception as e:
|
|
@@ -785,10 +780,13 @@ class PageUI:
|
|
|
785
780
|
# Check open host connection
|
|
786
781
|
try:
|
|
787
782
|
# Send CMD to other device & show result
|
|
788
|
-
data_meta =
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
783
|
+
state, data_meta = exec_cmd(cmd + [f">>{host}"], jsonify=True, skip_check=True)
|
|
784
|
+
if state:
|
|
785
|
+
self._cmd_task_tag = data_meta['tag']
|
|
786
|
+
if "Task is Busy" in data_meta['verdict'] and not run:
|
|
787
|
+
self.app_frame.press_output = data_meta['verdict'] # Otherwise the task start output not relevant on UI
|
|
788
|
+
else:
|
|
789
|
+
self.app_frame.press_output = f"Error: {data_meta}"
|
|
792
790
|
except Exception as e:
|
|
793
791
|
self.app_frame.press_output = str(e)
|
|
794
792
|
|
|
@@ -803,7 +801,7 @@ class PageUI:
|
|
|
803
801
|
self._cmd_task_tag = None
|
|
804
802
|
PageUI.write_lines(self.app_frame.press_output, display, x, y + 20, line_limit=2)
|
|
805
803
|
|
|
806
|
-
PageUI.write_lines(f"{host.split(".")[0]}:{cmd}", display, x, y, line_limit=2)
|
|
804
|
+
PageUI.write_lines(f"{host.split(".")[0]}:{' '.join(cmd)}", display, x, y, line_limit=2)
|
|
807
805
|
if run:
|
|
808
806
|
if self._cmd_task_tag is None:
|
|
809
807
|
_execute(display, w, h, x, y)
|
|
@@ -829,14 +827,13 @@ def _system_page(display, w, h, x, y):
|
|
|
829
827
|
return True
|
|
830
828
|
|
|
831
829
|
def _intercon_nodes_page(display, w, h, x, y):
|
|
832
|
-
if InterCon is None:
|
|
833
|
-
return False
|
|
834
830
|
line_limit = 3
|
|
835
831
|
line_start = y+5
|
|
836
832
|
line_cnt = 1
|
|
837
833
|
display.text("InterCon cache", x, line_start)
|
|
838
|
-
|
|
839
|
-
|
|
834
|
+
cache = hosts()["intercon"]
|
|
835
|
+
if sum([1 for _ in cache]) > 0:
|
|
836
|
+
for key, val in cache.items():
|
|
840
837
|
key = key.split('.')[0]
|
|
841
838
|
val = '.'.join(val.split('.')[-2:])
|
|
842
839
|
display.text(f" {val} {key}", x, line_start + (line_cnt * 10))
|
|
@@ -934,7 +931,7 @@ def intercon_genpage(cmd=None, run=False):
|
|
|
934
931
|
"""
|
|
935
932
|
raw = cmd.split()
|
|
936
933
|
host = raw[0]
|
|
937
|
-
cmd =
|
|
934
|
+
cmd = raw[1:]
|
|
938
935
|
try:
|
|
939
936
|
# Create page for intercon command
|
|
940
937
|
PageUI.INSTANCE.add_page(lambda display, w, h, x, y: PageUI.INSTANCE.intercon_exec_page(host, cmd, run, display, w, h, x, y))
|