Skip to content

v3.0.0 - Modular Architecture & Advanced Scheduling

Choose a tag to compare

@Moaaz-i Moaaz-i released this 23 Jun 03:42

What's New in v3.0.0 🎉

Welcome to the biggest upgrade of MicroTaskX yet! This release transitions the framework into a fully modular architecture, separating the core scheduling kernel from external peripheral utilities to drastically reduce memory consumption.

🚀 Core Upgrades & New Features

  • Compile-Time Templates: The scheduler is now a Template Class, allowing developers to define custom maximum task bounds (MicroTaskXKernel<MAX_TASKS>) seamlessly.
  • Runtime Task Management: Added built-in APIs to mutate tasks dynamically (pauseTask(), resumeTask(), setInterval()).
  • One-Shot Task Execution: Added addOneShotTask() to schedule non-recurring background functions safely.
  • Multi-Sensor Independence: Rewrote hardware smoothing utilities to utilize reference parameters, resolving cross-talk bugs when reading multiple analog inputs.
  • True ESP32 Low-Power Support: Upgraded the SmartSleep mechanism to activate esp_light_sleep_start() calculation-mapped to the precise delay of incoming tasks.

⚠️ Breaking Changes

  • MTX_END() must now be written as MTX_END (without parenthesis) due to preprocessor macro optimizations.
  • smoothRead and smoothReadFast now require passing a reference to a dedicated logging variable to avoid global data interference.

Full Changelog: 2.6.0...3.0.0