Releases: VIPnytt/Frekvens
Version 2.3.2
What's Changed
🐛 Bug Fixes
- Adapt wttr.in weather service parser to the new JSON API by @JanPetterMG in #481
📦 Dependencies
- Bump fonttools from 4.61.1 to 4.62.1 by @dependabot[bot] in #459
- Bump packaging from 25.0.0 to 26.0 by @dependabot[bot] in #460
- Bump clang from 21.1.0 to 22.1.0 by @JanPetterMG in #468
- Bump vite from 7.3.1 to 8.0.2 in /webapp by @dependabot[bot] in #455
- Bump solid-js from 1.9.11 to 1.9.12 in /webapp by @dependabot[bot] in #463
- Bump the npm_and_yarn group across 1 directory with 1 update by @dependabot[bot] in #471
- Bump cryptography from 46.0.5 to 46.0.6 by @dependabot[bot] in #473
- Bump brace-expansion from 2.0.2 to 2.0.3 in /webapp in the npm_and_yarn group across 1 directory by @dependabot[bot] in #477
- Bump nodejs-wheel from 24.14.0 to 24.14.1 by @dependabot[bot] in #480
- Bump vite from 8.0.2 to 8.0.3 in /webapp by @dependabot[bot] in #474
- Bump pillow from 12.1.1 to 12.2.0 by @dependabot[bot] in #487
🔧 Miscellaneous
- Refactor SVG icon handling by @JanPetterMG in #469
- Migrate weather services from HTTPClient to esp_http_client by @JanPetterMG in #482
- Improve version mismatch UI by @JanPetterMG in #483
- Scripts refactor with focus on logging and linting by @JanPetterMG in #484
- v2.3.2 by @JanPetterMG in #488
Full Changelog: v2.3.1...v2.3.2
Version 2.3.1
What's Changed
🐛 Bug Fixes
- Fix certificate chain resolution and restore build reliability by @JanPetterMG in #440
📦 Dependencies
- Add SCons 4.10.1 and restructure groups by @JanPetterMG in #428
- Bump vite-plugin-solid from 2.11.10 to 2.11.11 in /webapp by @dependabot[bot] in #423
- Bump @tailwindcss/vite from 4.2.1 to 4.2.2 in /webapp by @dependabot[bot] in #435
- Bump vite-plugin-singlefile from 2.3.0 to 2.3.2 in /webapp by @dependabot[bot] in #427
- Bump esp32async/ESPAsyncWebServer from 3.10.0 to 3.10.3 by @github-actions[bot] in #439
🔧 Miscellaneous
- Add rel="noopener" to Wiki link by @JanPetterMG in #426
- Improve type-linting of extra_scripts.py by @JanPetterMG in #445
- v2.3.1 by @JanPetterMG in #447
Full Changelog: v2.3.0...v2.3.1
Version 2.3.0
What's Changed
🚀 Features
- Merge small and large clock by @Solmath in #363
- Rework medium fonts for Clock mode by @Solmath in #367
- Bundle Node.js and remove external requirement by @JanPetterMG in #407
🐛 Bug Fixes
- Fix Yr weather codes "lightsleet" and "heavysnowshowers_polartwilight" by @JanPetterMG in #381
- Fix Draw mode API and load behavior by @JanPetterMG in #413
📦 Dependencies
- Bump @biomejs/biome from 2.3.13 to 2.3.14 in /webapp by @dependabot[bot] in #339
- Update pillow requirement from ~=12.1.0 to ~=12.1.1 in /extra/Python by @dependabot[bot] in #347
- Pin Python dependencies to exact versions by @JanPetterMG in #350
- Bump cryptography from 46.0.4 to 46.0.5 in /scripts by @dependabot[bot] in #357
- Bump @biomejs/biome from 2.3.14 to 2.3.15 in /webapp by @dependabot[bot] in #358
- Bump @solid-primitives/event-listener from 2.4.3 to 2.4.4 in /webapp by @dependabot[bot] in #377
- Bump @solid-primitives/websocket from 1.3.1 to 1.3.2 in /webapp by @dependabot[bot] in #378
- Bump minimatch from 5.1.6 to 5.1.8 in /webapp in the npm_and_yarn group across 1 directory by @dependabot[bot] in #379
- Bump @solid-primitives/event-listener from 2.4.4 to 2.4.5 in /webapp by @dependabot[bot] in #384
- Bump rollup from 4.48.0 to 4.59.0 in /webapp in the npm_and_yarn group across 1 directory by @dependabot[bot] in #393
- Bump python-dotenv from 1.2.1 to 1.2.2 in /scripts by @dependabot[bot] in #395
- Bump bblanchon/ArduinoJson from 7.4.2 to 7.4.3 in / by @github-actions[bot] in #397
- Bump @biomejs/biome from 2.3.15 to 2.4.0 in /webapp by @dependabot[bot] in #401
- Bump @biomejs/biome from 2.4.0 to 2.4.6 in /webapp by @dependabot[bot] in #403
- Bump ruff from 0.15.4 to 0.15.5 by @dependabot[bot] in #404
- Bump @tailwindcss/vite from 4.1.18 to 4.2.0 in /webapp by @dependabot[bot] in #408
- Bump esp32async/ESPAsyncWebServer from 3.9.6 to 3.10.0 in / by @github-actions[bot] in #402
- Bump @tailwindcss/vite from 4.2.0 to 4.2.1 in /webapp by @dependabot[bot] in #411
- Bump ruff from 0.15.5 to 0.15.6 by @dependabot[bot] in #414
🔧 Miscellaneous
- Web app reformat with shorter max line width by @JanPetterMG in #343
- Implement and enforce Clang-format + reformatting by @JanPetterMG in #344
- Clang-tidy + major mechanical refactor by @JanPetterMG in #346
- Allow Python 3.10 by @JanPetterMG in #354
- Refactor ModesService and HeapExtension to use getTaskHandle method by @Solmath in #368
- Silence Clang-tidy "reinterpret-cast" and "make-member-function-const" warnings by @JanPetterMG in #370
- Constructor refactor by @JanPetterMG in #371
- Refactored IR extension to decrease HEAP usage by @JanPetterMG in #372
- Refactored weather extensions to decrease HEAP usage by @JanPetterMG in #374
- Refactored Bitmap handler to decrease HEAP usage by @JanPetterMG in #375
- Strengthen clang-tidy coverage, and apply mechanical refactoring/cleanups by @JanPetterMG in #376
- Set Clang-format
BinPackLongBracedListto false by @JanPetterMG in #383 - Device LED pixel bitmap reformat by @JanPetterMG in #387
- Align Ruff target version with supported Python baseline by @JanPetterMG in #386
- Explicitly check ArduinoJson deserialization return value by @JanPetterMG in #398
- Switch to uv as Python package manager by @JanPetterMG in #400
- Version consistency check workflow by @JanPetterMG in #409
- Python refactoring iteration for maintainability by @JanPetterMG in #416
- Styling and best practice refactoring iteration for maintainability by @JanPetterMG in #417
- Documentation iteration by @JanPetterMG in #418
- Prepare v2.3.0 by @JanPetterMG in #419
Full Changelog: v2.2.0...v2.3.0
Version 2.2.0
What's Changed
🚀 Features
- Configure ticking in small and large clock via webapp by @Solmath in #258
- Clock refactor + Home Assistant support by @JanPetterMG in #280
- Merge Bold clock into Large clock by @JanPetterMG in #283
- Stream mode - replaces Art-Net, DDP and E1.31 by @JanPetterMG in #285
- Font and repeat options in Home Assistant by @JanPetterMG in #288
- Mode switcher + refactored Python tools by @JanPetterMG in #290
- Merge Snake and Snake clock into one mode by @JanPetterMG in #311
- Merge Game of Life and Game of Life clock into one mode by @JanPetterMG in #312
- Combine the two Ping-pong modes into one mode by @JanPetterMG in #313
🐛 Bug Fixes
- Ping-Pong: Y-axis paddle and resolution fix by @JanPetterMG in #289
📦 Dependencies
- Bump AsyncTCP from 3.4.9 to 3.4.10 by @github-actions[bot] in #266
- Bump ESPAsyncWebServer from 3.9.3 to 3.9.4 by @github-actions[bot] in #267
- Relax non-critical Python dependencies by @JanPetterMG in #268
- Bump vite from 7.2.7 to 7.3.0 in /webapp by @dependabot[bot] in #269
- Update pillow requirement from ~=11.3.0 to ~=12.1.0 in /extra/Python by @dependabot[bot] in #276
- Bump vite from 7.3.0 to 7.3.1 in /webapp by @dependabot[bot] in #275
- Bump ESPAsyncWebServer from 3.9.4 to 3.9.5 by @github-actions[bot] in #303
- Downgrade arduino-irremote/IRremote from 4.5.0+sha.251d34b to 4.5.0 by @JanPetterMG in #305
- Bump solid-js from 1.9.10 to 1.9.11 in /webapp by @dependabot[bot] in #308
- Bump @biomejs/biome from 2.3.11 to 2.3.13 in /webapp by @dependabot[bot] in #314
- Bump cryptography from 46.0.3 to 46.0.4 in /scripts by @dependabot[bot] in #322
- Bump ESPAsyncWebServer from 3.9.5 to 3.9.6 by @github-actions[bot] in #323
🔧 Miscellaneous
- Tool/add biome for typescript linting by @Solmath in #265
- Minor Scripts refactor, with focus on SCons and readability by @JanPetterMG in #271
- Remove duplicate WeMos LOLIN D32 PRO board by @JanPetterMG in #277
- Tool/add pre commit by @Solmath in #272
- Font generator, minor refactor by @JanPetterMG in #278
- SSLEOFError exception handling by @JanPetterMG in #281
- Web app code cleanup based on Biome recommendations by @JanPetterMG in #286
- Web app refactor based on Biome findings by @JanPetterMG in #287
- pre-commit config tweaks + workflow by @JanPetterMG in #293
- Disable pre-commit.ci autofix and removed YAML check by @JanPetterMG in #296
- HTML cleanup with static <title> and by @JanPetterMG in #297
- Removed f-strings and adjusted placement of the not operator by @JanPetterMG in #299
- Lint config, project wide by @JanPetterMG in #300
- VS Code workspace settings and extensions by @JanPetterMG in #298
- Automated formatting fixes by Biome and Ruff by @JanPetterMG in #301
- Add clang-format config + reformatted source code by @JanPetterMG in #304
- Refined Biome config by @JanPetterMG in #306
- Web app config cleanup + minor formatting fixes by @JanPetterMG in #307
- Remove pre-commit by @JanPetterMG in #316
- Scripts refactor to better handle 'compiledb' CLI target by @JanPetterMG in #321
- Remove build-time dependency checks + new dependabot by @JanPetterMG in #325
- Documentation-iteration by @JanPetterMG in #332
- Prepare v2.2.0 by @JanPetterMG in #336
Full Changelog: v2.1.0...v2.2.0
Version 2.1.0
What's Changed
✨ Improvements
- PlatformIO dependency update check script by @JanPetterMG in #233
- Google Weather mode by @JanPetterMG in #248
🐛 Bug Fixes
- Fix brightness range by @JanPetterMG in #228
- Refactored ping-pong modes by @JanPetterMG in #245
- Add missing Open Weather root CA + fixed tests by @JanPetterMG in #252
- Fix direction of slash in 0 of medium font by @Solmath in #253
📦 Dependencies
- Bump vite from 7.2.2 to 7.2.6 in /webapp by @dependabot[bot] in #216
- Bump fonttools from 4.60.1 to 4.61.0 in /extra/Python in the pip group across 1 directory by @dependabot[bot] in #217
- Bump matplotlib from 3.10.7 to 3.10.8 in /extra by @dependabot[bot] in #224
- Bump @tailwindcss/vite from 4.1.17 to 4.1.18 in /webapp by @dependabot[bot] in #221
- Bump tzdata from 2025.2.0 to 2025.3 in /scripts by @dependabot[bot] in #223
- Bump vite from 7.2.6 to 7.2.7 in /webapp by @dependabot[bot] in #220
- Bump fonttools from 4.61.0 to 4.61.1 in /extra by @dependabot[bot] in #226
- Remove @solid-primitives/intersection-observer by @JanPetterMG in #231
- Bump Arduino-IRremote/Arduino-IRremote from 4.5.0 to 4.5.0+sha.251d34b in / by @JanPetterMG in #234
- Bump vintlabs/fauxmoESP from 3.4.1 to 3.4.1+sha.1b8b91e in / by @JanPetterMG in #235
- Bump ESPAsyncWebServer from 3.9.2 to 3.9.3 by @github-actions[bot] in #227
- Pin esp32async/AsyncTCP v3.4.9 to prevent version drifting by @JanPetterMG in #242
- Downgrade pioarduino/platform-espressif32 from 55.03.34 to 55.03.31-2 by @JanPetterMG in #243
🔧 Miscellaneous
- CA Certificate retry logic for connection errors by @JanPetterMG in #230
- Consistent canvas opacity in the web UI by @JanPetterMG in #229
- Remove redundant
secrets.hinclude directives by @JanPetterMG in #232 - Remove the temporary
stdint.hinclude directive by @JanPetterMG in #237 - WebServer resource optimizations by @JanPetterMG in #238
- Refactor memory management to use std::vector by @JanPetterMG in #239
- Optimize MQTT subscription handling by @JanPetterMG in #240
- Refactor PIO script components for better configuration handling by @JanPetterMG in #241
- Remove ESP32 "classic"
ledcworkaround by @JanPetterMG in #244 - Refactor large clocks by @JanPetterMG in #246
- Minor build script tweaks by @JanPetterMG in #247
- Shorter startup delay and relocated secrets.h include directive by @JanPetterMG in #249
- Add support for more PIO dependency package and URL formats by @JanPetterMG in #254
- Web app clock refactoring by @JanPetterMG in #256
- Minor documentation iteration by @JanPetterMG in #260
- Prepare v2.1.0 by @JanPetterMG in #261
New Contributors
Full Changelog: v2.0.0...v2.1.0
Version 2.0.0
The 2.0 release marks a significant milestone for the Frekvens project. A substantial portion of the codebase has been refactored, modernized, and re-organized to establish a cleaner, more reliable foundation for future development. The underlying framework has been upgraded, the web application has been redesigned with improved usability and full dark-mode support, and the project now runs on the latest ESP32 generations, including the C5 and C6.
What's Changed
✨ Improvements
- Major project rewrite for version 2.0 by @JanPetterMG in #206
📦 Dependencies
- Bump vite from 7.1.12 to 7.2.2 in /webapp by @dependabot[bot] in #208
- Bump ESPAsyncWebServer from 3.9.0 to 3.9.2 by @github-actions[bot] in #209
🔧 Miscellaneous
- Fix various nitpicks by @JanPetterMG in #211
- Prepare v2.0.0 by @JanPetterMG in #213
Full Changelog: v1.3.1...v2.0.0
Version 1.3.1
What's Changed
🐛 Bug Fixes
- fix for [BUG] DbZ-Exception in FireworkMode #190 by @c64emulator in #198
📦 Dependencies
- Bump vite from 7.1.10 to 7.1.12 in /webapp in the npm_and_yarn group across 1 directory by @dependabot[bot] in #191
- Bump @tailwindcss/vite from 4.1.14 to 4.1.16 in /webapp by @dependabot[bot] in #192
- Bump vite-plugin-solid from 2.11.9 to 2.11.10 in /webapp by @dependabot[bot] in #193
- Bump espMqttClient from 1.7.1 to 1.7.2 by @github-actions[bot] in #197
- Bump solid-js from 1.9.9 to 1.9.10 in /webapp by @dependabot[bot] in #196
- Bump @tailwindcss/vite from 4.1.16 to 4.1.17 in /webapp by @dependabot[bot] in #199
- Bump python-dotenv from 1.1.1 to 1.2.1 in /tools by @dependabot[bot] in #203
- Bump ESPAsyncWebServer from 3.8.1 to 3.9.0 by @github-actions[bot] in #204
🔧 Miscellaneous
- Prepare v1.3.1 by @JanPetterMG in #205
New Contributors
- @c64emulator made their first contribution in #198
Full Changelog: v1.3.0...v1.3.1
Version 1.3.0
What's Changed
✨ Improvements
- Add support for LittleFS by @JanPetterMG in #162
- Skip building the Web App when disabled by @JanPetterMG in #166
- Add support for specifying Wi-Fi country code by @JanPetterMG in #182
🐛 Bug Fixes
- Fix typo in mode configuration logic by @JanPetterMG in #163
- Fix manual OTA upload and improve version handling by @JanPetterMG in #165
- Make FontModule::getChar purely virtual by @JanPetterMG in #174
- Fix race condition during startup by @JanPetterMG in #176
- Improve Wi-Fi connection reliability by @JanPetterMG in #183
📦 Dependencies
- Bump vite-plugin-solid from 2.11.8 to 2.11.9 in /webapp by @dependabot[bot] in #156
- Bump espMqttClient from 1.7.0 to 1.7.1 by @github-actions[bot] in #159
- Bump vite from 7.1.7 to 7.1.9 in /webapp by @dependabot[bot] in #158
- Bump @tailwindcss/vite from 4.1.13 to 4.1.14 in /webapp by @dependabot[bot] in #157
- Bump vite from 7.1.9 to 7.1.10 in /webapp by @dependabot[bot] in #185
🔧 Miscellaneous
- Network service to Connectivity by @JanPetterMG in #160
- Strip redundant logic by @JanPetterMG in #161
- Migrate from requirements.txt to pyproject.toml by @JanPetterMG in #167
- Add conditional build constants to all mode classes by @JanPetterMG in #172
- Add conditional build flags for optional fonts by @JanPetterMG in #175
- Add verbose logging for Wi-Fi and button events by @JanPetterMG in #180
- Replace IR library with better supported alternative by @JanPetterMG in #164
- Optimize MQTT behavior after deep sleep by @JanPetterMG in #181
- Various project-wide chore updates by @JanPetterMG in #184
- Documentation iteration and clarity improvements by @JanPetterMG in #186
- Prepare v1.3.0 by @JanPetterMG in #187
Full Changelog: v1.2.0...v1.3.0
Version 1.2.0
What's Changed
✨ Improvements
- Auto-collapse Wi-Fi list sidebar on mobile devices by @JanPetterMG in #111
- Add Photocell (LDR) Support by @JanPetterMG in #124
- Streamline Web UI Extension Handling by @JanPetterMG in #131
- Add Helper Text for Microphone Extension by @JanPetterMG in #133
🐛 Bug Fixes
- Switch to event-based Wi-Fi scanning by @JanPetterMG in #112
- Fix typo in Microphone extension (treshold → threshold) by @JanPetterMG in #115
- Always re-subscribe to MQTT after reboot by @JanPetterMG in #116
- Fix missing identify symbol by @JanPetterMG in #117
- Fix Circle Mode Rendering Issues by @JanPetterMG in #134
- Fix Typo in Weather Service: Open-Metro → Open-Meteo by @JanPetterMG in #141
- Fix Automatic Enabling of the RTC Extension by @JanPetterMG in #148
📦 Dependencies
- Bump @types/node from 24.3.1 to 24.3.3 in /webapp by @dependabot[bot] in #118
- Bump @types/node from 24.3.3 to 24.4.0 in /webapp by @dependabot[bot] in #137
- Bump ESPAsyncWebServer from 3.8.0 to 3.8.1 by @github-actions[bot] in #139
- Bump vite from 7.1.5 to 7.1.7 in /webapp by @dependabot[bot] in #147
- Bump @types/node from 24.4.0 to 24.5.2 in /webapp by @dependabot[bot] in #146
🔧 Miscellaneous
- Update comment block styling across project by @JanPetterMG in #121
- Rename PIN_EN to PIN_OE for clarity by @JanPetterMG in #122
- Add secrets.h template for easier configuration by @JanPetterMG in #123
- Photocell v2 – Simplified and More Autonomous Brightness Control by @JanPetterMG in #129
- Flip FONT_SMALL Conditions for Simpler Logic by @JanPetterMG in #130
- Separate RTC Configuration Options by @JanPetterMG in #132
- Add Support for Adafruit QT Py ESP32-S2 by @JanPetterMG in #135
- IR RC5/RC5X Cleanup by @JanPetterMG in #142
- Home Assistant Release-Note Refinements by @JanPetterMG in #144
- Reorganize Firmware Config and Template by @JanPetterMG in #145
- Update ESPHome Template and Documentation by @JanPetterMG in #149
- Various Minor Quality-of-Life Fixes by @JanPetterMG in #151
- Documentation and Wiki Overhaul by @JanPetterMG in #152
- Prepare v1.2.0 by @JanPetterMG in #153
Full Changelog: v1.1.1...v1.2.0
Version 1.1.1
What's Changed
🐛 Bug Fixes
- Remove incorrect packageManager entry for pnpm by @JanPetterMG in #97
- Fix Time-Zone detection on Linux by @JanPetterMG in #104
📦 Dependency Updates
- Bump @tailwindcss/vite from 4.1.12 to 4.1.13 in /webapp by @dependabot[bot] in #91
- Bump @types/node from 24.3.0 to 24.3.1 in /webapp by @dependabot[bot] in #93
- Bump vite from 7.1.3 to 7.1.4 in /webapp by @dependabot[bot] in #92
- Bump vite from 7.1.4 to 7.1.5 in /webapp in the npm_and_yarn group across 1 directory by @dependabot[bot] in #103
🔧 Miscellaneous
- Documentation iteration – ESP32 pins vs PCB labels by @JanPetterMG in #105
- New board: WeMos LOLIN S3 MINI by @JanPetterMG in #107
Full Changelog: v1.1.0...v1.1.1