This is a monthly milestone build for the upcoming openHAB 5.2 release, which brings many fixes and improvements.
New Add-ons
The following add-ons are newly introduced:
| Add-on | Type | Issue |
|---|---|---|
| Bluelink (Hyundai/Genesis) | Binding | #19823 |
| Geocoding Profile | Transformation | #19921 |
| RemehaHeating | Binding | #19494 |
The following improvements were made:
Runtime
| Type | Issue | Change |
|---|---|---|
| Enhancements | 1842 | Upgrade Karaf to 4.4.9 |
| 1861 | Backup script: Exclude heap dumps, crash dumps & voice add-on userdata directories | |
| 4633 | Rule file provider | |
| 5043 | ChannelTransformation: log exact syntax errors in transformations | |
| 5101 | use Instant instead of ZonedDateTime in Riemann sum methods | |
| 5116 | Add support for RegEx expressions in event WebSocket topic filter | |
| 5195 | Upgrade Karaf to 4.4.9 | |
| 5203 | Enhancements and corrections in openapi spec | |
| 5235 | Add time zone support for ZonedDateTime action inputs | |
| 5236 | Adjust REST HTTP response status codes | |
| 5250 | Add support for short-form metadata namespace in Item Yaml config | |
| 5252 | Add support for short-form expire property in Item Yaml config | |
| 5254 | Karaf features: Update supported schema versions | |
| 5280 | Add INFO log for config TEXT param value not parsed a… | |
| 5282 | Log warning on Thing config errors | |
| 5283 | Allow empty or null metadata values via the REST API | |
| 5295 | API /file-format/parse: do not extend thing/channel config | |
| 5303 | Optimize ZonedDateTime.now().toInstant()
| |
| 5305 | Do not generate thing label if same as in thing type | |
| 5308 | Updated item and persistent REST services to use itemName vs. itemname. | |
| 5313 | Add support for short-form syntax in YAML Semantic Tags | |
| 5316 | Add StateOfCharge Semantic Tag Property | |
| 5325 | Decouple session & API token management from ManagedUser implementation & JaasAuthenticationProvider fixes | |
| 5328 | UserRegistryImpl: Allow registering additional ManagedProviders & Allow field access for subclasses of GenericUser | |
| 5332 | Allow "configuration" in syntax as alternative to "config" | |
| 5333 | Add utility method to cast profile configurations to specific classes | |
| 5341 | Enhance removedModel method in all providers | |
| 5342 | Validate ThingUID part during ChannelUID construction | |
| 5349 | DSL: implicit RiemannType import | |
| 5352 | Support 'keywords' field in addon.xml schema | |
| Bug Fixes | 1857 | Upgrade Maven and downgrade karaf-maven-plugin |
| 5184 | add metric area/volume units | |
| 5216 | Add missing media type for output of /links/orphans API | |
| 5225 | Switch to using asynchronous send with Jetty websockets | |
| 5226 | Fix UIResource GET endpoints require no auth if implicit user role disabled | |
| 5241 | Use quotes for numbers stored as strings when generating YAML | |
| 5242 | Normalize thing/channel config in response of /file-format/parse API | |
| 5244 | Allow cross-binding bridges when generating code for a thing | |
| 5248 | Add special handling to thing/channel config param of… | |
| 5257 | IconServlet: Suppress error logging when client disconnected while sending response | |
| 5272 | Fix StartlevelTrigger triggers twice during startup & Passes wrong startlevel as payload | |
| 5273 | Set config descriptions for SimpleRule & Improve null handling | |
| 5296 | Fix Instant deserialization for action inputs
| |
| 5304 | Fix LogDTO.compareTo to avoid overflow and contract violation
| |
| 5334 | DSL Rule - allow using org.openhab.core.persistence.extensions.PersistenceExtensions.RiemannType.TRAPEZOIDAL
| |
| 5348 | Only consider fully qualified discovery results | |
| 5351 | Restore model validation not to fail on diagnostic errors for rules and scripts |
Add-ons
| Add-on | Type | Issue | Change |
|---|---|---|---|
| ahawastecollection | Enhancements | 19834 | Add christmasTree channel
|
| ambientweather | Enhancements | 20159 | Change ambient server domain |
| astro | Enhancements | 19789 | Add Circadian light |
| 19830 | Refresh zodiac handling | ||
| 19875 | Refresh SeasonCalc and add icon package | ||
| 19949 | Switching radiation to immutable and Instant | ||
| 19974 | Refactor Moon Distance | ||
| 19981 | Add solar midnight event | ||
| 20007 | Adds dynamic icons for Sun Eclipses | ||
| 20063 | Tweak sun and moon position classes | ||
| 20066 | Adds moon_day and moon_phase icon sets | ||
| 20077 | Review Eclipses calculations | ||
| 20104 | Rework Moon Phase calculations | ||
| Bug Fixes | 19843 | Don't attempt to publish state to trigger channels on linked | |
| 19982 | Fix premature event scheduling | ||
| 20078 | Refactor event scheduling | ||
| 20085 | Fix circadian luminosity bounds | ||
| automower | Bug Fixes | 19959 | Fix NullPointerException for POI mode
|
| avmfritz | Bug Fixes | 20071 | Fix unit for energy values while polling |
| basicprofiles | Enhancements | 19753 | Add time-weighted average profile |
| boschshc | Enhancements | 19956 | Support Door/Window Contact II [+M] |
| 19960 | Support Radiator Thermostat II (with and w/o Matter) | ||
| 20139 | Support TemperatureOffset service for thermostats | ||
| coronastats | Enhancements | 20129 | Remove binding |
| easee | Bug Fixes | 20189 | Adopt allowed values for currents since easee also allows 1-5A. |
| energidataservice | Enhancements | 19917 | Add semantic tags for prices |
| entsoe | Bug Fixes | 19867 | Fix XML error handling |
| evcc | Enhancements | 19822 | Add plan thing, make repeating plans and one-time vehicle plans configurable |
| 20008 | Add forecast thing for storing forecast data from evcc | ||
| fronius | Enhancements | 19994 | Improve logging in FroniusSymoInverterHandler |
| froniuswattpilot | Enhancements | 20103 | Upgrade wattpilot4j to 2.3.0 & OSGi-ify it |
| gridbox | Enhancements | 19808 | Enable authentication with E.ON API client #19772 |
| groovyscripting | Enhancements | 20143 | Upgrade Groovy to 4.0.30 |
| heos | Bug Fixes | 20025 | Fix decoding of favorite names |
| homekit.binding | Enhancements | 20035 | Add camera snapshot channel |
| 20212 | Increase maximum permitted HTTP content length | ||
| Bug Fixes | 19965 | Support bridges with hardware embedded accessory things | |
| 20004 | Improve thread synchronization | ||
| 20034 | Fix UoM for state updates | ||
| 20052 | Fix HTTP Host Header | ||
| 20106 | Improve I/O streaming | ||
| 20183 | Suppress discovery of accessories with 'null' ip address | ||
| 20209 | Minor tweaks | ||
| homekit.io | Enhancements | 20213 | Add AirPurifier accessory |
| homematic | Bug Fixes | 19932 | Properly consider special values in DP value validation |
| 19975 | Convert to use AbstractStorageProvider | ||
| hue | Enhancements | 19838 | Support new bridge v3 features |
| hueemulation | Enhancements | 19922 | Add support for semantic model |
| 19948 | Upgrade JUPnP to 3.0.4 | ||
| icalendar | Enhancements | 20150 | Add location channels to read the location field of events |
| ipp | Bug Fixes | 19915 | Prevent NullPointerException if printer UUID is missing
|
| jdbc | Enhancements | 19925 | Upgrade MySQL Connector/J to 9.5.0 |
| jpa | Bug Fixes | 19995 | Fix querying of DimmerItems |
| jsscripting | Enhancements | 20195 | Upgrade openhab-js to 5.17.0 |
| Bug Fixes | 19879 | Upgrade to openhab-js 5.16.2 | |
| lutron | Bug Fixes | 19886 | Fix infinite loop in switch status update |
| mapdb | Enhancements | 20153 | Improve shutdown handling and add tests |
| matter | Enhancements | 19386 | Add support for door lock bolting (EU style locks) |
| 19896 | Add pushAsActive parameter for the OTBR pushDataset action
| ||
| 19897 | Add Smoke, CO and CO2 client device support | ||
| 20009 | Implement all concentration measurement clusters | ||
| Bug Fixes | 20096 | Map JS undefined to Java Null | |
| 20229 | Adds missing Diagnostic Clusters | ||
| mideaac | Bug Fixes | 20065 | Add Fan Speed Option for Version 3 |
| misc | Enhancements | 19818 | Upgrade Karaf to 4.4.9 |
| Bug Fixes | 20075 | [hueemulation Fix group creation/deletion | |
| 20217 | Allow sub-bindings to be found in UI Add-on Store | ||
| modbus.lambda | Enhancements | 19835 | Add handling DWord-Swapping for VdaE and VdAQ |
| Bug Fixes | 19901 | Fix inconsistencies in three channel id's | |
| 19928 | Prevent overwriting modbus binding details | ||
| modbus.stiebeleltron | Bug Fixes | 19951 | Fix ability to change hotwater temperatue setpoints |
| mynice | Bug Fixes | 20205 | Enable legacy TLS protocols |
| openweathermap | Enhancements | 20180 | Add unit hints for pollution channels |
| pipertts | Enhancements | 20201 | Add quality to UID/label & Code improvements |
| radiothermostat | Enhancements | 20207 | Implement remote temperature deadband |
| Bug Fixes | 20134 | Fix thermostat schedule error handling | |
| ring | Enhancements | 20152 | Add support for snapshots from camera devices |
| Bug Fixes | 20166 | Fix download of videos | |
| 20167 | Fix rediscovery of objects | ||
| roborock | Enhancements | 19916 | Add available routines as options on the actions#routine channel |
| Bug Fixes | 19831 | Fix update after disposal | |
| 20013 | Fix login for accounts not yet upgraded to new authentication protocol | ||
| 20022 | Fix warning about invalid channel fw-features
| ||
| 20023 | Fix NullPointerException
| ||
| 20028 | Fix rediscovery of existing vacuum Things
| ||
| 20046 | Fix Room mapping channel | ||
| 20111 | Fix status#clean-area channel | ||
| 20192 | Fix NumberFormatException when handling REFRESH
| ||
| roku | Enhancements | 20090 | Refactor discovery to use UPnP |
| 20110 | Improve refresh job timing | ||
| Bug Fixes | 20208 | ECP requires host header with IP | |
| sensebox | Enhancements | 20188 | Add unit hints for air pollution channels |
| shelly | Bug Fixes | 19229 | Improve error handling for Gen1 (CoAP/CoIoT) |
| 19894 | Fix NullPointerException for PM Mini updates
| ||
| 19969 | Refactor ShellyManagerCache cleanup | ||
| solarman | Bug Fixes | 20113 | Fix definition for Deye SG01HP3 |
| tado | Enhancements | 19766 | Add rate limit info channels |
| tapocontrol | Enhancements | 19924 | Add TP-Link HS200 Kasa Smart Wi-Fi Light Switch |
| tasmotaplug | Bug Fixes | 20109 | Fix command mapping for power channel 3 |
| tesla | Enhancements | 20144 | Add a new "share" channel for setting navigation destinations |
| teslascope | Bug Fixes | 20045 | Fix rediscovery of existing vehicle Things
|
| transform.vat | Enhancements | 20191 | Update rates |
| tuya | Bug Fixes | 19930 | Avoid refresh if there are no measurables |
| 20042 | Remove extraneous toLowerCase | ||
| unifiprotect | Bug Fixes | 19882 | Various fixes |
| 19968 | Fix camera and doorbell motion events | ||
| velbus | Enhancements | 19919 | New functionality & Bug fix |
| Bug Fixes | 20151 | Fix system types in update instructions | |
| viessmann | Bug Fixes | 19942 | Fix parsing of unit milliAmpere |
| 19970 | Fix parsing of unit KiloJoule | ||
| 19973 | Fix ViessmannAccountHandler tried updating when disposed | ||
| 19983 | Fix parsing of unit cubic meters per hour | ||
| visualcrossing | Bug Fixes | 19931 | preciptype is a list of strings not a single value
|
| yamahamusiccast | Bug Fixes | 19895 | Fix NPE/instability on UDP state update |
| Zigbee | Enhancements | 923 | Provide serial speed options for 230k and 460k for Ember |
| 928 | Add network backup support to data store | ||
| 935 | Increase maximum configurable Ember power to 20dBm | ||
| Bug Fixes | 929 | Update On/Off Cluster configuration definition | |
| ZWave | Enhancements | 2010 | Add reactive power and energy channel types |
| 2012 | Add support for Z-Wave Meter Command Class v4+ scale 8 | ||
| 2015 | Migrate controller & device node actions from config actions to Thing actions | ||
| 2020 | Refactor ZWave node actions to return status messages | ||
| 2021 | Add device actions; replace failed node and ping node | ||
| Bug Fixes | 2016 | Correct the device Action IsFailedNode | |
| zwavejs | Bug Fixes | 19934 | Keep properties up-to-date (especially lastSeen) |
User Interfaces
| UI | Type | Issue | Change |
|---|---|---|---|
| Basic UI | Bug Fixes | 3675 | Align handling of webaudio setting with Main UI |
| Main UI | Enhancements | 2285 | Add voice dialog support |
| 3575 | Migrate API usage from TypeScript code to typesafe @hey-api | ||
| 3580 | Refactor $oh.auth to TypeScript
| ||
| 3645 | Keep model picker and sitemap editor visualisation toggle states across sessions | ||
| 3649 | Upgrade Codemirror plugins | ||
| 3651 | Upgrade Vite, TypeScript, ESLint & related build dependencies | ||
| 3657 | Add a Matter / Thread Network Map | ||
| 3664 | Developer search: Support search triggers, actions & conditions by type | ||
| 3674 | Add types for codeEditorTypes in useUIOptionsStore | ||
| 3678 | Hide nav bar background when nav bar is hidden | ||
| 3691 | Map picker: Round lat/lng to 6 digits | ||
| 3715 | Upgrade various dependencies | ||
| 3718 | Upgrade marked to 17.0.1
| ||
| 3737 | Setup wizard: Add persistence config | ||
| 3746 | Group popup: Enable support for accordion list items | ||
| 3759 | Widget editor: Support editing accordion list item widgets | ||
| 3763 | Pinia stores: Make exported state & getters in readonly where appropiate | ||
| 3785 | thing-details: Add support for firmware updates | ||
| 3788 | useUIOptionsStore: Make darkMode reactive | ||
| 3814 | Add Items from DSL: Refactor to use core file-format API | ||
| 3819 | Add Items from textual definition: Add support for YAML format | ||
| 3842 | Widgets: Enhance with stylesheet support of other components | ||
| 3856 | Add name to all markers in charts | ||
| 3863 | Add performance metrics | ||
| 3878 | Support keywords in Add-on Store | ||
| Bug Fixes | 3626 | Set options on cronstrue to treat 1 as sunday | |
| 3627 | Charts: Fix oh-time-axis doesn't adjust begin/end for series with offset | ||
| 3642 | Fix groups not saved when adding points or equipment to model | ||
| 3647 | Fix blank screen if simple navbar is enabled | ||
| 3650 | Fix searchbar in binding selection when adding Thing | ||
| 3653 | oh-swiper: Don't set swiper-slide width to 100% | ||
| 3654 | Overview tab: Remove extraneous top space | ||
| 3656 | Script editor: Allow return outside functions/global return | ||
| 3658 | Fix sideffects in measurement/status badges | ||
| 3662 | Fix Main UI load fails if implicit user role is disabled | ||
| 3663 | Persistence health page: Fix invalid problem link | ||
| 3665 | generic-widget-component: Only bind $attrs to parent element | ||
| 3673 | Thing page: Fix Z-Wave network viewer action, thing action caching, action config groups | ||
| 3677 | oh-*-card widgets: Fix style applied to both oh-card and child component
| ||
| 3681 | Charts/Analyzer: Fix rotation issue | ||
| 3684 | Model: Fix JS error on Item selection | ||
| 3687 | oh-map/oh-plan: Fix various Leaflet related issues | ||
| 3705 | Transformation edit: Fix sheet not closed & Add tip for channel transformation | ||
| 3706 | Fix empty plusNanos() code generation
| ||
| 3707 | oh-knob: Fix circle not filled & Can't control Item with NULL/UNDEF state | ||
| 3708 | &$slots.after`
| ||
| 3709 | oh-video: Fix video.js player loading lifecyle | ||
| 3719 | oh-block/widget-mixin: Make code more robust to missing values | ||
| 3732 | Model: Fix expansion state reset on returning into model | ||
| 3733 | useModelStore: Ensure required elements are present when converting to ModelItem | ||
| 3741 | oh-list: Fix various issues when editing | ||
| 3748 | oh-colorpicker-item: Add missing space between colorpicker and toggle | ||
| 3749 | Developer sidebar: Fix expression tester doesn't display falsy values | ||
| 3750 | Fix stylesheet config not applied to oh-block, oh-grid-col, oh-grid-row | ||
| 3754 | oh-input: Fix reference to getVariableScope method | ||
| 3760 | oh-canvas-item: Fix 0 values for x, y, w, h config parameters ignored | ||
| 3761 | f7-list-group css: Fix style regression from grouped list indentation fix | ||
| 3775 | Prevent padding metadata value with space when value is missing | ||
| 3776 | useThingEditStore: Fix firmware data no reset if not available | ||
| 3778 | Ensure directives are at the top | ||
| 3779 | oh-canvas-item: Fix f7-swiper autoplay & Auto Size not working | ||
| 3780 | oh-repeater: Manually bind attributes | ||
| 3781 | widget-mixin: Fix JS error in childWidgetContext if widget not found | ||
| 3799 | oh-swiper: Fix children cannot be added | ||
| 3809 | Link details: Fix reactivity when invalid link removed | ||
| 3813 | Health overview: Fix orphan links/semantic problems visible without entries | ||
| 3815 | oh-plan/map-page: Fix stylesheets for leaflet pages | ||
| 3816 | Thing details: Add checkbox to display EXPERT thing actions | ||
| 3817 | oh-masonry: Fix style leak & Clean-up unused class from home | ||
| 3834 | parameter-options: Fixed issue with parameter of type BOOLEAN that has specified options | ||
| 3838 | Fix auto dark mode selection in Android app | ||
| 3860 | oh-canvas-item: Fix f7-swiper autoplay not working on initial page rendering | ||
| 3869 | zwave: Fix zwave network map display in 5.1.x |