Skip to content

Commit

Permalink
Release v 3.6.0
Browse files Browse the repository at this point in the history
+ Factory firmware builds
  - on-demandfactory images builder CI pipeline
  - post_buildfactory.py based on Tasmota's builder will create full factory images
  - OTA images will also be collected and uploaded to artifacts
+ Microphone
  - force ADC resolution to 10 bit
  - move microphone gpio configuration to WebUI
  - block all mike operation if mike pin is undefined
+ PCNT HW accelerated Encoder
  áèáëèîòåêà ýíêîäåðà çàìåíåíà íà ESP32Encoder ñ ïîääåðæêîé àïïàðàòíîãî êâàäðàòóðíîãî äåêîäðà íà PCNT äâèæêå esp32
  îáðàáîòêà ýíêîäåðà ïîëíîñòüþ ïåðåïèñàíà è èíòåãðèðîâàííà ñ øèíîé ñîîáùåíèé â ñâÿçêå ñ "êíîïêîé"
  ïàðàìåòðû ýíêîäåðà íàñòðàèâàþòñÿ â æèâîì ðåæèìå, ïîääåðæèâàþòñÿ 1õ, 2õ, 4õ ýíêîäåðû
  ïåðåðàáîòàòà ñõåìà ïåðåêëþ÷åíèÿ ýôôåêòîâ ñ çàòóõàíèåì, ðàáîòà ôåéäåðà îòñëåæèâàåòñÿ ÷åðåç øèíó ñîáûòèé
  îïòèìèçèðîâàííà ñõåìà ïåðåêëþ÷åíèÿ ÿðêîñòè ïðè ñìåíå ýôôåêòîâ
  äîðàáîòàí ýêðàí òì äëÿ îòîáðàæåíèÿ ãðîìêîñòè çâóêà ïëååðà è íîìåðà ïåðåêëþ÷àåìîãî ýôôåêòà
  WebUI settings for Encoder
+ Implement button lock checkbox
+ Most of the lamp's configuration variables moved to NVS
  - avoid useless config rewrites
+ Tabulated LOGs
+ Widgets manager that will handle creating/destructing widgets on-demand
+ Alarm clock
    Four alarms by default are availabe
    Each alarm could one of those types
     - one time
     - daily
     - workday
     - weekend
    Melody could be set per alarm
+ Cockoo/Talking clock
   - hour/half/quater notifications
   - selectable tunes for each notification interval
   - silent hours for Talking clock
* simplify fading, rework options saving
  - fader will be engaged only when panel's brightness is > FADE_LOWBRTFRACT
  - optimize lamp's flags save/restore to avoid useless rewrites on start
* Fix effect controls
  - Fix and simplify control selections
  - Removed dublicated speedFactor variables from effects controls
  - flatten mike flag options
* workaround race conditions in TaskScheduler
* Demo mode rework
  - simplify demo switching/saving, remove old enums for lamp normal/unnormal modes, etc...
  - rework timer control
  - avoid extra config rewrites on on power on
* Effects
   - EffectPuzzles - wrong row size calculation #70
   - EffectPuzzles add locking for resize
   - add locking for EffectCube2d
   - testris clock fix am/pm letters fall
   - fix TetrisClock crash in 12h mode
   - Oscillator run in demo mode when mike is disabled
* Clock widget
   - flickerless refresh using segmented area updates
   - other fonts, 3x5 font
   - chop off leading zero on small font
* DFPlayer adapter
   - fix various problems with start/stop tracks
* Other fixes
   - LEDDisplay fix crash when starting with blank configs
   - removed that Control 7 hack for enabling/disabling mike per effect
   - remove obsolete DS18B20 code
   - fix wrong value being published for power switch
- remove "sort" from effects configuration
  • Loading branch information
vortigont committed May 13, 2024
1 parent 037c8a7 commit 40493ee
Show file tree
Hide file tree
Showing 4 changed files with 88 additions and 33 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/builder_factory.yml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ jobs:
#platformio pkg update
- name: Run PlatformIO build
run: |
platformio run -e esp32_4M -e esp32_4M_debug -e esp32S3_4M -e esp32S3_4M_debug -e esp32S3_16M -e esp32S3_16M_debug
platformio run -e esp32_4M -e esp32_16M -e esp32S3_4M -e esp32S3_16M
# platformio run -e ${{ matrix.variant }}
- name: Collect build images
run: |
Expand Down
67 changes: 67 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,72 @@
# Change Log

