Skip to content

AyresWiFiManager 2.3.1

Choose a tag to compare

@IdefixRC IdefixRC released this 28 Sep 12:30
· 33 commits to main since this release

Overview

AyresWiFiManager 2.3.1 is a patch release of the IdefixRC fork. It makes the library build on Arduino-ESP32 core 3.x (ESP-IDF v5), includes the MAC-based device naming helpers added upstream after 2.3.0, and brings the version metadata back in line with the code.

This fork tracks ayresnet/AyresWiFiManager. We offer our changes back to the original author as pull requests.

Highlights

  • Arduino-ESP32 core 3.x support: startPortal() configured the Task WDT with the ESP-IDF v4 call esp_task_wdt_init(120, true), which does not compile on core 3.x. On core 3.x the library now uses the ESP-IDF v5 config struct and reconfigures the watchdog that is already running from boot. Core 2.x keeps the original call.
  • MAC-based device naming helpers: AyresWiFiManager::getMacAddress() returns the full Station MAC (for example A4:CF:12:34:4C:25), and AyresWiFiManager::getMacSuffix() returns its last four hex characters (for example 4C25). Use the suffix to give every device a unique hostname and setup AP name.
  • Consistent version reporting: AWM_VERSION, library.json, library.properties and the README all say 2.3.1. Before this, a device reported 2.3.1 on /info while PlatformIO and the Arduino Library Manager saw 2.3.0.

Build and CI

  • Every pull request builds both examples, examples/Arduino/example.ino and examples/PlatformIO/main.cpp, on Arduino-ESP32 core 2.x and core 3.3.11.
  • New tools/check_portal_assets.py verifies that the portal pages embedded in src/AWM_html_gz.h match the sources in data/. It replaces a check that called a helper script no longer in the repository.

Documentation and Packaging

  • Both READMEs open with a note explaining that this is a fork and why it exists.
  • The Compatibility section lists Arduino-ESP32 core 2.x and 3.x.
  • Added 2.3.1 changelog entries in AyresWiFiManager.h and AyresWiFiManager.cpp.

Compatibility

  • Framework: Arduino
  • Platform: ESP32
  • Arduino-ESP32 core: 2.x and 3.x
  • Dependency: ArduinoJson ^6.21.2

Upgrade Notes

2.3.1 is a drop-in replacement for 2.3.0. The public API only gains the two MAC helpers.

This release is not published to the PlatformIO registry. To use it, point lib_deps at this repository:

lib_deps =
  https://github.com/IdefixRC/AyresWiFiManager.git#2.3.1

One behaviour difference on core 3.x: once startPortal() reconfigures the Task WDT, the idle tasks are no longer subscribed to it. On core 2.x the idle-task subscriptions stay as they were. If your application relies on the Task WDT catching a starved idle task, subscribe the idle tasks again after the portal closes.

Thank you to Daniel Salgado and AyresNet for AyresWiFiManager, and to everyone using and testing it.