Skip to content

FEMS Backports 2026-07-15#3825

Merged
sfeilmeier merged 30 commits into
developfrom
feature/fems-backports
Jul 15, 2026
Merged

FEMS Backports 2026-07-15#3825
sfeilmeier merged 30 commits into
developfrom
feature/fems-backports

Conversation

@sfeilmeier

Copy link
Copy Markdown
Contributor
  • Backend

    • [Backend] Add "_sum/GridSellPrice" to allowed channels Commit
    • [Backend] Migrate Odoo HTTP Auth Commit
    • [Backend] temporarily increase odoo timeout Commit
    • [Backend] fix alerting thread deadlock Commit
    • [Backend] improve http logging Commit
  • UI

    • [UI] Controller.Io.ChannelSingleThreshold: fix history widget was not shown Commit
    • [UI] add group for channel single threshold Commit
    • [UI] NUI: adjust button size of action sheet modal chips Commit
    • [UI] Fix Reactive Power: add Widget Commit
    • [UI] AppCenter: fix rerouting with queryParams Commit
    • [UI] Heating element: new icon Commit
    • [UI] NUI: io channel single threshold Commit
    • [UI] NUI: readd history excel export Commit
    • [UI] ToU: enable show or hide for chart datasets Commit
    • [UI] Set ENGLISH as fallback language Commit
  • Edge

    • [Edge] AbstractWorker: performance fixes Commit
    • [Edge] DependencyUtil: fix potential memory leak Commit
    • [Edge] Energy Scheduler v2: improve Optimizer threads Commit
    • [Edge] AppValidateWorker: fix NPE Commit
    • [Edge] App Core Meta: fix translation Commit
    • [Edge] Tariff.Manual.EEG2025.GridSell: fix unit of fixedGridSellPrice Commit
    • [Edge] Simulator.Evse.ChargePoint: added simulator for EVSE ChargePoint Commit
    • [Edge] FENECON Home: fix wrong configuration of the RS485 interface port Commit
    • [Edge] myPV and Askoma: add links to Modbus documentation Commit
    • [Edge] REFU Battery Inverter: implement using SunSpec protocol Commit
    • [Edge] Commercial 100: add compatibility with peak shaving Commit
    • [Edge] my-PV manual schedule Commit

sfeilmeier and others added 29 commits July 14, 2026 22:48
Similar to Askoma add manual schedule for my-PV.

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Leonhard Anderle <132663596+leonhardanderle@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Alex Belke <233420507+alexbelkedev@users.noreply.github.com>
Co-committed-by: Alex Belke <233420507+alexbelkedev@users.noreply.github.com>
- improved http logging
- added separate logging service with header sanitizing
- avoided logging of sensitive data

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-committed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
- In the absence of translations in other languages, English is now used as a fallback language (concerns Czech, Dutch, Spanish, French and Japanese)
- added translation keys for "THEME" and "NEW_UI"

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: DerMuaaa <102706922+Andreas Mur@users.noreply.github.com>
Reviewed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Reviewed-by: Hanna Späth <198875998+HaSp97@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Co-committed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-authored-by: Leon Blenk <168936274+LaBlanko@users.noreply.github.com>
Reviewed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Leon Blenk <168936274+LaBlanko@users.noreply.github.com>
Co-committed-by: Leon Blenk <168936274+LaBlanko@users.noreply.github.com>
Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Sebastian Asen <47855186+sebastianasen@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Pooran Chandrashekaraiah <46567310+pooran-c@users.noreply.github.com>
Co-committed-by: Pooran Chandrashekaraiah <46567310+pooran-c@users.noreply.github.com>
"Alerting.EventHandler-0" #281 [2598180] prio=5 os_prio=0 cpu=793334600.74ms elapsed=10579609.94s tid=0x00007f3ae4002e60 nid=2598180 runnable  [0x00007f3a3a5e3000]
   java.lang.Thread.State: RUNNABLE
        at java.util.TreeMap.fixAfterDeletion(java.base@21.0.10/TreeMap.java:2733)
        at java.util.TreeMap.deleteEntry(java.base@21.0.10/TreeMap.java:2691)
        at java.util.TreeMap.remove(java.base@21.0.10/TreeMap.java:921)
        at io.openems.backend.alerting.handler.SumStateHandler.handleEdgeOnSetSumState(SumStateHandler.java:203)
        at io.openems.backend.alerting.handler.SumStateHandler$$Lambda/0x00007f3c34638000.accept(Unknown Source)
        at io.openems.backend.alerting.Alerting.lambda$execute$0(Alerting.java:125)
        at io.openems.backend.alerting.Alerting$$Lambda/0x00007f3c3428b560.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@21.0.10/ThreadPoolExecutor.java:1144)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@21.0.10/ThreadPoolExecutor.java:642)
        at java.lang.Thread.runWith(java.base@21.0.10/Thread.java:1596)
        at java.lang.Thread.run(java.base@21.0.10/Thread.java:1583)