## 3.6.0 (2024-05-13)
+ Factory firmware builds
- on-demandfactory images builder CI pipeline
- post_buildfactory.py based on Tasmota's builder will create full factory images
- OTA images will also be collected and uploaded to artifacts
+ Microphone
- force ADC resolution to 10 bit
- move microphone gpio configuration to WebUI
- block all mike operation if mike pin is undefined
+ PCNT HW accelerated Encoder
библиотека энкодера заменена на ESP32Encoder с поддержкой аппаратного квадратурного декодра на PCNT движке esp32
обработка энкодера полностью переписана и интегрированна с шиной сообщений в связке с "кнопкой"
параметры энкодера настраиваются в живом режиме, поддерживаются 1х, 2х, 4х энкодеры
переработата схема переключения эффектов с затуханием, работа фейдера отслеживается через шину событий
оптимизированна схема переключения яркости при смене эффектов
доработан экран тм для отображения громкости звука плеера и номера переключаемого эффекта
WebUI settings for Encoder
+ Implement button lock checkbox
+ Most of the lamp's configuration variables moved to NVS
- avoid useless config rewrites
+ Tabulated LOGs
+ Widgets manager that will handle creating/destructing widgets on-demand
+ Alarm clock
Four alarms by default are availabe
Each alarm could one of those types
- one time
- daily
- workday
- weekend
Melody could be set per alarm
+ Cockoo/Talking clock
- hour/half/quater notifications
- selectable tunes for each notification interval
- silent hours for Talking clock
* simplify fading, rework options saving
- fader will be engaged only when panel's brightness is > FADE_LOWBRTFRACT
- optimize lamp's flags save/restore to avoid useless rewrites on start
* Fix effect controls
- Fix and simplify control selections
- Removed dublicated speedFactor variables from effects controls
- flatten mike flag options
* workaround race conditions in TaskScheduler
* Demo mode rework
- simplify demo switching/saving, remove old enums for lamp normal/unnormal modes, etc...
- rework timer control
- avoid extra config rewrites on on power on
* Effects
- EffectPuzzles - wrong row size calculation #70
- EffectPuzzles add locking for resize
- add locking for EffectCube2d
- testris clock fix am/pm letters fall
- fix TetrisClock crash in 12h mode
- Oscillator run in demo mode when mike is disabled
* Clock widget
- flickerless refresh using segmented area updates
- other fonts, 3x5 font
- chop off leading zero on small font
* DFPlayer adapter
- fix various problems with start/stop tracks
* Other fixes
- LEDDisplay fix crash when starting with blank configs
- removed that Control 7 hack for enabling/disabling mike per effect
- remove obsolete DS18B20 code
- fix wrong value being published for power switch
- remove "sort" from effects configuration


## 3.5.0 (2024-02-27)
+ implement run-time configuration for address leds RGB color order option for WS2812, Closes #54
+ update windows batch installer
Expand Down
38 changes: 19 additions & 19 deletions ci_envs.ini
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,9 @@ extra_scripts =
post:extra/post_buildfactory.py

; ESP32 with debug
[env:esp32_4M_debug]
[env:esp32_16M]
extends = env:esp32
board_build.partitions = extra/default_16MB.csv
extra_scripts =
post:extra/post_buildfactory.py

Expand All @@ -19,14 +20,14 @@ extra_scripts =
post:extra/post_buildfactory.py

; ESP32-S3 4MiB with debug
[env:esp32S3_4M_debug]
extends = env:esp32S3
build_flags =
${flags.build_flags}
-DEMBUI_DEBUG_LEVEL=3
-DLAMP_DEBUG_LEVEL=4
extra_scripts =
post:extra/post_buildfactory.py
;[env:esp32S3_4M_debug]
;extends = env:esp32S3
;build_flags =
; ${flags.build_flags}
; -DEMBUI_DEBUG_LEVEL=3
; -DLAMP_DEBUG_LEVEL=4
;extra_scripts =
; post:extra/post_buildfactory.py

; ESP32-S3 16MiB
[env:esp32S3_16M]
Expand All @@ -36,13 +37,12 @@ extra_scripts =
post:extra/post_buildfactory.py

; ESP32-S3 16MiB with debug
[env:esp32S3_16M_debug]
extends = env:esp32S3
board_build.partitions = extra/default_16MB.csv
build_flags =
${flags.build_flags}
-DEMBUI_DEBUG_LEVEL=3
-DLAMP_DEBUG_LEVEL=4
extra_scripts =
post:extra/post_buildfactory.py

;[env:esp32S3_16M_debug]
;extends = env:esp32S3
;board_build.partitions = extra/default_16MB.csv
;build_flags =
; ${flags.build_flags}
; -DEMBUI_DEBUG_LEVEL=3
; -DLAMP_DEBUG_LEVEL=4
;extra_scripts =
; post:extra/post_buildfactory.py
14 changes: 1 addition & 13 deletions src/main.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,20 +43,8 @@ JeeUI2 lib used under MIT License Copyright (c) 2019 Marsel Akhkamov

#include "config.h"

#ifdef ENCODER
#include "enc.h"
#endif

#ifdef RTC
#include "rtc.h"
#endif

#ifdef USE_STREAMING
#include "ledStream.h"
#endif

#define LAMPFW_VERSION_MAJOR 3
#define LAMPFW_VERSION_MINOR 5
#define LAMPFW_VERSION_MINOR 6
#define LAMPFW_VERSION_REVISION 0

#define LAMPFW_VERSION_VALUE (MAJ, MIN, REV) ((MAJ) << 16 | (MIN) << 8 | (REV))
Expand Down

0 comments on commit 40493ee

Please sign in to comment.