Change PiggyOS to MicroPythonOS

This commit is contained in:
Thomas Farstrike
2025-06-05 00:02:16 +02:00
parent 28bbb9b636
commit 00f51afd79
6 changed files with 19 additions and 18 deletions
+11 -11
View File
@@ -1,4 +1,4 @@
PiggyOS
MicroPythonOS
=======
This is an operating system for microcontrollers like the ESP32.
@@ -50,43 +50,43 @@ Prepare all the sources:
mkdir ~/sources/
cd ~/sources/
git clone https://github.com/LightningPiggy/PiggyOS.git
git clone https://github.com/MicroPythonOS/MicroPythonOS.git
git clone https://github.com/bixb922/freezeFS
~/sources/PiggyOS/scripts/freezefs_mount_builtin.sh
~/sources/MicroPythonOS/scripts/freezefs_mount_builtin.sh
git clone https://github.com/cnadler86/micropython-camera-API
echo 'include("~/sources/lvgl_micropython/build/manifest.py")' >> micropython-camera-API/src/manifest.py
git clone https://github.com/lvgl-micropython/lvgl_micropython
cp ~/sources/PiggyOS/patches/lv_conf.h lvgl_micropython/lib/
cp ~/sources/MicroPythonOS/patches/lv_conf.h lvgl_micropython/lib/
cd lvgl_micropython/lib/micropython
patch -p1 < ~/sources/PiggyOS/patches/lvgl_micropython*.patch
patch -p1 < ~/sources/MicroPythonOS/patches/lvgl_micropython*.patch
```
Start the build:
```
~/sources/PiggyOS/scripts/build_lvgl_micropython.sh
~/sources/MicroPythonOS/scripts/build_lvgl_micropython.sh
```
Or if you want to build for development, so without any preinstalled files, do:
```
~/sources/PiggyOS/scripts/build_lvgl_micropython.sh devbuild
~/sources/MicroPythonOS/scripts/build_lvgl_micropython.sh devbuild
```
Now install it with:
```
~/sources/PiggyOS/scripts/flash_over_usb.sh
~/sources/MicroPythonOS/scripts/flash_over_usb.sh
```
If you made a 'devbuild', then you probably want to install all files and apps manually:
```
~/sources/PiggyOS/scripts/install.sh
~/sources/MicroPythonOS/scripts/install.sh
```
Release checklist
@@ -114,13 +114,13 @@ To do so, make sure you have the necessary dependencies:
...and then run:
```
~/sources/PiggyOS/scripts/build_lvgl_micropython.sh unix
~/sources/MicroPythonOS/scripts/build_lvgl_micropython.sh unix
```
or
```
~/sources/PiggyOS/scripts/build_lvgl_micropython.sh macOS
~/sources/MicroPythonOS/scripts/build_lvgl_micropython.sh macOS
```
To run it, it's recommended to symlink your ~/.micropython/lib folder into this project's lib:
+2 -2
View File
@@ -1,5 +1,5 @@
# Seems this must be passed as:
# USER_C_MODULE=/home/user/sources/PiggyOS/c_mpos/micropython.cmake
# This must be passed as:
# USER_C_MODULE=/home/user/sources/MicroPythonOS/c_mpos/micropython.cmake
# ...to make.py when building for esp32 to ensure it gets compiled.
add_library(usermod_c_mpos INTERFACE)
+3 -3
View File
@@ -19,7 +19,7 @@ manifest=""
if [ "$target" == "esp32" ]; then
if [ "$buildtype" == "prod" ]; then
manifest="FROZEN_MANIFEST=/home/user/sources/PiggyOS/manifest.py"
manifest="FROZEN_MANIFEST=/home/user/sources/MicroPythonOS/manifest.py"
fi
# Build for https://www.waveshare.com/wiki/ESP32-S3-Touch-LCD-2.
# See https://github.com/lvgl-micropython/lvgl_micropython
@@ -34,10 +34,10 @@ if [ "$target" == "esp32" ]; then
# CONFIG_FREERTOS_USE_TRACE_FACILITY=y
# CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID=y
# CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y
python3 make.py --ota --partition-size=4194304 --flash-size=16 esp32 BOARD=ESP32_GENERIC_S3 BOARD_VARIANT=SPIRAM_OCT DISPLAY=st7789 INDEV=cst816s USER_C_MODULE=/home/user/sources/micropython-camera-API/src/micropython.cmake USER_C_MODULE=/home/user/sources/PiggyOS/c_mpos/secp256k1-embedded_kdmukai/micropython.cmake USER_C_MODULE=/home/user/sources/PiggyOS/c_mpos/micropython.cmake CONFIG_FREERTOS_USE_TRACE_FACILITY=y CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID=y CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y "$manifest"
python3 make.py --ota --partition-size=4194304 --flash-size=16 esp32 BOARD=ESP32_GENERIC_S3 BOARD_VARIANT=SPIRAM_OCT DISPLAY=st7789 INDEV=cst816s USER_C_MODULE=/home/user/sources/micropython-camera-API/src/micropython.cmake USER_C_MODULE=/home/user/sources/MicroPythonOS/c_mpos/secp256k1-embedded_kdmukai/micropython.cmake USER_C_MODULE=/home/user/sources/MicroPythonOS/c_mpos/micropython.cmake CONFIG_FREERTOS_USE_TRACE_FACILITY=y CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID=y CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y "$manifest"
elif [ "$target" == "unix" -o "$target" == "macos" ]; then
if [ "$buildtype" == "prod" ]; then
manifest="FROZEN_MANIFEST=/home/user/sources/PiggyOS/manifest_unix.py"
manifest="FROZEN_MANIFEST=/home/user/sources/MicroPythonOS/manifest_unix.py"
fi
# build for desktop
python3 make.py "$target" DISPLAY=sdl_display INDEV=sdl_pointer INDEV=sdl_keyboard "$manifest"
+1
View File
@@ -1,5 +1,6 @@
fwfile="/home/user/sources/lvgl_micropython/build/lvgl_micropy_ESP32_GENERIC_S3-SPIRAM_OCT-16.bin"
ls -al $fwfile
echo "Add --erase-all if needed"
sleep 5
~/.espressif/python_env/idf5.2_py3.9_env/bin/python -m esptool --chip esp32s3 --before default_reset --after hard_reset write_flash --flash_mode dio --flash_size 16MB --flash_freq 80m $1 0x0 $fwfile
+1 -1
View File
@@ -1,3 +1,3 @@
pushd ~/sources/freezeFS
python3 -m freezefs --target /builtin --on-import mount ~/sources/PiggyOS/internal_filesystem/builtin freezefs_mount_builtin.py
python3 -m freezefs --target /builtin --on-import mount ~/sources/MicroPythonOS/internal_filesystem/builtin freezefs_mount_builtin.py
popd
+1 -1
View File
@@ -48,7 +48,7 @@ fi
~/sources/lvgl_micropython/lib/micropython/tools/mpremote/mpremote.py fs cp -r builtin :/
~/sources/lvgl_micropython/lib/micropython/tools/mpremote/mpremote.py fs cp -r lib :/
~/sources/lvgl_micropython/lib/micropython/tools/mpremote/mpremote.py fs cp -r resources :/
~/sources/lvgl_micropython/lib/micropython/tools/mpremote/mpremote.py fs cp -r data :/
#~/sources/lvgl_micropython/lib/micropython/tools/mpremote/mpremote.py fs cp -r data :/
popd