FW 0.12.11

FW 0.12.11 Release Notes

Spectoda Firmware v0.12.11 Release Notes

Release Date: November 2, 2025 Version: 0.12.11

🚀 Major Features

  • NetworkStorageData sync with App Controller: Adds storage synchronization between devices and app.

  • Berry API expansions:

    • spectoda.tx() / spectoda.rx() for low-level transport.

    • ble.enable(...), espnow.enable(...), full ESP-NOW configuration API, and espnow.datarate(...).

    • APDS9960 sensor API.

    • Config support for "plugins" and Controller "scripts".

  • Lighting protocols: ART-NET and sACN can now receive from multiple universes.

  • Connector compatibility: CONNECTOR_LEGACY_JS_RUNTIME option for legacy integrations.

  • allow overriding PCB/Product codes

🔧 Technical Improvements & Refactors

  • Introduced fw_platform_code; added networksnapshot_unix_timestamp, controllerstore_fingerprint.

  • Renames/cleanups: fw_compilation_timestampfw_compilation_unix_time, clock_msclockms_t, IDENTIFIER(0)IDENTIFIER_UNDEFINED.

  • Berry internals: standardized names (EVT/PLG), cleaned C/C++ handlers, unified utils helpers (e.g., utils::berry::getBytesBufferAndSize()), DMX Berry improvements.

  • Moved synchronization_t to dedicated header; improved error paths in BLE/ESP-NOW members.

  • Build/Tooling: fixed WASM and DMX builds; new options to exclude APDS9930 and Pixel Port R/W; release build configuration.

📈 Performance & Stability

  • Faster network OTA via higher data rate.

  • Longer Ethernet startup window for reliability.

  • Turned off Berry debug info and strict module for production performance.

  • Increased IO port max size from 1200 → 2048.

  • WS2805 signal timing corrected to reduce flicker/glitches.

  • FW flooding mechanism hardened.

🐛 Bug Fixes

  • Device context: fixed registerDeviceContext event-state initialization.

  • Clock writes: allowed higher-frequency FW clock updates.

  • Serial: reliable synchronization packet sending; resolved large-payload issues (multiple fixes through Nov 7).

  • Persistence: early reboot could skip writing Network Signature/Key—fixed.

  • LoadingBar animation crash fixed.

  • Protocols: no crash on ArtNet without a valid Berry VM.

  • Berry runtime: memory corruption and render stack memory leak fixed; empty mapped bytes creation crash fixed; general bug fixes in C++ and VM glue.

  • ESP-NOW: synchronization tweaks and NetworkData sync fixes.

  • Error handling: improved handling for FLAG_EVENT_HISTORY_BC_REQUEST; suppressed noisy “BLE max connection reached” log.

🧩 Compatibility & Migration Notes

  • Potentially breaking:

    • Default config segment ID changed from ID255 to ID0 (verify scripts/configs relying on defaults).

    • FLAG_EVENT_HISTORY_BC_REQUEST disabled (behavioral change for history broadcast).

  • Berry internal renames are largely non-breaking for user scripts, but update custom native plugins if they touch internals.

🧪 Build & Developer Notes

  • New build exclusions: ESPNOWRADIO, APDS9930

  • WASM build fixes applied; DMX WASM build corrected.

🔗 Full Changelog

https://github.com/Spectoda/Spectoda_Firmware/compare/v0.12.10...v0.12.11

Last updated

Was this helpful?