micrOSDevToolKit 2.0.4__tar.gz → 2.0.5__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.
- {micrOSDevToolKit-2.0.4/micrOSDevToolKit.egg-info → micrOSDevToolKit-2.0.5}/PKG-INFO +1 -1
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/release_info/micrOS_ReleaseInfo/system_analysis_sum.json +8 -8
- micrOSDevToolKit-2.0.5/micrOS/source/LM_keychain.py +300 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_oled.py +10 -2
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_oled_sh1106.py +5 -2
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Shell.py +1 -1
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5/micrOSDevToolKit.egg-info}/PKG-INFO +1 -1
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/setup.py +1 -1
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/machine.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/ussl.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/machine.py +2 -2
- micrOSDevToolKit-2.0.5/toolkit/workspace/precompiled/LM_keychain.mpy +0 -0
- micrOSDevToolKit-2.0.5/toolkit/workspace/precompiled/LM_oled.mpy +0 -0
- micrOSDevToolKit-2.0.5/toolkit/workspace/precompiled/LM_oled_sh1106.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Shell.mpy +0 -0
- micrOSDevToolKit-2.0.5/toolkit/workspace/precompiled/node_config.json +1 -0
- micrOSDevToolKit-2.0.4/micrOS/source/LM_keychain.py +0 -214
- micrOSDevToolKit-2.0.4/toolkit/workspace/precompiled/LM_keychain.mpy +0 -0
- micrOSDevToolKit-2.0.4/toolkit/workspace/precompiled/LM_oled.mpy +0 -0
- micrOSDevToolKit-2.0.4/toolkit/workspace/precompiled/LM_oled_sh1106.mpy +0 -0
- micrOSDevToolKit-2.0.4/toolkit/workspace/precompiled/node_config.json +0 -1
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/LICENSE +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/MANIFEST.in +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/README.md +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/devToolKit.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/__init__.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/.DS_Store +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CH34XSER_MAC/CH34X_DRV_INSTALL_INSTRUCTIONS.pdf +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CH34XSER_MAC/CH34xVCPDriver.pkg +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/CP210xVCPInstaller_x64.exe +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/CP210xVCPInstaller_x86.exe +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/CP210x_Universal_Windows_Driver_ReleaseNotes.txt +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/SLAB_License_Agreement_VCP_Windows.txt +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/arm/silabser.sys +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/arm64/silabser.sys +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/dpinst.xml +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/silabser.cat +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/silabser.inf +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/x64/silabser.sys +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/CP210x_Universal_Windows_Driver/x86/silabser.sys +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/macOS_VCP_Driver/SiLabsUSBDriverDisk.dmg +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/env/driver_cp210x/macOS_VCP_Driver/macOS_VCP_Driver_Release_Notes.txt +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/media/__init__.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/media/dnd.png +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/media/logo.png +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/media/logo_mini.png +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/media/usb_port_icon.png +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/media/wifi_icon.png +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/__init__.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/esp32-20231005-v1.21.0.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/esp32c3-GENERIC-20240105-v1.22.1.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/esp32c3-GENERIC-20240222-v1.22.2.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/esp32cam-v1.21.0_camera.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/esp32s2-GENERIC-20240105-v1.22.1.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/esp32s2-LOLIN_MINI-20220618-v1.19.1.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/esp32s3-GENERIC-20240105-v1.22.1.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/esp32s3_spiram_oct-20231005-v1.21.0.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/rpi-pico-w-20231005-v1.21.0.uf2 +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/tinypico-20231005-v1.21.0.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/micropython/tinypico-usbc-UM-20240105-v1.22.1.bin +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/.DS_Store +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Common.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Config.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Debug.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Hooks.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/IO_esp32.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/IO_esp32c3.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/IO_esp32s2.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/IO_esp32s3.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/IO_qtpy.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/IO_rp2.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/IO_tinypico.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/InterConnect.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Interrupts.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_L298N_DCmotor.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_L9110_DCmotor.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_OV2640.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_VL53L0X.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_aht10.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_bme280.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_buzzer.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_catgame.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_cct.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_co2.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_dashboard_be.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_demo.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_dht11.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_dht22.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_dimmer.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_distance.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_ds18.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_esp32.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_gameOfLife.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_genIO.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_i2c.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_i2s_mic.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_intercon.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_ld2410.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_light_sensor.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_lmpacman.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_neoeffects.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_neopixel.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_oled_ui.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_pet_feeder.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_ph_sensor.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_presence.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_rencoder.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_rest.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_rgb.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_rgbcct.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_roboarm.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_robustness.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_rp2w.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_servo.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_stepper.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_switch.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_system.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_telegram.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/LM_tinyrgb.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Network.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Notify.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Scheduler.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Server.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Tasks.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/Time.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/dashboard.html +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/index.html +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/main.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/micrOS.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/micrOSloader.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/microIO.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/reset.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOS/source/urequests.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOSDevToolKit.egg-info/SOURCES.txt +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOSDevToolKit.egg-info/dependency_links.txt +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOSDevToolKit.egg-info/requires.txt +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/micrOSDevToolKit.egg-info/top_level.txt +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/setup.cfg +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/DevEnvCompile.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/DevEnvOTA.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/DevEnvUSB.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/Gateway.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/LM_to_compile.dat +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/MicrOSDevEnv.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/__init__.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/AirQualityBME280.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/AirQualityDHT22_CO2.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/CCTDemo.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/CCTTest.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/CamStream.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/CatGame.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/Dimmer.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/GetVersion.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/MicrophoneTest.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/NeoEffectsDemo.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/NeopixelTest.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/PresenceTest.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/RGBTest.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/RoboArm.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/SED_test.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/SystemTest.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/Template_app.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/__init__.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/_capture.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/_micPlotting.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/_presencePlotting.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/dashboard_apps/uLightDemo.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/img_stream.html +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/index.html +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/lib/LocalMachine.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/lib/SafeInput.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/lib/SearchDevices.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/lib/SerialDriverHandler.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/lib/TerminalColors.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/lib/__init__.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/lib/micrOSClient.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/lib/pip_package_installer.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/micrOSdashboard.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/micrOSlint.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/LP_darwin.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/LP_darwin.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/LP_darwin.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/LP_darwin.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/dht.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/dht.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/dotstar.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/dotstar.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/dotstar.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/ds18x20.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/ds18x20.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/ds18x20.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/esp32.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/esp32.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/esp32.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/framebuf.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/framebuf.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/framebuf.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/machine.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/machine.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/micropython.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/micropython.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/micropython.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/neopixel.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/neopixel.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/neopixel.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/network.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/network.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/network.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/ntptime.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/onewire.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/onewire.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/onewire.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/sim_console.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/sim_console.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/sim_console.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/simgc.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/simgc.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/simgc.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/simulator.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/simulator.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/simulator.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/tinypico.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/tinypico.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/tinypico.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/uasyncio.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/uasyncio.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/uasyncio.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/usocket.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/ustruct.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/ustruct.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/utime.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/utime.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/utime.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/webrepl.cpython-312.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/webrepl.cpython-38.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/__pycache__/webrepl.cpython-39.pyc +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/dht.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/dotstar.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/ds18x20.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/esp32.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/framebuf.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/micropython.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/neopixel.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/network.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/ntptime.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/onewire.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/sim_console.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/simgc.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/simulator.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/tinypico.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/uasyncio.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/usocket.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/ussl.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/ustruct.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/utime.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/simulator_lib/webrepl.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/socketClient.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/user_data/.include +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/user_data/node_config_archive/.include +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/user_data/webhooks/generic.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/user_data/webhooks/template.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/__init__.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Common.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Config.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Debug.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Hooks.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/IO_esp32.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/IO_esp32c3.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/IO_esp32s2.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/IO_esp32s3.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/IO_qtpy.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/IO_rp2.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/IO_tinypico.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/InterConnect.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Interrupts.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_L298N_DCmotor.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_L9110_DCmotor.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_OV2640.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_VL53L0X.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_aht10.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_bme280.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_buzzer.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_catgame.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_cct.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_co2.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_dashboard_be.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_demo.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_dht11.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_dht22.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_dimmer.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_distance.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_ds18.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_esp32.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_gameOfLife.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_genIO.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_i2c.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_i2s_mic.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_intercon.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_ld2410.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_light_sensor.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_lmpacman.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_neoeffects.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_neopixel.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_oled_ui.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_pet_feeder.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_ph_sensor.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_presence.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_rencoder.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_rest.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_rgb.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_rgbcct.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_roboarm.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_robustness.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_rp2w.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_servo.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_stepper.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_switch.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_system.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_telegram.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/LM_tinyrgb.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Network.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Notify.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Scheduler.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Server.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Tasks.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/Time.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/_mpy.version +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/dashboard.html +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/index.html +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/main.py +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/micrOS.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/micrOSloader.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/microIO.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/reset.mpy +0 -0
- {micrOSDevToolKit-2.0.4 → micrOSDevToolKit-2.0.5}/toolkit/workspace/precompiled/urequests.mpy +0 -0
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
],
|
|
59
59
|
"microIO.py": [
|
|
60
60
|
9.08,
|
|
61
|
-
|
|
61
|
+
38
|
|
62
62
|
],
|
|
63
63
|
"micrOS.py": [
|
|
64
64
|
9.3,
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
0
|
|
110
110
|
],
|
|
111
111
|
"LM_oled.py": [
|
|
112
|
-
9.
|
|
112
|
+
9.3,
|
|
113
113
|
3
|
|
114
114
|
],
|
|
115
115
|
"LM_tinyrgb.py": [
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
0
|
|
146
146
|
],
|
|
147
147
|
"LM_oled_sh1106.py": [
|
|
148
|
-
8.
|
|
148
|
+
8.84,
|
|
149
149
|
1
|
|
150
150
|
],
|
|
151
151
|
"LM_ld2410.py": [
|
|
@@ -154,7 +154,7 @@
|
|
|
154
154
|
],
|
|
155
155
|
"LM_neopixel.py": [
|
|
156
156
|
7.57,
|
|
157
|
-
|
|
157
|
+
2
|
|
158
158
|
],
|
|
159
159
|
"LM_cct.py": [
|
|
160
160
|
8.82,
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
0
|
|
194
194
|
],
|
|
195
195
|
"LM_keychain.py": [
|
|
196
|
-
|
|
196
|
+
9.15,
|
|
197
197
|
0
|
|
198
198
|
],
|
|
199
199
|
"LM_dht11.py": [
|
|
@@ -271,7 +271,7 @@
|
|
|
271
271
|
19
|
|
272
272
|
],
|
|
273
273
|
"load": [
|
|
274
|
-
|
|
274
|
+
6685,
|
|
275
275
|
47
|
|
276
276
|
],
|
|
277
277
|
"core_dep": [
|
|
@@ -283,7 +283,7 @@
|
|
|
283
283
|
7
|
|
284
284
|
],
|
|
285
285
|
"core_score": 9.18,
|
|
286
|
-
"load_score": 8.
|
|
287
|
-
"version": "2.0.4-
|
|
286
|
+
"load_score": 8.18,
|
|
287
|
+
"version": "2.0.4-3"
|
|
288
288
|
}
|
|
289
289
|
}
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
import uasyncio as asyncio
|
|
2
|
+
from Common import micro_task
|
|
3
|
+
from utime import localtime
|
|
4
|
+
from Network import ifconfig
|
|
5
|
+
from LM_oled import text, show, rect, pixel, clean, line, load_n_init as oled_lni
|
|
6
|
+
from LM_ds18 import measure
|
|
7
|
+
from microIO import physical_pin, pinmap_dump
|
|
8
|
+
from neopixel import NeoPixel
|
|
9
|
+
from machine import Pin
|
|
10
|
+
try:
|
|
11
|
+
from LM_gameOfLife import next_gen as gol_nextgen, reset as gol_reset
|
|
12
|
+
except:
|
|
13
|
+
gol_nextgen = None # Optional function handling
|
|
14
|
+
|
|
15
|
+
class KC:
|
|
16
|
+
INITED = False # Auto init module feature
|
|
17
|
+
DP_main_page = True # store display logical state: ON (main page) / OFF (screen saver)
|
|
18
|
+
DP_cnt = 0 # display "count back", when 0 go to sleep -> OFF
|
|
19
|
+
DP_cnt_default = None # store calculated sequence to sleep 30sec/period_ms
|
|
20
|
+
NEOPIXEL_OBJ = None # Neopixel LED handler object
|
|
21
|
+
COLOR_WHEEL = None # LED color wheel generator object for animation
|
|
22
|
+
NEOPIXEL_BR = 30 # default neopixel brightness
|
|
23
|
+
|
|
24
|
+
#############################
|
|
25
|
+
# INTERNAL FUNCTIONS #
|
|
26
|
+
#############################
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
async def _screen_saver(scale=2):
|
|
30
|
+
"""
|
|
31
|
+
Conway's game of life screen saver simulation
|
|
32
|
+
:param scale: default (2) game of life matrix (16x32) upscale to real display size 32x64
|
|
33
|
+
"""
|
|
34
|
+
# Default mode
|
|
35
|
+
if gol_nextgen is None:
|
|
36
|
+
return # screen off - no screen saver...
|
|
37
|
+
# Screen saver mode
|
|
38
|
+
matrix = gol_nextgen(raw=True)
|
|
39
|
+
if matrix is None:
|
|
40
|
+
# Reset Game of life
|
|
41
|
+
gol_reset()
|
|
42
|
+
# flash main page - quick view
|
|
43
|
+
await _main_page() # Run main screen page coroutine
|
|
44
|
+
await asyncio.sleep_ms(3000) # Wait 3s to show main screen before continue screensaver
|
|
45
|
+
else:
|
|
46
|
+
# Update display with Conway's Game of Life
|
|
47
|
+
clean()
|
|
48
|
+
for line_idx, _line in enumerate(matrix):
|
|
49
|
+
for x_idx, v in enumerate(_line):
|
|
50
|
+
if scale == 1:
|
|
51
|
+
pixel(x_idx, line_idx, color=v)
|
|
52
|
+
else:
|
|
53
|
+
rect(x_idx*scale, line_idx*scale, w=scale, h=scale, state=v, fill=True)
|
|
54
|
+
show()
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
def _color_wheel():
|
|
58
|
+
"""
|
|
59
|
+
RGB LED color wheel generator - rainbow
|
|
60
|
+
"""
|
|
61
|
+
max_val = 10 # normally up to 255, but must be limited due to heat problems (4%)
|
|
62
|
+
half_val = max_val // 2
|
|
63
|
+
colors = ((0, 0, half_val), (0, 0, max_val), (0, half_val, max_val), (0, max_val, half_val), (0, max_val, 0),
|
|
64
|
+
(half_val, max_val, 0), (max_val, half_val, 0), (max_val, 0, 0), (half_val, 0, 0), (max_val, 0, half_val),
|
|
65
|
+
(half_val, 0, max_val), (0, 0, half_val))
|
|
66
|
+
while True:
|
|
67
|
+
# Loop through the colors to generate smooth transitions
|
|
68
|
+
for i in range(len(colors) - 1):
|
|
69
|
+
start_color = colors[i]
|
|
70
|
+
end_color = colors[i + 1]
|
|
71
|
+
# Generate a smooth transition from start_color to end_color
|
|
72
|
+
for j in range(5): # Adjust this value for smoother or faster transition
|
|
73
|
+
# Linear interpolation for each color component
|
|
74
|
+
yield tuple(int(start + (end - start) * j / 10) for start, end in zip(start_color, end_color))
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
async def _main_page():
|
|
78
|
+
"""
|
|
79
|
+
Run display content refresh
|
|
80
|
+
# H:M
|
|
81
|
+
S/A: 1.92
|
|
82
|
+
40.0 C
|
|
83
|
+
"""
|
|
84
|
+
def _cube():
|
|
85
|
+
# 5x5 px cube (25px overall)
|
|
86
|
+
_offset, _l_width = 2, 5 # Initial size + positioning
|
|
87
|
+
_view = int(25*(KC.DP_cnt/KC.DP_cnt_default)) # overall pixel to be visualized
|
|
88
|
+
_complete_lines = int(_view / _l_width) # complete lines number
|
|
89
|
+
_sub_line = _view - (_complete_lines*_l_width) # incomplete line width
|
|
90
|
+
for _l in range(0, 5):
|
|
91
|
+
if _l < _complete_lines:
|
|
92
|
+
line(0+_offset, _l+_offset, _l_width+_offset, _l+_offset)
|
|
93
|
+
else:
|
|
94
|
+
line(0+_offset, _l+_offset, _sub_line+_offset, _l+_offset)
|
|
95
|
+
break
|
|
96
|
+
|
|
97
|
+
# Clean display and collect input data: time, network mode, IP address
|
|
98
|
+
clean()
|
|
99
|
+
ltime = localtime()
|
|
100
|
+
h = f"0{ltime[-5]}" if len(str(ltime[-5])) < 2 else ltime[-5]
|
|
101
|
+
m = f"0{ltime[-4]}" if len(str(ltime[-4])) < 2 else ltime[-4]
|
|
102
|
+
nwmd, nwif = ifconfig()
|
|
103
|
+
nwmd, devip = nwmd[0] if len(nwmd) > 0 else "0", ".".join(nwif[0].split(".")[-2:])
|
|
104
|
+
|
|
105
|
+
# Draw data to display
|
|
106
|
+
_cube() # Draw display timer (until screen saver)
|
|
107
|
+
text(f"{h}:{m}", x=12, y=1) # Header: time
|
|
108
|
+
text(f"{nwmd}:{devip}", x=4, y=15) # Network mode and IP
|
|
109
|
+
try:
|
|
110
|
+
text(f"{round(tuple(measure().values())[0], 1)} C", x=4, y=25) # ds18 sensor value
|
|
111
|
+
except Exception:
|
|
112
|
+
text("? C", x=4, y=25) # ds18 read issue (default: ?)
|
|
113
|
+
show()
|
|
114
|
+
return "Display show"
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
async def _task(period_ms):
|
|
118
|
+
"""
|
|
119
|
+
Async display refresh task
|
|
120
|
+
- main page (main mode) - auto sleep after 30 sec
|
|
121
|
+
- screen saver (sleep mode)
|
|
122
|
+
"""
|
|
123
|
+
# Auto init keychain module (if needed) - failsafe
|
|
124
|
+
if not KC.INITED:
|
|
125
|
+
_v = load_n_init()
|
|
126
|
+
if not KC.INITED:
|
|
127
|
+
return _v
|
|
128
|
+
|
|
129
|
+
KC.DP_cnt_default = int(30_000 / period_ms) # After 30 sec go to sleep mode
|
|
130
|
+
KC.DP_cnt = KC.DP_cnt_default # Set sleep counter
|
|
131
|
+
fast_period = int(period_ms/3) # Calculate faster refresh period
|
|
132
|
+
fast_period = fast_period if fast_period > 100 else 100
|
|
133
|
+
|
|
134
|
+
# Run keychain main async loop, with update ID: kc._display
|
|
135
|
+
with micro_task(tag="kc._display") as my_task:
|
|
136
|
+
while True:
|
|
137
|
+
if KC.DP_main_page:
|
|
138
|
+
# [MAIN MODE] Execute main page
|
|
139
|
+
await _main_page() #1 Run main page function
|
|
140
|
+
my_task.out = f'main page: {KC.DP_cnt}' #2 Update task data for (task show kc._display)
|
|
141
|
+
KC.DP_cnt -= 1 #3 Update sleep counter
|
|
142
|
+
# Async sleep - feed event loop
|
|
143
|
+
await asyncio.sleep_ms(period_ms)
|
|
144
|
+
else:
|
|
145
|
+
# [SLEEP MODE] Execute screen saver page
|
|
146
|
+
await _screen_saver() # Run sleep page function
|
|
147
|
+
# Async sleep - feed event loop
|
|
148
|
+
await asyncio.sleep_ms(fast_period)
|
|
149
|
+
|
|
150
|
+
# Auto sleep event handler - off event - go to (sleep mode)
|
|
151
|
+
if KC.DP_cnt <= 0:
|
|
152
|
+
KC.DP_main_page = False #1 disable main screen
|
|
153
|
+
clean() #2 clean screen
|
|
154
|
+
show() #3 show cleaned display
|
|
155
|
+
KC.DP_cnt = KC.DP_cnt_default #4 reset sleep counter to default
|
|
156
|
+
my_task.out = 'sleep...'
|
|
157
|
+
neopixel_color_wheel() # update neopixel color wheel
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
def _boot_page(msg):
|
|
161
|
+
clean()
|
|
162
|
+
msg_len = len(msg)*8 # message text length in pixels
|
|
163
|
+
x_offset = int((64 - msg_len)/2) # x (width) center-ing offset
|
|
164
|
+
text(msg, x=x_offset, y=11) # y(height):32 TODO: Auto positioning in y axes (multi line...)
|
|
165
|
+
show()
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
#############################
|
|
169
|
+
# PUBLIC FUNCTIONS #
|
|
170
|
+
#############################
|
|
171
|
+
|
|
172
|
+
def load_n_init(width=64, height=32, bootmsg="micrOS"):
|
|
173
|
+
"""
|
|
174
|
+
Init OLED display 64x32 (default)
|
|
175
|
+
Init Neopixel LED (1 segment)
|
|
176
|
+
:param width: screen width (pixel)
|
|
177
|
+
:param height: screen height (pixel)
|
|
178
|
+
:param bootmsg: First text on page at bootup, default: "micrOS"
|
|
179
|
+
"""
|
|
180
|
+
KC.COLOR_WHEEL = _color_wheel() #1 Init neopixel color wheel generator
|
|
181
|
+
try:
|
|
182
|
+
oled_lni(width, height, brightness=20) #2 Init oled display
|
|
183
|
+
_boot_page(bootmsg) #3 Show boot page text
|
|
184
|
+
KC.INITED = True # Set display was successfully inited (for _task auto init)
|
|
185
|
+
return "OLED INIT OK"
|
|
186
|
+
except Exception as e:
|
|
187
|
+
KC.INITED = False # display init failed (for _task auto init)
|
|
188
|
+
return f"OLED INIT NOK: {e}"
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
def display(period=1000):
|
|
192
|
+
"""
|
|
193
|
+
Create kc._display task - refresh loop
|
|
194
|
+
:param period: display refresh period in ms (min. 500ms)
|
|
195
|
+
"""
|
|
196
|
+
# [!] ASYNC TASK CREATION [1*] with async task callback + taskID (TAG) handling
|
|
197
|
+
period_ms = 500 if period < 500 else period
|
|
198
|
+
state = micro_task(tag="kc._display", task=_task(period_ms=period_ms))
|
|
199
|
+
return "Starting" if state else "Already running"
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
def temperature():
|
|
203
|
+
"""
|
|
204
|
+
Measure ds18B20 temperature sensor
|
|
205
|
+
"""
|
|
206
|
+
return measure()
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
def neopixel_color_wheel(br=None):
|
|
210
|
+
"""
|
|
211
|
+
Neopixel color wheel
|
|
212
|
+
:param br: brightness value 0-100 percent
|
|
213
|
+
:param run: run led update / disable
|
|
214
|
+
"""
|
|
215
|
+
def _init():
|
|
216
|
+
if KC.NEOPIXEL_OBJ is None:
|
|
217
|
+
neopixel_pin = Pin(physical_pin('neop')) # Get Neopixel pin from LED PIN pool
|
|
218
|
+
KC.NEOPIXEL_OBJ = NeoPixel(neopixel_pin, n=1) # initialize for max 1 segment
|
|
219
|
+
return KC.NEOPIXEL_OBJ
|
|
220
|
+
# INIT
|
|
221
|
+
neo_led = _init()
|
|
222
|
+
if br is None or not isinstance(br, int): # Optional brightness param handling (load from cache)
|
|
223
|
+
br = KC.NEOPIXEL_BR
|
|
224
|
+
else:
|
|
225
|
+
KC.NEOPIXEL_BR = br # update neopixel brightness cache
|
|
226
|
+
if KC.COLOR_WHEEL is None:
|
|
227
|
+
KC.COLOR_WHEEL = _color_wheel() # init color wheel generator
|
|
228
|
+
# UPDATE
|
|
229
|
+
r, g, b = next(KC.COLOR_WHEEL) # get next color
|
|
230
|
+
br = br if br == 100 else br/100 # calculate brightness multiplier
|
|
231
|
+
r, g, b = int(r*br), int(g*br), int(b*br) # apply brightness parameter
|
|
232
|
+
neo_led[0] = (r, g, b) # Set LED element color
|
|
233
|
+
neo_led.write() # Send data to LED device
|
|
234
|
+
return {'R': r, 'G': g, 'B': b, 'S': 1, 'br': br} # Return verdict
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
def display_toggle():
|
|
238
|
+
"""
|
|
239
|
+
Display mode toggle (main/screensaver)
|
|
240
|
+
"""
|
|
241
|
+
KC.DP_main_page = not KC.DP_main_page
|
|
242
|
+
if not KC.DP_main_page:
|
|
243
|
+
# Reset display counter when goes to sleep
|
|
244
|
+
KC.DP_cnt = KC.DP_cnt_default
|
|
245
|
+
v = 'main view' if KC.DP_main_page else 'screensaver'
|
|
246
|
+
return f"Display mode: {v}"
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
def neopixel_toggle():
|
|
250
|
+
"""
|
|
251
|
+
Disable/Enable neopixel LED (brightness 0/default)
|
|
252
|
+
"""
|
|
253
|
+
KC.NEOPIXEL_BR = 0 if KC.NEOPIXEL_BR > 0 else 30
|
|
254
|
+
v = 'disabled' if KC.NEOPIXEL_BR == 0 else 'enabled'
|
|
255
|
+
return f"Neopixel: {v} br: {KC.NEOPIXEL_BR}"
|
|
256
|
+
|
|
257
|
+
def press_event():
|
|
258
|
+
"""
|
|
259
|
+
IRQ1 keychain module control function
|
|
260
|
+
- neopixel ON/OFF
|
|
261
|
+
- display wake-up (ON)
|
|
262
|
+
"""
|
|
263
|
+
# If display is ON call neopixel toggle function
|
|
264
|
+
if KC.DP_main_page:
|
|
265
|
+
# Reset display counter
|
|
266
|
+
KC.DP_cnt = KC.DP_cnt_default
|
|
267
|
+
# Neopixel color wheel disable/enable
|
|
268
|
+
return neopixel_toggle()
|
|
269
|
+
# Wake display
|
|
270
|
+
KC.DP_main_page = True
|
|
271
|
+
return f"Display mode: main view"
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
def lmdep():
|
|
275
|
+
"""
|
|
276
|
+
Load Module dependencies
|
|
277
|
+
"""
|
|
278
|
+
return 'oled', 'ds18', 'gameOfLife'
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
def pinmap():
|
|
282
|
+
"""
|
|
283
|
+
PIN MAP dump
|
|
284
|
+
"""
|
|
285
|
+
from LM_oled import pinmap as o_pmp
|
|
286
|
+
from LM_ds18 import pinmap as t_pmp
|
|
287
|
+
pmp = o_pmp()
|
|
288
|
+
pmp.update(t_pmp())
|
|
289
|
+
pmp.update(pinmap_dump(['neop']))
|
|
290
|
+
return pmp
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
def help():
|
|
294
|
+
return ('load_n_init width=64 height=32 bootmsg="micrOS"',
|
|
295
|
+
'temperature', 'display period>=1000',
|
|
296
|
+
'press_event',
|
|
297
|
+
'display_toggle',
|
|
298
|
+
'neopixel_toggle',
|
|
299
|
+
'neopixel_color_wheel br=<0-100>',
|
|
300
|
+
'pinmap', 'lmdep')
|
|
@@ -91,7 +91,9 @@ class SSD1306(framebuf.FrameBuffer):
|
|
|
91
91
|
def poweron(self):
|
|
92
92
|
self.write_cmd(SET_DISP | 0x01)
|
|
93
93
|
|
|
94
|
-
def contrast(self,
|
|
94
|
+
def contrast(self, percent):
|
|
95
|
+
"""percent: 0-100"""
|
|
96
|
+
contrast = int(255*(percent/100))
|
|
95
97
|
self.write_cmd(SET_CONTRAST)
|
|
96
98
|
self.write_cmd(contrast)
|
|
97
99
|
|
|
@@ -155,11 +157,17 @@ class SSD1306_I2C(SSD1306):
|
|
|
155
157
|
# SSD1306 interface functions #
|
|
156
158
|
###################################
|
|
157
159
|
|
|
158
|
-
def load_n_init(width=128, height=64):
|
|
160
|
+
def load_n_init(width=128, height=64, brightness=50):
|
|
161
|
+
"""
|
|
162
|
+
:param width: pixel
|
|
163
|
+
:param height: pixel
|
|
164
|
+
:param brightness: percentage
|
|
165
|
+
"""
|
|
159
166
|
if SSD1306_I2C.OLED_OBJ is None:
|
|
160
167
|
i2c = SoftI2C(Pin(physical_pin('i2c_scl')), Pin(physical_pin('i2c_sda')))
|
|
161
168
|
# TODO: scan device - abort if no device is available
|
|
162
169
|
SSD1306_I2C.OLED_OBJ = SSD1306_I2C(width, height, i2c)
|
|
170
|
+
SSD1306_I2C.OLED_OBJ.contrast(percent=brightness)
|
|
163
171
|
return SSD1306_I2C.OLED_OBJ
|
|
164
172
|
|
|
165
173
|
|
|
@@ -94,7 +94,9 @@ class SH1106(framebuf.FrameBuffer):
|
|
|
94
94
|
def sleep(self, value):
|
|
95
95
|
self.write_cmd(_SET_DISP | (not value))
|
|
96
96
|
|
|
97
|
-
def contrast(self,
|
|
97
|
+
def contrast(self, percent):
|
|
98
|
+
"""percent: 0-100"""
|
|
99
|
+
contrast = int(255 * (percent / 100))
|
|
98
100
|
self.write_cmd(_SET_CONTRAST)
|
|
99
101
|
self.write_cmd(contrast)
|
|
100
102
|
|
|
@@ -219,12 +221,13 @@ class SH1106_I2C(SH1106):
|
|
|
219
221
|
# SH1106 interface functions #
|
|
220
222
|
###################################
|
|
221
223
|
|
|
222
|
-
def load_n_init(width=128, height=64, rotate=180):
|
|
224
|
+
def load_n_init(width=128, height=64, brightness=50, rotate=180):
|
|
223
225
|
if SH1106_I2C.OLED_OBJ is None:
|
|
224
226
|
#i2c = SoftI2C(Pin(physical_pin('i2c_scl')), Pin(physical_pin('i2c_sda')))
|
|
225
227
|
i2c = I2C(scl=Pin(physical_pin('i2c_scl')), sda=Pin(physical_pin('i2c_sda')), freq=400000)
|
|
226
228
|
# TODO: scan device - abort if no device is available
|
|
227
229
|
SH1106_I2C.OLED_OBJ = SH1106_I2C(width, height, i2c, rotate=rotate)
|
|
230
|
+
SH1106_I2C.OLED_OBJ.contrast(percent=brightness)
|
|
228
231
|
return SH1106_I2C.OLED_OBJ
|
|
229
232
|
|
|
230
233
|
|
|
@@ -18,7 +18,7 @@ dependencies = ['adafruit-ampy', 'mpremote', 'esptool', 'ipaddress', 'netaddr',
|
|
|
18
18
|
|
|
19
19
|
setuptools.setup(
|
|
20
20
|
name='micrOSDevToolKit',
|
|
21
|
-
version='2.0.
|
|
21
|
+
version='2.0.5',
|
|
22
22
|
author='Marcell Ban',
|
|
23
23
|
author_email='miros.framework@gmail.com',
|
|
24
24
|
description='Development and deployment environment for micrOS, the diy micropython automation OS (IoT)',
|
|
Binary file
|
|
Binary file
|
|
@@ -132,7 +132,7 @@ class ADC:
|
|
|
132
132
|
|
|
133
133
|
class I2C:
|
|
134
134
|
|
|
135
|
-
def __init__(self, scl, sda, freq):
|
|
135
|
+
def __init__(self, scl, sda, freq=None):
|
|
136
136
|
self.scl = scl
|
|
137
137
|
self.sda = sda
|
|
138
138
|
self.freq = freq
|
|
@@ -166,7 +166,7 @@ class I2S:
|
|
|
166
166
|
|
|
167
167
|
class SoftI2C(I2C):
|
|
168
168
|
|
|
169
|
-
def __init__(self, scl, sda, freq):
|
|
169
|
+
def __init__(self, scl, sda, freq=None):
|
|
170
170
|
super().__init__(scl, sda, freq)
|
|
171
171
|
|
|
172
172
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"irq2": false, "irq2_cbf": "n/a", "irq3_cbf": "n/a", "timirq": false, "irq4": false, "auth": false, "irq4_cbf": "n/a", "devip": "10.0.1.74", "soctout": 100, "appwd": "ADmin123", "timirqcbf": "n/a", "timirqseq": 300000, "hwuid": "micrecda3b95c3f8OS", "staessid": "elektroncsakpozitivan_2G", "irq1_cbf": "n/a", "cron": false, "irq4_trig": "n/a", "nwmd": "STA", "boothook": "telegram receiver_loop &2000;demo hello", "version": "2.0.5-0", "irq_prell_ms": 300, "crontasks": "n/a", "aioqueue": 3, "utc": 60, "boostmd": true, "irq1_trig": "n/a", "guimeta": "...", "socport": 9008, "webui": false, "cstmpmap": "n/a", "telegram": "6185435843:AAH71wEyoOil8bRKecQHp4zazTQ_MmE7bvE", "irq3_trig": "n/a", "dbg": true, "irq2_trig": "n/a", "irq3": false, "devfid": "PublicTelegram", "stapwd": "BNM3,1415", "irq1": false}
|