Reviewed-by: Kai Jeschek <99220919+da-Kai@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-committed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
- Make legend clickable in https://.../device/.../live/common/storage/controller/time-of-use/ctrlEssTimeOfUseTariff0

Reviewed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-committed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Add links for Modbus documentation for Askoma and myPV in README.

Reviewed-by: Sebastian Asen <47855186+sebastianasen@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Alex Belke <233420507+alexbelkedev@users.noreply.github.com>
Co-committed-by: Alex Belke <233420507+alexbelkedev@users.noreply.github.com>
Reviewed-by: Hanna Späth <198875998+HaSp97@users.noreply.github.com>
Reviewed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-committed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Reviewed-by: Hanna Späth <198875998+HaSp97@users.noreply.github.com>
Reviewed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Co-committed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Co-authored-by: Leon Blenk <168936274+LaBlanko@users.noreply.github.com>
Reviewed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Leon Blenk <168936274+LaBlanko@users.noreply.github.com>
Co-committed-by: Leon Blenk <168936274+LaBlanko@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-committed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
- Der Heizstab hat jetzt ein neues Icon
- added new icon for heating element
- image-line can now also render svgs with custom colors (e.g. light- / darkmode)

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: DerMuaaa <102706922+Andreas Mur@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Reviewed-by: Hanna Späth <198875998+HaSp97@users.noreply.github.com>
Reviewed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-authored-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Co-committed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
- Fix rerouting for appcenter routes with queryParams
- Adding back buttons for all views in NUI that dont have a active node
- fixing oauth rerouting

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Reviewed-by: Hanna Späth <198875998+HaSp97@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-committed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Reviewed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Fabian Brandtner <10850256+fabian94533@users.noreply.github.com>
Co-committed-by: Fabian Brandtner <10850256+fabian94533@users.noreply.github.com>
- use generic http authentication service
- separated odoo login request from other requests
- add tests

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-committed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Johann Kaufmann <165755282+johannk24@users.noreply.github.com>
Reviewed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
Co-committed-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
- fix eeg2025 unit for gridSell not being save in Euro/MWh but in Cent/kWh, normal conversion factor is: 10 from Cent/kWh to Euro/MWh
- before:  Cent/kWh to Euro/MWh (channel unit) was not converted

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Leonhard Anderle <132663596+leonhardanderle@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-committed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
- Optimierungen und Verbesserungen an der mobilen Navigation
- Optimizations and improvements of the mobile navigation

- adjust button size of chips in action sheet modal -> increase width and height from 2.1em to 3.1em (which is default button size, which is not applied the same on all operating systems, thats why `<ion-button>` cant be set to button size default)
- restructured common nodes (weather, storage, production, consumption, grid) into a seperate line above the rest of the nodes (next to breadcrumbs)

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Reviewed-by: Hanna Späth <198875998+HaSp97@users.noreply.github.com>
Reviewed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-committed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
- Im neuen UI werden die Reiter für die Schwellwertsteuerung nun gruppiert
- added grouped view for Controller.IO.ChannelSingleThreshold

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: DerMuaaa <102706922+Andreas Mur@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Co-committed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
- Im neuen UI werden die Reiter für die Schwellwertsteuerung nun gruppiert

