Skip to content

Releases: cotestatnt/esp-fs-webserver

FSWebServer 3.2.2

08 Mar 09:18

Choose a tag to compare

What's Changed

🚀 Improvements & Bug Fixes

  • Comment support for each option: Enhanced addOption with support for comments.
  • Boolean Options: Enhanced addOption for boolean values with comments and per-option grouping control.
  • Fixed setConfigSavedCallback: Corrected the trigger mechanism when saving configuration files from the web UI.
  • Fix README.md by @mhaberler in #74

Full Changelog: 3.2.1...3.2.2

FSWebServer 3.2.1

27 Feb 16:45

Choose a tag to compare

Release Notes for Version 3.2.1

This release introduces several new features, improvements, and bug fixes compared to version 3.2.0. Key highlights include enhanced support for new ESP32 variants, optimizations to the web interface, and documentation updates.

New Features

  • ESP32-P4 Support: Added initial fixes for ESP32-P4, including a new example for the Waveshare devkit. Updated randomSeed to use esp_random() for better compatibility and to prevent crashes on ESP32-P4.
  • M5Stack Tab5 Target: Added support for M5Stack Tab5 with necessary incantations for proper operation.

Improvements and Optimizations

  • CSS and JavaScript Fixes: Various fixes and improvements to styling and scripting, including logo fixes and example corrections.

Documentation Updates

  • Updated SetupAndWiFi.md with clarified captive portal descriptions and added details on IP address and mask configuration.
  • Added an image to the Websocket Echarts README for better visual reference.
  • General README updates and documentation enhancements.

Other Changes

  • Merged pull requests from contributors for ESP32-P4 fixes and random seed improvements.
  • Minor internal commits preparing for release and code maintenance.

For a complete list of all changes, view the full comparison on GitHub.

What's Changed

Full Changelog: 3.2.0...3.2.1

FSWebServer 3.2.0

12 Feb 12:13

Choose a tag to compare

v3.2.0

Config Schema v2

The config.json format has been updated to a hierarchical structure:

  • Old format (v1): flat keys at root level
  • New format (v2): structured with _version, _meta, _state, _assets, and sections

Existing v1 configurations are automatically migrated at runtime. No manual intervention required.

New structure:

{
  "_version": "2.0",
  "_meta": {
    "app_title": "Your App",
    "logo": "/config/logo.svg",
    "port": 80,
    "host": "myserver"
  },
  "_state": {},
  "_assets": {
    "css": [],
    "js": [],
    "html": []
  },
  "sections": [ /* application options */ ]
}

Improvements

  • Setup/UI: Major updates to /setup and /edit pages with refined styling and asset handling
  • WiFi Service: Enhanced connection diagnostics and STA network configuration logging
  • WebSocket: Improved random seeding on ESP32 using esp_random() for better security
  • Captive Portal: Optimized flow and better IP configuration handling

WebSocket Telemetry Dashboard example

Added new websocketEcharts example with a live real-time dashboard:

  • Displays heap memory, max block size, and WiFi RSSI
  • Built with ECharts 5 for smooth animated charts
  • Available in both examples/ and pio_examples/ directories
  • Supports multiple themes (Aurora, Sunrise, Mono)

Removals

  • highcharts example has been replaced by the new websocketEcharts example

FSWebServer 3.1.0

26 Jan 06:48

Choose a tag to compare

Security and WiFi Management Enhancements

This release introduces significant improvements to WiFi credential management, password security, and user interface, making the server more reliable and easier to use on ESP32/ESP8266 devices.

Key Improvements

WiFi Password Encryption: Passwords are now encrypted using AES-256-CBC (with hardware support on ESP32) to protect saved credentials.
Dedicated WiFiService Class: Introduction of a centralized class to handle scanning, connections, captive portal, and watchdog. Improves connection reliability and allows smarter management of multiple networks (up to 5 WiFi credentials).

Advanced Credential Management:

