Skip to content

Releases: OpenEMS/openems

2024.5.0

02 May 11:37
Compare
Choose a tag to compare

Release Highlights

  • New implementations
  • UI: optional strict mode for improved code quality in #2623
  • WebSocket: improved communication performance by @miettal in #2616

Details

Common/General

OpenEMS Backend

  • FEMS Backports 2023-04 in #2623
    • Add API for Simulation-Engine Component
      • In future this should be used for scenario simulations, like what would have been the benefit of using an additional battery module

OpenEMS Edge

  • MQTT API Controller: add optional config parameter to specify a topic prefix by @samuelBloch in #2553
  • SunSpec: Channel values synchronized by @tsicking in #2609
  • Implement new Shelly Plus Plug S by @Sn0w3y in #2529
  • Updates Microcare / Eastron and Implements Meter SDM120 by @Sn0w3y in #2554
  • FEMS Backports 2023-04 in #2623
    • Modbus-Bridge:

      • Improve SunSpec handling for SMA PV-Inverter: certain versions do not provide END_OF_MAP but throw ILLEGAL_ADDRESS_EXCEPTION instead, causing the previous SunSpec implementation to get stuck while parsing
      • Remove unnecessary throws OpenemsException and try...catch in certain places (defineModbusProtocol(), new ModbusProtocol(), addTask(),...)
      • Optionally provide ExecuteState of an entire ModbusTask; this allows for more fine-grained evaluation of read errors
    • Switch to updated readElementOnce and/or improve brevity of CompletableFuture by using thenCompose instead of thenAccept in...

    • RRD4j: correctly postprocess queried data

      • fix querying data with different resolution than 5 Minutes
    • Time-of-Use: split Optimizer and Controller

      • Introduce new Bundles for Energy and Energy API
      • Time-of-Use-Controller and EnergyScheduler are still tightly coupled for now, as this is an ongoing refactoring. Eventually they should only communicate via EnergySchedulable
      • Move Optimizer (i.e. all Jenetics related code) to Energy
      • New Channel _sum/GridBuyPrice
      • UI: show data in [kW] and cleanup code
      • Tibber: Homes-Filter could not be unset
    • KACO Blueplanet Gridsave BatteryInverter: state-machine improvement

      • Update Kaco Blueplanet Gridsave state-machine
      • Add grid disconnection failure state channel
      • Replace MAX_START_ATTEMPTS with MAX_START_TIMEOUT
    • GoodWe

      • Optionally show values per MPPT; not per String
        • GoodWeChargerTwoStringImpl was used to represent one string from a GoodWe MPPT tracker that is responsible for two strings (GoodWe ET-Systems).
        • Possible values given by GoodWe are: MPPT Current, MPPT Power, String Current, String Voltage
        • As the current values of one string are incorrect (so far DSP-Version 12, ARM-Version 27) the power cannot be calculated as expected.
        • A new Component GoodWeChargerMpptTwoStringImpl is mirroring the GoodWe values to get the important values from: MPPT Current, MPPT Power, String Voltage (One of the two strings)
      • Update BMS Registers ChargeMaxVoltage & DischargeMinVoltage
        • Set ChargeMaxVoltage & DischargeMinVoltage
        • Handle inverter specific behaviour on empty/full battery

OpenEMS UI

  • Center Text in Footer by @Sn0w3y in #2594
  • FEMS Backports 2023-04 in #2623
    • Add optional strict mode
    • Update to Angular Version 16.
    • Revert calculating stepSize for charts
      • Removing stepSize calculation due to chartjs breaking style in some circumstances
      • keeping max ticks limit at 6
    • Change resolution from 20 to 15 minutes
    • Remove dead link from ChpSoc (BHKW) Widget in history
    • Settings|Channels: fix Persistence Priority warning
      • Warning for persistencePriority lower than backends global priority, was also shown for equals
    • Hide FooterComponent for history Children due to overlapping on different heights
    • Footer: fix esLint autofix mistake; hide for history detail views
    • Revert adding detail navigation to production history (this is a planned feature that was accidentially merged)
    • Fix Page count of edges pagination on initial search

Version Upgrades

  • Bump com.squareup.retrofit2:retrofit from 2.10.0 to 2.11.0 in /cnf by @dependabot in #2606
  • Bump org.dhatim:fastexcel from 0.17.0 to 0.18.0 in /cnf by @dependabot in #2620
  • Bump org.apache.felix:org.apache.felix.webconsole from 5.0.0 to 5.0.2 in /cnf by @dependabot in #2619

Full Changelog: 2024.4.0...2024.5.0

2024.4.0

31 Mar 16:09
Compare
Choose a tag to compare

Release Highlights

Details

Common/General

OpenEMS Backend