- added grouped view for Controller.IO.ChannelSingleThreshold

---------

Co-authored-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: DerMuaaa <102706922+Andreas Mur@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Co-committed-by: Andreas Mur <102706922+DerMuaaa@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-committed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Reviewed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-authored-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-committed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
- fixed NPE during validation
- added Cancellation token to cancel the current validation and start with a new validation on triggerNextRun
- increase default cycle time to 2h
- increase initial cycle time to 15min and 3 cycles

```
Jul 13 15:17:37 fems666 java[598]: 2026-07-13T15:17:37,590 [teWorker] ERROR [s.common.worker.AbstractWorker] Worker error. NullPointerException: Cannot invoke "io.openems.edge.core.appmanager.AppConfiguration.tasks()" because "configuration" is null
Jul 13 15:17:37 fems666 java[598]: java.lang.NullPointerException: Cannot invoke "io.openems.edge.core.appmanager.AppConfiguration.tasks()" because "configuration" is null
Jul 13 15:17:37 fems666 java[598]:         at io.openems.edge.core.appmanager.dependency.AppConfigValidator.validate(AppConfigValidator.java:62)
Jul 13 15:17:37 fems666 java[598]:         at io.openems.edge.core.appmanager.AppValidateWorker.validateApps(AppValidateWorker.java:166)
Jul 13 15:17:37 fems666 java[598]:         at io.openems.edge.core.appmanager.AppValidateWorker.forever(AppValidateWorker.java:90)
Jul 13 15:17:37 fems666 java[598]:         at io.openems.common.worker.AbstractWorker$1.run(AbstractWorker.java:155)
```

Reviewed-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Co-committed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
… shown

- fix track expression error in history template
- history channelthresholdwidget not shown

Reviewed-by: Sebastian Asen <47855186+sebastianasen@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
Co-committed-by: Lukas Rieger <73471197+lukasrgr@users.noreply.github.com>
- Make sure that we start the exact amount of jenetics threads that we want
- Added thread names and thread group for optimizer
- Added shutting down of jenetics execution pool
- Run jenetics with low priority

Reviewed-by: Leonhard Anderle <132663596+leonhardanderle@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
Co-committed-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
- Fixed a potential memory leak in DependencyUtil::THREAD_2_INSTANCE

Reviewed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
Co-committed-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
- AbstractWorker: Fixed Thread.sleep() delay if an error occurrs at execution and decrease exception sleep slowly

Reviewed-by: Michael Grill <59126309+michaelgrill@users.noreply.github.com>
Reviewed-by: Stefan Feilmeier <3515268+sfeilmeier@users.noreply.github.com>
Co-authored-by: Franz Reiter <1498918+Howaner@users.noreply.github.com>
@sfeilmeier
sfeilmeier marked this pull request as ready for review July 14, 2026 21:42
@codecov

codecov Bot commented Jul 14, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 51.36307% with 785 lines in your changes missing coverage. Please review.

❌ Your patch check has failed because the patch coverage (51.37%) is below the target coverage (75.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #3825      +/-   ##
=============================================
+ Coverage      60.52%   60.63%   +0.12%     
  Complexity       105      105              
=============================================
  Files           3456     3482      +26     
  Lines         151072   152033     +961     
  Branches       11528    11616      +88     
=============================================
+ Hits           91423    92176     +753     
- Misses         56210    56384     +174     
- Partials        3439     3473      +34     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@sfeilmeier sfeilmeier changed the title FEMS Backports 2026-07-14 FEMS Backports 2026-07-15 Jul 15, 2026
@sfeilmeier
sfeilmeier merged commit 4748417 into develop Jul 15, 2026
6 of 7 checks passed
@sfeilmeier
sfeilmeier deleted the feature/fems-backports branch July 15, 2026 07:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant