diff --git a/frontend/public/firmware/micropython-esp32.bin b/frontend/public/firmware/micropython-esp32.bin index 560daf66..73bb9f22 100644 Binary files a/frontend/public/firmware/micropython-esp32.bin and b/frontend/public/firmware/micropython-esp32.bin differ diff --git a/frontend/public/firmware/micropython-esp32c3.bin b/frontend/public/firmware/micropython-esp32c3.bin index 48416963..d40a4a8d 100644 Binary files a/frontend/public/firmware/micropython-esp32c3.bin and b/frontend/public/firmware/micropython-esp32c3.bin differ diff --git a/frontend/public/firmware/micropython-esp32s3.bin b/frontend/public/firmware/micropython-esp32s3.bin index cd396f66..af054727 100644 Binary files a/frontend/public/firmware/micropython-esp32s3.bin and b/frontend/public/firmware/micropython-esp32s3.bin differ diff --git a/frontend/src/simulation/Esp32MicroPythonLoader.ts b/frontend/src/simulation/Esp32MicroPythonLoader.ts index 93f3d4f2..3674c928 100644 --- a/frontend/src/simulation/Esp32MicroPythonLoader.ts +++ b/frontend/src/simulation/Esp32MicroPythonLoader.ts @@ -17,18 +17,18 @@ interface FirmwareConfig { const FIRMWARE_MAP: Record = { esp32: { - remote: 'https://micropython.org/resources/firmware/ESP32_GENERIC-20230426-v1.20.0.bin', - cacheKey: 'micropython-esp32-v1.20.0', + remote: 'https://micropython.org/resources/firmware/ESP32_GENERIC-20260406-v1.28.0.bin', + cacheKey: 'micropython-esp32-v1.28.0', fallback: '/firmware/micropython-esp32.bin', }, 'esp32-s3': { - remote: 'https://micropython.org/resources/firmware/ESP32_GENERIC_S3-20230426-v1.20.0.bin', - cacheKey: 'micropython-esp32s3-v1.20.0', + remote: 'https://micropython.org/resources/firmware/ESP32_GENERIC_S3-20260406-v1.28.0.bin', + cacheKey: 'micropython-esp32s3-v1.28.0', fallback: '/firmware/micropython-esp32s3.bin', }, 'esp32-c3': { - remote: 'https://micropython.org/resources/firmware/ESP32_GENERIC_C3-20230426-v1.20.0.bin', - cacheKey: 'micropython-esp32c3-v1.20.0', + remote: 'https://micropython.org/resources/firmware/ESP32_GENERIC_C3-20260406-v1.28.0.bin', + cacheKey: 'micropython-esp32c3-v1.28.0', fallback: '/firmware/micropython-esp32c3.bin', }, }; diff --git a/frontend/src/store/useEditorStore.ts b/frontend/src/store/useEditorStore.ts index a5d9ec0d..c8138b0b 100644 --- a/frontend/src/store/useEditorStore.ts +++ b/frontend/src/store/useEditorStore.ts @@ -47,10 +47,10 @@ while True: time.sleep(1) `; -// NOTE: avoid Pin.toggle() — it was only added to the ESP32 port in -// MicroPython v1.21 (Oct 2023). The firmware Velxio ships is v1.20.0 -// (April 2023), so Pin.toggle() raises AttributeError there. -// See https://github.com/davidmonterocrespo24/velxio/issues/122 +// The shipped ESP32-family MicroPython is v1.28.0 (IDF 5.x drivers — the +// same generation the compile pipeline and the JS engines are validated +// against), so Pin.toggle() and friends exist now; this seed just stays on +// the lowest-common API. History: #122 (v1.20 had no Pin.toggle). const DEFAULT_ESP32_MICROPYTHON_CONTENT = `# MicroPython Blink for ESP32 from machine import Pin import time