OpenEMS Edge

  • Janitza UMG 511: fix inverted active power by @tsicking in #2587
  • FEMS Backports 2023-03 by @sfeilmeier, @venu-sagar, @lukasrgr, @michaelgrill, @da-Kai, @huseyinsaht, @hydroid7, @sebastianasen, @AnasShetla, @mlang97 in #2593
    • Improvements to ESS Time-of-Use-Tariff-Controller
      • Optionally show Grid-Buy in UI forecast and history chart (in a third y-axis)
        • Improve calculation of charge power in CHARGE_GRID mode
        • More and smarter Genotypes in initialPopulation
        • Improved error handling
        • New EnergyFlow calculation + fix previsou calculation bugs
        • Be default always apply §14a EnWG limit of 4.2 kW (configurable)
    • Tibber: implement handling for rate limit (HTTP code 429), differentiate warnings based on HTTP status codes
    • AppCenter Tibber: Access Token will be displayed as "xxx" if set, hide "homes" filter and improve description
    • AppCenter: add fixStateOfCharge App
    • AppCenter: Add definition to set min Role to delete an App & validation
    • AppCenter: Add popover to notify about unused keys
    • FENECON Home Battery: improve calculation for number of towers
    • Edge/UI: add persistencePriority to EdgeConfig + warning in /channels
    • Improve Controller ESS Cycle: fix Standby Time
    • GoodWe: Disable ShadowManagement
    • HeatingElement: Changed Persistence Priority for LEVEL to HIGH

OpenEMS UI

  • Install/Update Component filter to lower case by @DerStoecki in #2531
  • Update user.component.html to handle "null" cases by @Sn0w3y in #2527
  • modal-line element INPUT with optional unit by @JosefRick in #2489
  • Add japanese language support by @miettal in #2538
  • Fix Translations by @Sn0w3y in #2595
  • add eslint:recommended and plugin:@typescript-eslint/recommended by @miettal in #2577
  • FEMS Backports 2023-03 by @sfeilmeier, @venu-sagar, @lukasrgr, @michaelgrill, @da-Kai, @huseyinsaht, @hydroid7, @sebastianasen, @AnasShetla, @mlang97 in #2593
    • Improvements to ESS Time-of-Use-Tariff-Controller
      • Optionally show Grid-Buy in UI forecast and history chart (in a third y-axis)
    • Change chartjs resolution for mobile view
    • Implement system reboot in new maintenance view (/system)
    • Edge/UI: add persistencePriority to EdgeConfig + warning in /channels
    • Extend unittest for pickdatepopover
    • EVCS: fix possible NPE
    • Add footer for EMS-Nr., installed version and comment
    • add edgeShortName to browser title

Version Upgrades

  • Bump org.apache.felix:org.apache.felix.http.jetty from 5.1.8 to 5.1.10 in /cnf by @dependabot in #2564
  • Bump org.jetbrains.kotlin:kotlin-osgi-bundle from 1.9.22 to 1.9.23 in /cnf by @dependabot in #2574
  • Bump com.ghgande:j2mod from 3.2.0 to 3.2.1 in /cnf by @dependabot in #2575
  • Bump com.squareup.okio:okio-jvm from 3.8.0 to 3.9.0 in /cnf by @dependabot in #2585
  • Bump de.bytefish:pgbulkinsert from 8.1.2 to 8.1.3 in /cnf by @dependabot in #2582
  • Bump com.google.guava:guava from 33.0.0-jre to 33.1.0-jre in /cnf by @dependabot in #2579
  • Bump org.postgresql:postgresql from 42.7.2 to 42.7.3 in /cnf by @dependabot in #2580
  • Bump d3 from 7.8.5 to 7.9.0 in /ui by @dependabot in #2586

Full Changelog: 2024.3.0...2024.4.0

2024.3.0

03 Mar 16:42
Compare
Choose a tag to compare

Release Highlights

  • New implementations:
    • Shelly 3EM by @Sn0w3y in #2519
    • Spelsberg SMART PRO charging station by @REdelhoff in #2402
    • Generic LinuxFs GPIO (for Modberry) by @hydroid7 in #2560
    • SumState-Alerting by @da-Kai in #2260: Be aware that this is a breaking change in UI, Backend and Odoo implementation for Alerting. Previously Alerting only worked for offline devices. This new features adds alerting also in error state.

Details

Common/General

OpenEMS Backend