Support for multiple SSIDs with automatic selection based on the strongest signal.
Improved UI for managing credentials (add, edit, delete).
Ability to save WiFi credentials persistently with encryption.

Refreshed User Interface:

Unicode icons instead of SVG to reduce size.
Improvements to mobile responsiveness.
Added credential management with tabs for multiple networks (if applicable).

###Updated Documentation.
Added sections dedicated to password encryption and WiFi management in the README.
Integrated Setup Page Refactoring: Complete overhaul of app.js, creds.js, style.css, and all.htm to support new features.
Compatibility: Maintains backward compatibility with version 3.0.0, but some sketches may require minor updates to leverage new APIs.
Compatibility Notes

⚠️ This is a release with minor breaking changes for WiFi credential management. Existing sketches should continue to work, but testing reconnection and encryption is recommended.

Benefits:
✅ Increased security for WiFi credentials
✅ Better connection reliability
✅ More intuitive and mobile-friendly UI
✅ Better support for multiple networks

What's Changed

Full Changelog: 3.0.0...3.1.0

FSWebServer 3.0.0

17 Jan 10:40
83507ff

Choose a tag to compare

This major release introduces significant architectural changes to improve flexibility and reduce dependencies.
The most notable change is the removal of ArduinoJson as a required dependency, which has been replaced with a lightweight, custom JSON handling implementation based on cJSON.

Custom JSON Handler Implementation:

  • Introduced a new lightweight FSWebServer::Json class that wraps the cJSON library
  • Provides a simplified API for JSON serialization and deserialization without external heavy libraries
  • Reduced memory footprint and improved performance on resource-constrained ESP devices
  • Users no longer need to include #include <ArduinoJson.h> in their sketches

Class Organization & Restructuring

  • Reorganized core library classes for better maintainability and logical separation of concerns
  • Improved namespace organization within FSWebServer namespace
  • Enhanced code modularity to support cleaner integrations

API Updates

  • JSON operations now use the new FSWebServer::Json class instead of ArduinoJson's JsonDocument, JsonArray, and JsonObject types
  • Internal JSON handling methods have been updated throughout the library
  • WebSocket and API response generation now utilize the custom JSON implementation

Examples have been updated to demonstrate the new API.

Benefits:
✅ Reduced library dependencies and firmware size
✅ Faster compilation times
✅ Better compatibility with lean/minimal builds
✅ Improved ESP8266/ESP32 memory efficiency
✅ Simplified JSON handling for common use cases

Compatibility Notes:
⚠️ This is a breaking change - Projects using v2.0.10 might require code updates to migrate to v3.0.0.
The old ArduinoJson API is no longer supported internally, though users can still include ArduinoJson separately if needed for their own sketches.

What's Changed

Full Changelog: 2.0.10...3.0.0

esp-fs-webserver 2.0.10

20 Oct 09:52

Choose a tag to compare

  • Show DHCP IP address after connection

What's Changed

New Contributors

Full Changelog: 2.0.9...2.0.10

esp-fs-webserver 2.0.9

25 Aug 08:28

Choose a tag to compare

  • Fix Windows11 captive portal endpoints

Full Changelog: 2.0.8...2.0.9

esp-fs-webserver 2.0.8

03 Apr 10:14

Choose a tag to compare

What's Changed

  • updated header to resolve missing library header , moved variable otaDone from static to inside the class ( avoid warning) by @rommo911 in #60
  • added support to change credentials in runtime and some assertion after mem allocation bug by @rommo911 in #61
  • fixed some examples

New Contributors

Full Changelog: 2.0.7...2.0.8

esp-fs-webserver 2.0.7

13 Mar 17:12

Choose a tag to compare

esp-fs-webserver 2.0.6

13 Mar 12:50

Choose a tag to compare

  • solved websocket library conflicts if ArduinoWebSockets is installed
  • ESP32 mDNS bug fix

Full Changelog: 2.0.5...2.0.6