OpenEMS Edge

  • Time-of-Use improvements by @sfeilmeier in #2547 and #2559
  • HTTP-Bridge add support for time based subscribes by @michaelgrill in #2539
  • FEMS Backports 2024.3.0 in #2560
    • GoodWe Grid-Meter: add support for "Commercial Meter
    • Sum: improvements to max-ever-values
      • Calculate min/max ever ESS discharge power (will eventually replace MaxApparentPower in UI Live)
        • add EssMinDischargePower and EssMaxDischargePower channels to _sum
        • calculate _sum/EssDischargePower also from non-hybrid ESS
      • improve parsing of _sum config: parse String values to int
      • Prediction: fix possible NoSuchElementException if all predictions are empty
    • AppCenter: App for EZA-Regler
    • Implement generic LinuxFs GPIO (for Modberry)
    • AppCenter: Home 20 & 30 added modbus for external meters
    • AppCenter: ToU only compatibility with Home 10, 20 or 30 (this shows compatibility restrictions in AppCenter; for proprietary distributions of OpenEMS change this accordingly)
    • Implement system SOFT/HARD restart (Edge JsonRPC)
      • Add JSON-RPC handler for system restart (ExecuteSystemRestart)
        • HARD: reboot system
        • SOFT: restart OpenEMS service
      • Extract handling of system commands to common SystemRecord record
    • AppCenter: fix AlpitronicEvcs wrong scheduler factory id
    • GoodWe 20 & 30: handle Voltage & Current for DSP version
    • AppCenter: refactor pvInverter apps to use "new" props
      • Refactored PV-Inverter Apps to use "new" Props
      • Added selection of Phase to SolarEdge App
      • Changed description text of tibber token
    • RRD4j/Backend-Api: avoid exception during deactivate
      • Fix bug in ControllerApiBackend or TimedataRrd4jImpl which required a restart.

OpenEMS UI

  • Implementation of SumState-Alerting by @da-Kai in #2260
  • UI: fixed some translations by @Sn0w3y in #2546
  • FEMS Backports 2024.3.0 in #2560
    • UI: change "Installateurszugang anlegen" to "Account anlegen"
    • UI: Refactoring of translations
    • UI: chartjs-migration
    • UI: Fix Time-of-use bugs

Version Upgrades

  • Bump com.influxdb:influxdb-client-core from 6.12.0 to 7.0.0 in /cnf by @dependabot in #2521
  • Bump com.squareup.okio:okio-jvm from 3.7.0 to 3.8.0 in /cnf by @dependabot in #2536
  • Bump org.dhatim:fastexcel from 0.16.6 to 0.17.0 in /cnf by @dependabot in #2535
  • Bump ip from 2.0.0 to 2.0.1 in /ui by @dependabot in #2551
  • Bump org.postgresql:postgresql from 42.7.1 to 42.7.2 in /cnf by @dependabot in #2552
  • Bump eslint-plugin-unused-imports from 3.0.0 to 3.1.0 in /ui by @dependabot in #2549
  • Bump org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm from 1.7.3 to 1.8.0 in /cnf by @dependabot in #2548

New Contributors

Full Changelog: 2024.2.0...2024.3.0

2024.2.0

01 Feb 16:51
Compare
Choose a tag to compare

Release Highlights

Details

Common/General

  • Docs: minor corrections to the edge component implementation guide by @samuelBloch in #2493

OpenEMS Backend

OpenEMS Edge

  • Refactor Shelly Plug S to HTTP-bridge in #2381
  • Added TLS support for MQTT connections. by @samuelBloch in #2459
  • Meter B Control: improvements by @tsicking in #2494
  • KACO Battery Inverter: quicker control behaviour by @pooran-c in #2509
  • Max-Ever-Value: update config only once every 24 hours by @sfeilmeier in #2509
  • EmergencyController & TimeslotPeakshaving: Set PersistencePriority @michaelgrill in #2509
  • Time-of-Use-Tariff Controller in #2509
    ** Calculate essMaxChargePower from usable Capacity
    ** Reset efficiency factor to 1.2
    ** Set state machine to BALANCING in OFF mode (fixes historic view in OFF mode)
    ** Zone selection for Awattar Austria (see #2469)

OpenEMS UI

  • Handle en-US language for US browsers by @ebram-tw in #2483
  • Fix: add no-trailing-spaces:error setting to eslintrc by @miettal in #2488
  • Add TOTAL to history periods in #2509
  • Time-of-Use-Tariff: refactor widgets in #2509
  • Adjust Ion-Fab button in modal in #2509
  • Fix EVCS status not being updated in #2509
  • Show Company-Name in UserInformation in #2509

Version Upgrades

  • Update j2mod dependency to 3.2.0 by @dependabot in #2364
    -> this still causes some RS485 bus errors on certain elder devices. Use with caution
  • Bump org.jsoup:jsoup from 1.17.1 to 1.17.2 in /cnf by @dependabot in #2478
  • Bump org.apache.felix:org.apache.felix.webconsole from 4.9.6 to 5.0.0 in /cnf by @dependabot in #2482
  • Bump org.apache.felix:org.apache.felix.scr from 2.2.6 to 2.2.10 in /cnf by @dependabot in #2491
  • Bump org.apache.felix:org.apache.felix.http.jetty from 5.1.6 to 5.1.8 in /cnf by @dependabot in #2502
  • Bump fr.turri:aXMLRPC from 1.13.0 to 1.14.0 in /cnf by @dependabot in #2501
  • Bump org.dhatim:fastexcel from 0.16.5 to 0.16.6 in /cnf by @dependabot in #2500

New Contributors

Full Changelog: 2024.1.0...2024.2.0

2024.1.0

01 Jan 22:48
Compare
Choose a tag to compare

Release Highlights

  • OEM Bundle

    • This significantly improves the workflow for the development of OpenEMS OEM distributions. Configure App-Center website URLs, secret tokens, etc. on one central place.
    • Details: #2428 and #2477
  • Time-of-Use Controller for Energy Storage System

    • Further improvements to the charge-from-grid logic, visualization, stability of price providers, etc.
    • Details: #2475 and #2477

Details

Common/General

  • Docs: reproduce single_document.adoc from nav.adoc and sed script by @miettal in #2468

OpenEMS Backend

  • Metadata: Refactored Name of AlertingSetting to UserAlertingSettings by @DerStoecki in #2414
  • FEMS Backports by @sfeilmeier in #2477
    • User: adding JsonObject for UI "settings"
    • Use static import for Dummy-Users

OpenEMS Edge

  • Core.Sum: persist maximum ever values by @sfeilmeier in #2476

    • This fixes the problem that the maximum values in the Energy-Monitor in UI would always start from zero on restart
  • FEMS Backports by @sfeilmeier in #2477

    • GoodWe Grid-Meter: if HAS_NO_METER is set, set values to 'null'
    • GoodWe BatteryInverter: write certain Channels only on activate/modified
    • Modbus Bridge TasksSupplier: avoid ConcurrentModificationException
    • StateChannels: always set initial value to false
    • ESS Power: handle other possible Exceptions
    • Debug-Log Controller: avoid Exception on non-existing Channel

OpenEMS UI

  • Specify eslint as vscode workspace default formatter by @miettal in #2470
  • FEMS Backports by @sfeilmeier in #2477
    • Refactor channelthreshold history; use factory instead of nature
    • User: adding JsonObject for UI "settings"; this will be used in future to store user specific settings like UI Dark-Mode
    • Add notifcation component

Version Upgrades

  • Upgrade gradle version 8.4 to 8.5 by @miettal in #2471
  • Bump com.influxdb:influxdb-client-java from 6.10.0 to 6.11.0 in /cnf by @dependabot in #2451
  • Bump org.postgresql:postgresql from 42.7.0 to 42.7.1 in /cnf by @dependabot in #2453
  • Bump org.apache.felix:org.apache.felix.http.jetty from 5.1.4 to 5.1.6 in /cnf by @dependabot in #2452
  • Bump net.java.dev.jna:jna from 5.13.0 to 5.14.0 in /cnf by @dependabot in #2454
  • Bump commons-io:commons-io from 2.15.0 to 2.15.1 in /cnf by @dependabot in #2449
  • Bump com.influxdb:influxdb-client-java from 6.11.0 to 6.12.0 in /cnf by @dependabot in #2465
  • Bump com.squareup.okio:okio-jvm from 3.6.0 to 3.7.0 in /cnf by @dependabot in #2464
  • Bump com.google.guava:guava from 32.1.3-jre to 33.0.0-jre in /cnf by @dependabot in #2460
  • Bump org.jetbrains.kotlin:kotlin-osgi-bundle from 1.9.21 to 1.9.22 in /cnf by @dependabot in #2473
  • Bump org.dhatim:fastexcel from 0.16.4 to 0.16.5 in /cnf by @dependabot in #2474

Full Changelog: 2023.12.0...2024.1.0

2023.12.0

04 Dec 17:49
Compare
Choose a tag to compare

Release Highlights

Details

Common/General

OpenEMS Backend

  • Odoo
    • MetadataOdoo: Added hashcode to domain and changed equals method a bit, added Test for Domain by @DerStoecki in #2412
    • MetadataOdoo: OdooUtils enhancement -> getRawValue and isUnset method by @DerStoecki in #2410
    • remove addChatterMessage from OdooUtils and OdooHandler by @da-Kai in #2427
  • UI-Websocket: get user.globalRole instead of default guest role on AlertingConfigs by @DerStoecki in #2409
  • Add single debug cycle for edge/ui websockets by @michaelgrill in #2440
  • Alerting: Adapted Comments by @DerStoecki in #2413
  • Improve Alerting tests using Clock by @da-Kai in #2432

OpenEMS Edge

  • JUnit Test Framework: unify Dummy components by @sfeilmeier in #2421, #2422
  • SMA PV-Inverter: use 70x models (since 2023) by @tsicking in #2339
  • Influx db/get latest value. Fixes CalculateEnergyFromPower with InfluxDB by @DerWahreKlinki in #2423
  • FEMS Backports #2435, #2446
    • Sum ESS State-of-Charge: unify calculation
    • Update FENECON Home 20 & 30 Charger config
    • Emergency Capacity Reserve Controller: fix handling of negative AC production
    • GoodWe EmergencyMeter: Fix scale factor for current and voltage
    • GoodWe 20: fix Grid Meter voltage and current
    • EVCS: Improve "Chargingstation Communication Failed" message
    • Home Battery: set SerialNumber prefix depending on the hardware type; modify PolyLine for 64Ah battery
    • GoodWe: set GoodWeType from type register or serial number
    • Time-of-Use ESS Controller: implement Optimizer based on Jenetics
    • AppCenter: load app images from external file server, removed app images from edge, automatically add UnmanagedConsumption Channel to prediction, fixed "no" check validation before installation , fix not automatically installing missing dependencies, Integrated systems, Home 20/30 available relays, Home NoFeedInLimitation & correct RCR config
    • GoodWe Battery-Inverter: improve property descriptions
    • Check Battery Combination only if the battery is started
    • GoodWe: implement RippleControlReceiver; update config descriptions
    • TypeUtils: update coding style + handle NaN/Infinite
    • Quick fix for Simulated EVCS

OpenEMS UI

  • Export Environment Interface - Forget_Password is missing by @DerStoecki in #2393
  • Insert EOF newline and add eslint rule by @miettal in #2431
  • Use tailing comma to always-multiline by @miettal in #2430
  • EVCS-Controller -> automatic mode -> uses sunny-icon again by @DerStoecki in #2420
  • EVCS-Controller: Uncaught (in promise): TypeError: this.controller is undefined by @DerStoecki in #2426
  • Convert new line code CRLF -> LF in ui/ files. by @miettal in #2429
  • Refactor consumption history by @lukasrgr in #2218
  • FEMS Backports #2435
    • Display message for planned capacity extension for all roles
    • Time of Use tariff Chart: show forecasted schedule in Live Widget
    • Extending Systemexecute
    • Refactor channelthreshold history
    • Fix format number not using configuration

Version Upgrades

  • Bump org.jetbrains.kotlin:kotlin-osgi-bundle from 1.9.10 to 1.9.20 in /cnf by @dependabot in #2416
  • Bump org.apache.felix:org.apache.felix.http.jetty from 5.1.2 to 5.1.4 in /cnf by @dependabot in #2425
  • Bump com.zaxxer:HikariCP from 5.0.1 to 5.1.0 in /cnf by @dependabot in #2424
  • Bump org.postgresql:postgresql from 42.6.0 to 42.7.0 in /cnf by @dependabot in #2438
  • Bump org.dhatim:fastexcel from 0.15.7 to 0.16.3 in /cnf by @dependabot in #2437
  • Bump org.dhatim:fastexcel from 0.16.3 to 0.16.4 in /cnf by @dependabot in #2442
  • Bump org.jsoup:jsoup from 1.16.2 to 1.17.1 in /cnf by @dependabot in #2444
  • Bump org.jetbrains.kotlin:kotlin-osgi-bundle from 1.9.20 to 1.9.21 in /cnf by @dependabot in #2443

New Contributors

Full Changelog: 2023.11.0...2023.12.0

2023.11.0

01 Nov 16:38
Compare
Choose a tag to compare

Release Highlights

Details

Common/General

OpenEMS Backend

  • Backport FEMS Backend by @sfeilmeier in #2419
    ** Fix compatibility with and require Odoo 16 (separate Odoo module will be updated independently)
    ** Fix possible NPEs
    ** Fix starting of Websocket servers (avoid event race conditions)
    ** Add COMPONENT_IDs to backend components
    ** Fix Websocket handshake case-insensitive
    ** Improve general performance
    ** Avoid excessive logs
    ** Add GenericSystemLog to Metadata: record system execute and update
    ** Improve InfluxDB Aggregated data handling
    ** Allow multiple InfluxDB servers for different periods (defined by start-/enddate)
    ** InfluxDB: only allow Channel-Addresses in standardized format
    ** Update Gitpod to Odoo v16 for https://github.com/OpenEMS/odoo-openems/tree/16.0

OpenEMS Edge

  • Bugfix in SinglePhaseMeter.calculateSinglePhaseFromActivePower by @tsicking in #2386
  • SunSpec: improvements by @tsicking in #2337
  • FEMS Backports by @sfeilmeier in #2394
    ** Introduce _sum/UnmanagedConsumptionActivePower
    ** PhoenixContact Meter: add invert option
    ** SunSpec: dynamic scale-factors
    ** AppCenter: add required property to AppDef
    ** ESS Cluster: Calculate effective start stop
    ** Alpitronic Hypercharger: fix energy null vs 0
    ** Implement F&F Filipowski MR-AO-1 + Analog Output Controller
    ** ControllerEssGridOptimizedCharge, IoShelly25, IoShellyPlug: set persistence priority to high for some channels…
    ** AppCenter: FixActivePower App
    ** Bugfix for ENTSO-E
    ** Add Webasto Apps
  • FEMS Backport by @sfeilmeier in #2419
    ** KACO PV-Inverter: calculate production energy manually
    ** GoodWe 20/30 Chargers: avoid multiple HIGH Priority mobus tasks
    ** Websocket Api Controller: cleanup getEdgeRequest & JUnit tests
    ** AppCenter: add check for peakshaving to not be compatible with home
    ** AppCenter: separated AppConfiguration into tasks

OpenEMS UI

  • Docs: add implementing a modal by @lukasrgr in #2389
  • FEMS Backports by @sfeilmeier in #2394
    ** Stringify values of formly field type text
    ** Restrict Queries before IBN-Date
  • Fixing Infinity sign shown in charts & the wrong date formating of IBN by @AnasShetla in #2372
  • Refactor GridHistory like ProductionHistory by @lukasrgr in #2191
  • FEMS Backport by @sfeilmeier in #2419
    ** Utils, tests and translations
    ** Fix chart wrong scaling when firstSetupProtocol is too close to...

Version Upgrades

  • Bump com.squareup.okio:okio-jvm from 3.5.0 to 3.6.0 in /cnf by @dependabot in #2380
  • Bump org.apache.felix:org.apache.felix.http.jetty from 5.1.0 to 5.1.2 in /cnf by @dependabot in #2379
  • Bump org.apache.felix:org.apache.felix.http.servlet-api from 2.1.0 to 3.0.0 in /cnf by @dependabot in #2378
  • Bump io.reactivex.rxjava3:rxjava from 3.1.7 to 3.1.8 in /cnf by @dependabot in #2377
  • Bump org.checkerframework:checker-qual from 3.38.0 to 3.39.0 in /cnf by @dependabot in #2376
  • Bump commons-io:commons-io from 2.13.0 to 2.14.0 in /cnf by @dependabot in #2375
  • Bump org.apache.felix:org.apache.felix.webconsole from 4.9.4 to 4.9.6 in /cnf by @dependabot in #2383
  • Bump de.bytefish:pgbulkinsert from 8.1.1 to 8.1.2 in /cnf by @dependabot in #2382
  • Bump com.google.guava:guava from 32.1.2-jre to 32.1.3-jre in /cnf by @dependabot in #2390
  • Bump com.squareup.okhttp3:okhttp from 4.11.0 to 4.12.0 in /cnf by @dependabot in #2399
  • Bump com.google.guava:failureaccess from 1.0.1 to 1.0.2 in /cnf by @dependabot in #2400
  • Bump org.jsoup:jsoup from 1.16.1 to 1.16.2 in /cnf by @dependabot in #2398
  • Bump commons-io:commons-io from 2.14.0 to 2.15.0 in /cnf by @dependabot in #2417

Full Changelog: 2023.10.0...2023.11.0

2023.10.0

01 Oct 20:31
Compare
Choose a tag to compare

The OpenEMS Hackathon Q3/2023 took place end of September at the headquarter of opernikus. Apart from extremely valuable discussions and brainstormings, some topics where implementation of an HTTP-Bridge (coming soon), Native Smartphone-App (#2370) and the Energy Schedule ("Fahrplanmanagement", #2367). Also a lot of documentation has been created before the Hackathon which will be published officially soon. Find more details and get in touch in the OpenEMS Community Forum or on LinkedIn.

Common/General

  • FEMS Backport in #2359
    • CI: fix tools/common.sh for updating UI version
    • CI: fix Debian build script
    • Debian: fix debian/semver compatible version string
  • Docs: add documentation for Backend Metadata and Timedata by @clehne in #2314

OpenEMS Backend

OpenEMS Edge

  • Controller ESS Cycle: refactor + improve by @huseyinsaht in #2252
  • Generic-Ess: fix debugLog for max charge power by @sfeilmeier in #2345
  • Modbus Bridge: fix typo in README by @sfeilmeier in #2351
  • Modbus SunSpec: split modbus tasks with more than 126 registers by @tsicking in #2336
  • FEMS Backport in #2359, #2368
    • WebsocketClient: decreased connection lost timeout
    • KMtronic: set persistence priority for relay channels to high
    • Fix OptionsEnums with non-unique values
    • SolarLog: fix setting/calculation of active production energy
    • App Center: Refactor App.Api.ModbusTcp
    • ElementToChannelConverter: Add SET_NULL_FOR_DEFAULT
    • GoodWe BatteryInverter: validate compatible FENECON Home Battery
    • AppCenter: FENECON Home 20 & 30
    • App Center: return created dependencies
    • GoodWe BatteryInverter: improve Warning/Error State descriptions
    • KACO 50/92: fit ActivePower set point percentage -100 to 100
    • FENECON Home: fix switching Battery Start Up Relay ON
    • Modbus Bridge: hide error logs on first try (on configured low LogVer…
    • Meter SDM630: calculate active production/consumption energy manually
    • Battery: standardize debugLog
  • MeterJanitzaUmg511: removed duplicated entry in modbus slave table by @michaelgrill in #2366
  • ModbusRecordChannel: fix read error for write-only channels by @tsicking in #2256

OpenEMS UI

  • Add skeleton for user contact details. by @mahdiataie in #2317
  • Removing duplicate channels from SubscribeChannels and fix unsubscribing by @mahdiataie in #2349
  • Time-of-Use Tariff Controller UI: remove unused channel subscription by @venu-sagar in #2352
  • FEMS Backport in #2359
    • Remove unused channels History Production modal
    • Add filters to edges overview
    • Fix notch color for all OEM's
    • Splitting index into login and overview
  • Unit tests for autarchy, selfconsumption and consumption by @lukasrgr in #2241

Version Upgrades

  • Bump org.dhatim:fastexcel from 0.15.6 to 0.15.7 in /cnf by @dependabot in #2344
  • Bump org.checkerframework:checker-qual from 3.37.0 to 3.38.0 in /cnf by @dependabot in #2343
  • Bump org.apache.felix:org.apache.felix.webconsole from 4.7.2 to 4.9.0 in /cnf by @dependabot in #2341
  • Bump org.apache.felix:org.apache.felix.inventory from 1.1.0 to 2.0.0 in /cnf by @dependabot in #2342
  • Bump org.apache.felix:org.apache.felix.webconsole from 4.9.0 to 4.9.4 in /cnf by @dependabot in #2356
  • Bump org.apache.felix:org.apache.felix.webconsole.plugins.ds from 2.2.0 to 2.3.0 in /cnf by @dependabot in #2355

Full Changelog: 2023.9.0...2023.10.0

2023.9.0

01 Sep 14:56
Compare
Choose a tag to compare

Release Highlights

  • Native pre-aggregated data in OpenEMS Edge & Backend
    • this leads to massive performance improvements in OpenEMS UI for large timeseries databases (InfluxDB)
  • Resend historic data after network outage (see #2338)
  • Refactoring of Modbus Bridge (see #1976 and #2273)
  • ENTSO-E, Time-of-Use Tariff provider (#2207)

Details

Common/General

  • Pre-Aggregate data on OpenEMS Edge; store aggregated data separately in OpenEMS Backend; much faster visualisation in OpenEMS UI (special thanks to @michaelgrill)
  • Docs: Fix typing error in backend-to-backend section by @mahdiataie in #2315
  • Update Gradle to 8.3 by @sfeilmeier in #2330
  • Docs: Update Getting Started & Implementing a Device by @sfeilmeier in #2331
  • CI: build artifacts on tag event by @da-Kai in #2332
  • FEMS Backport 2023.9.0 by @michaelgrill, @lukasrgr, @mlang97, @venu-sagar, @da-Kai, @mahdiataie, @pooran-c, @sebastianasen, @sfeilmeier, @huseyinsaht, @janseidemann in #2338
    • Add script to create a OEM Release
    • Add script to create OpenEMS Edge + UI Debian Package
    • App-Center improvements:
      • Backend handlers for App-Center requests
      • All latest updates, including
        • Apps for Alpitronic Hypercharger, Dezony, Cluster of charging stations, SDM630 meter, symmetric/asymmetric Peak-Shaving with ESS
        • Lots of improvements in UI (JsonFormly, validators, etc.)
      • Websocket connections
        • Re-enable lost connection detection (5 minutes)
        • Improve reconnection logic
      • Add helper utils, stream collectors and JUnit tests

OpenEMS Backend

OpenEMS Edge

  • Implement ENTSO-E, Time-of-Use Tariff provider by @venu-sagar, @sfeilmeier in #2207
  • Modbus Bridge
  • AbstractChannelListenerManager: clean up unused listeners after deactivate() by @JoopAue in #2303
  • EssFeneconCommercial40Pv2: bugfix by @sebastianasen in #2310
  • SunSpecCodeGenerator: refactor, add 7xx models, use JSON input files by @tsicking, @nlamarti in #2324
  • FENECON Commercial 30 Off-Grid: fix getGroundingContactor by @huseyinsaht in #2322
  • FEMS Backport 2023.9.0 by @michaelgrill, @lukasrgr, @mlang97, @venu-sagar, @da-Kai, @mahdiataie, @pooran-c, @sebastianasen, @sfeilmeier, @huseyinsaht, @janseidemann in #2338
    • Add Unit "bar"
    • Update Persistence Priorities for UI/Aggregated Influx
    • FENECON Commercial Battery: cleanup + improvements
    • FENECON Home Battery: type detection; support Home 20 & 30
    • Soltaro Battery: cleanup + improvements
    • Resend historic data from local RRD4j
      • add a resend worker
        • sends after reconnection to backend and a DELAY(5 minutes) the resend data to the backend
        • additional config persistencePriority for resend channels
      • rrd4j
        • write data every rounded to 5 minutes time instead of every 5 minutes
        • fix year view
        • removed 5 minutes offset when querying currentData
        • added versions to separate data schemas
        • changed currenct schema to store cumulated values only per hour
        • separated parent and RecordWorker
      • add resend notification
    • SG-Ready Heatpump: improvements
    • Network Settings: use UTF_8 instead of US_ASCII
    • ESS-Cluster: handle Start/Stop request
    • KEBA evcs: use display on demand
    • GoodWe BatteryInverter: improvements, compatibility with GoodWe 20/30 including up to 6 PV strings, read diagnostics information
    • KACO 10: fix possible NullPointerException when parsing IP

OpenEMS UI

Version Upgrades

  • Bump @types/uuid from 9.0.1 to 9.0.2 in /ui by @dependabot in #2225
  • Bump com.squareup.okio:okio-jvm from 3.4.0 to 3.5.0 in /cnf by @dependabot in #2307
  • Bump org.checkerframework:checker-qual from 3.36.0 to 3.37.0 in /cnf by @dependabot in #2308
  • Bump info.faljse:SDNotify from 1.3 to 1.5 in /cnf by @dependabot in #2328
  • Bump org.rrd4j:rrd4j from 3.8.2 to 3.9 in /cnf by @dependabot in #2327
  • Bump org.apache.felix:org.apache.felix.http.jetty from 5.0.4 to 5.0.6 in /cnf by @dependabot in #2326
  • Bump compare-versions from 6.0.0 to 6.1.0 in /ui by @dependabot in #2319
  • Bump org.apache.felix:org.apache.felix.http.jetty from 5.0.6 to 5.1.0 in /cnf by @dependabot in #2334
  • Bump org.jetbrains.kotlin:kotlin-osgi-bundle from 1.9.0 to 1.9.10 in /cnf by @dependabot in #2335
  • Bump io.reactivex.rxjava3:rxjava from 3.1.6 to 3.1.7 in /cnf by @dependabot in #2333

New Contributors

Full Changelog: 2023.8.0...2023.9.0

2023.8.0

02 Aug 11:02
Compare
Choose a tag to compare

Common/General

  • Comment Code-Coverage on Pull-Request by @da-Kai in #2255
    • This helps us visualize improvements in unit test coverage
  • change contribution doc to describe "Eclipse [built in]" code formatter by @clehne in #2271

OpenEMS Edge

OpenEMS UI

  • FEMS UI Backport 2023-07 by @lukasrgr in #2266
    • Added noImplicitOverride: true to tsconfig.json:
      • Its now mandatory to use the keyword override to mark overloading
    • Refactored History EnergyMonitor:
      • Introduced Unittest framework for Charts
      • Added Unittests for EnergyMonitor
      • created function to convert dummyConfig to real EdgeConfig
    • Redid channels view in settings:
      • Refactored channels view to group channels of same component together in one block.
      • With queryParams of @Angular Navigator, its possible to restore state of a view on reload
      • Its also possible to save the configuration for a specific EMS in localStorage, when reentering to channels for this EMS, your old configuration will be loaded
    • Added hasMultipleEdges to Odoo-Metadata-User
      • Now its possible to know if a user has access to multiple edges
  • UI: apply global autoformat by @sfeilmeier in #2268
  • UI bugfix: history energy chart by @sfeilmeier in #2269
  • UI: adjust style of energy monitor by @lukasrgr in #2270
  • UI: Fix toolbar bug on iOS by @lukasrgr in #2280
  • UI: replicate details of previous history energy monitor by @lukasrgr in #2279
  • UI: Redo Removing globalRouteChangeHandler by @lukasrgr in #2285
  • UI: EVCS add save-button by @mahdiataie in #2299

Version Upgrades

  • Bump okio-jvm from 3.3.0 to 3.4.0 in /cnf by @dependabot in #2264
  • Bump kotlin-osgi-bundle from 1.8.22 to 1.9.0 in /cnf by @dependabot in #2262
  • Bump compare-versions from 5.0.3 to 6.0.0 in /ui by @dependabot in #2261
  • Bump fastexcel from 0.15.5 to 0.15.6 in /cnf by @dependabot in #2275
  • Bump eslint-plugin-unused-imports from 2.0.0 to 3.0.0 in /ui by @dependabot in #2274
  • Bump org.java-websocket:Java-WebSocket from 1.5.3 to 1.5.4 in /cnf by @dependabot in #2282
  • Bump com.influxdb:influxdb-client-core from 6.9.0 to 6.10.0 in /cnf by @dependabot in #2295
  • Bump org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm from 1.7.2 to 1.7.3 in /cnf by @dependabot in #2293
  • Bump com.google.guava:guava from 32.1.1-jre to 32.1.2-jre in /cnf by @dependabot in #2292
  • Bump de.bytefish:pgbulkinsert from 8.1.0 to 8.1.1 in /cnf by @dependabot in #2291

Full Changelog: 2023.7.0...2023.8.0