github openhab/openhab-distro 5.2.0
openHAB 5.2.0

4 hours ago

This is the official release of openHAB 5.2.0.

The binaries are available on our download page and via "Stable" on our APT repository.

New and Noteworthy

The openHAB 5.2 release is a feature release that contains many new features, enhancements and bug fixes, both for the core runtime and for many add-ons. You can find the most relevant ones listed in detail below.

Please also note our release blog post, which describes the major new features in depth.

openHAB 5.2 is backward compatible to openHAB 5.x setups, though there are a few exceptions where manual action is required to adapt an existing setup, so please carefully check the section on breaking changes. It is especially important to know that openHAB 5.x requires Java 21, so in case you are coming from a 4.x installation and haven't yet upgraded, this is mandatory.

Quick links:

  • Notes about new add-ons
  • Notes about the core runtime
  • Notes about the UIs
  • Notes about the add-ons
  • Upgrade Process for openHABian, APT, RPM, Manual Installations
  • Breaking Changes that require manual interaction after the upgrade.

Relevant Changes

New Add-ons

The following add-ons are newly introduced:

Add-on Type Issue
Atmo France Binding #20365
Bluelink (Hyundai/Kia/Genesis) Binding #19823
DahuaDoor Binding #20172
DD-WRT Binding #20505
Energy Forecast Binding #20325
Geocoding Profile Transformation #19921
Google Gemini Binding #20922
Home Connect Direct Binding #20653
LinkPlay Binding #19554
mcp IO #20636
Ntfy Binding #20560
Pirate Weather Binding #18877
RemehaHeating Binding #19494
TimescaleDB Persistence #20412
transform.math Transformation #20164
Twilio Binding #20487
unifiaccess Binding #19412
WorxLandroid Binding #16893
yamlcomposer IO #20305

Runtime

The following improvements were made to the core and the distro:

Type Issue Change
Enhancements 4633 Rule file provider
4951 Persistence extensions: preserve item unit in results
4995 State machine to model lights in Thing handlers
5004 Implement a core sitemap registry
5043 ChannelTransformation: log exact syntax errors in transformations
5069 Make RuleManager.runNow() run in the dedicated rule thread
5101 use Instant instead of ZonedDateTime in Riemann sum methods
5116 Add support for RegEx expressions in event WebSocket topic filter
5203 Enhancements and corrections in openapi spec
5217 Persistence health check for configuration from multiple providers
5231 Support conditions related to the ThingStatus
5232 core/resources: Use geographic coordinates with precision 1 meter
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
5327 Add dimension for calorific value and related unit
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
5355 Add extra fields support to oAuth AccessTokenResponse
5361 Clean retry queue when a thing is updated/removed in YAML thing provider
5372 Schema update for configuration description
5379 UpgradeTool add semantics upgrader and OH version
5390 Item metadata REST endpoints: don't allow adding or removing semantics
5398 Textual Rules: allow XBase between then … end
5400 PersistenceResource: Update OpenAPI annotation itemname => itemName
5404 Corrections in the annotations for several REST api calls
5416 Check valid properties for channel
5418 Add RadiationDoseRate dimension
5429 Check channel profile value + add line number to validation errors in DSL item provider
5432 Add support for HTTP401 in OAuth connector
5433 Add line number to validation errors/warnings in DSL thing provider
5440 Add time of day trigger to DSL Rule file syntax
5442 Add tags to DSL Rule file syntax
5449 Add optional rule UID to DSL Rule file syntax
5453 Add conditions to DSL Rule file syntax
5457 core.model.thing: switch serializer.Sequencer classes from Xtend to Java
5458 Fix config deserialization for records
5459 Sitemap DSL serialization and parsing
5462 Allow rule with no trigger in DSL Rule file format
5463 Fix how is called withTags in DSL Rule file provider
5464 Add cancel button, fix font in form & use SVG logo with dark/light variants for authorize page
5466 Accept any number of sub-widgets in a sitemap frame/page
5467 Rule UID syntax validation
5477 Introduce webhook service
5478 core.model/*.mwe2: Do not generate serializer stubs
5481 Add extra commands/abilities to DSL scripts/rules
5482 Sitemap YAML serialization and parsing
5484 DSL Scripts and Rules: allow usage of org.openhab.core.automation.RuleManager
5493 Add file-based YAML support for UI pages and widgets
5503 Generate{Persistence,Rule,Script}.mwe2: do not generate Validator.xtend stubs
5506 Generate{Rule,Script}.mwe2: do not create ScopeProvider.xtend stubs
5508 Generate{Item,Persistence,Sitemap,Thing}.mwe2: do not create Generator.xtend
5510 Upgrade Karaf to 4.4.11
5512 Add wildcard support for ChannelEventTriggerHandler
5514 Prune orphaned entries in automation_rules_disabled.json on start up
5518 PersistenceResource: Support transforming states to display states
5526 Allow empty sitemap in DSL
5530 Deprecate defining buttons as properties of a Butongrid widget
5531 Allow multiple sitemaps in a DSL file
5533 Serialize row/column as first properties of a Button widget (DSL site…
5539 Reduce log level for loading/unloading isolated models
5544 Update GenericEventTrigger label and requirements
5556 Add parameter on Hysteresis Profile to exclude current Item State from calculation
5568 Add support for env var resolution in Thing configuration
5572 Rule and RuleTemplate file format conversion
5573 Add semantic tags to conversion REST API
5590 Support "new YAML" on the marketplace for rule templates, widgets and block libraries
5594 Enhance error/warning messages for DSL sitemaps
5603 Reference ReadyService in SitemapRegistry
5605 Create ready markers for YAML providers
5614 Disable Graal language cache
5620 Add conversations & LLM tools support
5622 MAC address resolver component
5625 Add additional rules to the StandardInterpreter
5626 Implement permissions for Item access from HLIs
5627 Include rule UID in log message when rule execution fails
5633 Implement LLM tools get state & send command for Items
5635 Enable asynchronous execution of rules and lock engine lock when loading scripts
5636 Add created & lastUpdated timestamps to Conversation
5637 Add a LLMToolCall record to serialize calls and store into conversation
5638 ConfigUtil: Add method to apply defaults from ConfigDescription to configuration Map<String, Object>
5640 Add Celsius, Fahrenheit and other UoM single glyph aliases
5641 Add configurable system prompt & Config refactorings
5643 Provide the semantic model + non-semantic items as context to LLM HLIs
5645 Add REST endpoint & console command to list conversations
5654 Add REST endpoint to get LLM tools
5655 Put locations first in semantic tags code
5657 Save Startlevel to a file
5665 Delay refresh of DSL scripts until start level 20 is reached
5673 ItemCommandLLMTool: Improve tool description
5678 LLMItemSerializer: Serialize to a token-optimized format instead of YAML
Bug Fixes 5086 Textual Rules: evaluate global variables in the context of previous variables
5161 Improvements config.serial bundle: Add JavaDoc & fix concurrency bug
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
5310 Fix time zone for java.util.Date action inputs
5334 DSL Rule - allow using org.openhab.core.persistence.extensions.PersistenceExtensions.RiemannType.TRAPEZOIDAL
5336 Persistence item info REST endpoint bug fixes and enhancements
5348 Only consider fully qualified discovery results
5351 Restore model validation not to fail on diagnostic errors for rules and scripts
5376 Fix community marketplace discourse parsing
5392 Persistence group exclusion also exclude group members
5403 Persistence timeseries fix updating Item state
5411 Fix when "Unloading DSL model" is logged
5439 Fix and de-bounce service resolution
5446 Correct OpenAPI definition for ConfigDescriptionParameterDTO
5448 Correct OpenAPI definition for GET config description(s) endpoints
5460 Sitemaps: Fix incorrect warning if Button has visibility defined
5501 Adjust syntax for conditions in DSL Rule
5513 Managed sitemaps fix conditions parsing
5516 Align thread calculation with Jetty
5523 Make all sitemap DTOs schema names specific to Sitemaps
5532 Avoid DSL sitemap serializer generating "forceAsItem=false"
5551 Fix managed sitemap rules
5567 Fix keyword-identifier collisions in DSL rules
5574 Fix registration of sitemap providers to its registry
5577 Fix thing manager when thing is updated (particular timing case)
5588 Various YAML fixes
5591 Fix syntax for time in trigger/condition in DSL rule
5593 Sitemap DTO fix backward compatibility
5595 Fix handling of DSL .script files at openHAB startup
5604 Create ready markers for proper managed providers
5606 Fix crash when DSL script is empty
5621 Revert #4919 "Remove prefixes from context entries before injecting ctx into execution context"
5646 Fix sitemap string serialization
5651 Fix missing defaults in VoiceManagerConfiguration
5653 Fix missing regex replace escaping in DslRuleConverter
5666 Make sure createIsolatedModel clean up cache in providers before retu…
5670 ScriptTransformationService: Cleanup ScriptEngines on corresponding ScriptEngineFactory removal
5672 AbstractScriptModuleHandler: Handle ScriptEngineFactory lifecycle
5677 Use alternative method to get userdata folder
5684 ScriptEngineManagerImpl: Fix exception in scriptUnloaded fails engine removal
5686 Fix ScriptProfile holding reference to old, disposed instance of ScriptTransformationService
5687 Log WebSocket: Require ADMIN role
1861 Backup script: Exclude heap dumps, crash dumps & voice add-on userdata directories
1884 gzip compress assets and images
1895 Backup script: Fix exclusions not working & Include Piper/Vosk/Whisper dirs in full backup
1896 Backup/Restore scripts: Add --noroot option to allow root-less exec
1914 Adjust setup of start levels to consider YAML providers

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
3349 Adapt UI's to core sitemap registry implementation
3575 Migrate API usage from TypeScript code to typesafe @hey-api
3576 Log viewer: Handle heartbeat & Improve connection robustness
3580 Refactor $oh.auth to TypeScript
3638 Add persistence health check "duplicate configuration"
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
3708 oh-list-item: Merge component.slots.after[0] & $slots.after
3710 Add failure handing to selected REST endpoints
3713 Script editor: Enable ESLint rules to catch bugs
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
3765 Item details: Display persistence status
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
3843 useStatesStore: Switch to hey-api REST client
3845 Setup wizard: Major enhancements
3856 Add name to all markers in charts
3859 oh-canvas-item: Make content use 100% height and align vertical centered
3862 Refactor widget-mixin to TS composable
3863 Add performance metrics
3878 Support keywords in Add-on Store
3884 Code editor: Migrate to TS & Add Vim keybindings support
3886 Expand list-subs placeholders in Addon Store
3892 Z-Wave network map: Use bidirectional edges for controller
3896 oh-nav-content: Add always on menu icon for narrow screens
3915 Items: EQUALITY aggregation function is default for Groups with type
3918 Config sheet: Add support for missing context values
3924 Make semantics not editable from metadata editor
3962 Charts: Improve tooltip for markArea using Item's stateDescription & Hide markArea series from timeseries tooltip
3963 useWidgetExpression: Add type param for value = return type
3969 Dynamically import oh- components through a registry & Improve chunking
3975 Reduce unwanted JavaScript editor autocompletion in comments and outside code expressions.
3976 Display channel properties in channel-general-settings
3977 Charts: Refactor to TypeScript, Composable & Composition API
3986 Enhance UI support for configuring persistence
3991 cron-expression editor: Refactor to TS & Several bug fixes/enhancements
4000 Script editor: Change color for match selection
4001 UoM unit definitions: Refactor to TS & Add missing dimensions
4002 useWidgetExpression: Don't declare null as return value
4003 Analyzer: Hide permanent menu icon
4006 Charts: Display time instead of null state in current time marker tooltip
4008 oh-clock: Add timezone support & Convert to TS Composition API
4011 Add persistent, resizable bottom Log Pane with keyboard toggles
4024 Update Google Assistant Metadata Definition
4035 oh-repeater: Fix various issues, improve runtime error handling & refactor to TS
4039 Refactor page-view.vue to TS Composition API
4046 oh-chart-tooltip: Add aggregate, calendar series support & Improve formatting for time series, mark area
4048 Widget params: Support defining default values for multiple options param
4049 Charts: Add UI configuration support for various options
4050 WidgetContext: Improve definition of optional properties
4051 Charts: Add fixed periods > one year & Aggregation dimension year
4055 useChart: Use computedAsync from vueuse instead of shallowRef/watch workaround
4065 oh-map-page & location picker: Make default map more colorful
4069 Things list: Add dynamic blue dot to status badges if status detail is set
4078 parameter-options: Increase label length limit for popover
4090 f7.dialogs/toast: Implement global helper promise methods
4093 Upgrade to @hey-api/openapi-ts 0.95.0 & Update OpenAPI spec
4095 Update setup wizard images
4103 Pages list: Separate sitemaps, Include unmanaged sitemaps & Copy file definition
4111 Support invoking multiple widget actions
4115 Add readonly mode for file-based pages and widgets
4117 Sitemap editor: Various improvements & replace UI DSL parsing/generation with REST calls
4119 Refactoring: DRY page type/icon handling
4124 Refactor dirty-mixin to TS composable
4136 Add Items from Textual Definition: Throttle parsing instead of debounce
4139 Update OpenAPI REST client
4144 Split Sitemaps and Pages into two different entries in the settings menu
4162 useChart & useWidgetAction: Ensure composables are fully reactive to props
4164 Upgrade to Vite 8
4166 Add support for pulling OpenAPI spec from URL & Regenerate REST client
4169 Charts: Add option for showing display instead of raw state
4171 Align rule UID validation with core
4173 Channel list: Scroll to the bottom after "Select All" is clicked
4174 Sidebar Menu: Enable expanding/collapsing menu sections without requiring item selection
4176 Thing details: Add a link to the bridge when the bridge is offline
4182 useComponentsStore: Update declared type for pages & widgets
4183 Pages & Widgets list: Add list filters (editable/type/tags)
4185 Log Viewer: Make table columns resizable
4186 Code editor: Add Lezer-based syntax highlighting for Rules/Things/Items/Sitemap DSLs
4197 Support using file-based home page configuration and overview page
4202 Rule and RuleTemplate file format conversion
4208 Sitemaps list: Add editable filter
4216 Add µg/m³ unit hint for PM sensors
4218 API Explorer: Enable tryItOutEnabled
4231 Add a widget catalog for tools like agents
4234 Semantic tag editor use conversion REST API
4261 Support interactive SVGs in floor plans
4272 Regenerate REST API client
4278 Add a chat interface to Main UI
4281 Add permission config to voiceSystem metadata editor
4282 Regenerate REST API client
4317 Chat page: Show a splash screen if no LLM-based HLI is available
4321 Setup wizard: Improve button labels & fill on intro page
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
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
3868 Align x-axis and query to daysOfMonth for aggregated series
3869 zwave: Fix zwave network map display in 5.1.x
3889 item-state-preview: Fix toggle switch not being fully re-rendered on Item change
3894 useStatesStore: Fix error in expression tester with =items formula
3914 Item picker: Fix group list not updating when Item type filter changes
3920 useStatesStore: Set toString override for ItemState & Fix overflow in developer sidebar
3926 Fix screen.viewAreaWidth and screen.viewAreaHeight not available in widget editor
3928 Fix Vue warns on semantic model pages
3937 items-detail: Fix back navigation when deleting item
3955 Fix duplicate page not working
3958 Charts: Fix add/subtract period doesn't account for different month lenghts
3964 widget-edit: Add missing horizontal padding to props dialog note
3972 useStatesStore: Fix incorrect type definition for TrackedItems
3978 oh-input: Fix value computation for variables
3990 oh-masonry: Fix missing oh-placeholder-widget
3992 Update OpenAPI REST client
3995 Item details: Eliminate whitespace in item title
3996 Fix framework7 menu pointer styling
3998 Home edit: Fix formatting issues
3999 oh-map-page: Update map on darkMode changes
4005 Charts: Correct type def for future parameter
4009 useWidgetContext: Fix issue where slots can be undefined
4015 oh-plan-page: Fix leaflet-div-icon CSS overwrite & Refactor marker code
4016 Thing inbox: Fix "Add as Thing" dialog width to adjust to button text size
4017 oh-stepper: Fix enableInput always shows 0 & Refactor to TS
4020 Charts: Don't enable boundary & itemState for forecast charts
4023 Add Items from Thing: Fix expert mode code tab empty
4026 API explorer: Add basic auth support
4028 item-persistence-detail: Fix error when no persistence config is defined for a service
4029 connection-health-mixin: Adjust to hey-api usage
4031 Prevent widget popups accessing .slots from crashing
4032 Link edit: Fix link profile dirty issue
4034 Model: Fix channel link edit navigation broken
4036 list navigation: Fix middle-mouse button navigation
4037 Widgets: Transform prop parameter default value to parameter type
4038 Pages: Fix variables on (overview) page not working
4047 Config sheet: Fix defaultValues for multiple options parameter not applied
4054 oh-gauge-card: Fix sizing issue when action is set
4057 Fix incorrect use wrapper directive
4058 Chart designer: Fix series list overflow
4060 Blocks: Fix links in block-list
4061 useWidgetContext: Fix not (fully) reactive to context input
4073 Analyzer: Fix axis split applying incorrect values
4074 Widget config: Fix multiple options param with no selected opts not set
4106 Revert "list navigation: Fix middle-mouse button navigation (#4036)"
4109 list-navigation: Fix middle-mouse navigation
4112 useStatesStore: Reactivity fixes
4121 Code editor: Fix vim save
4122 oh-input: Fix parts of value appended as unit for complex formatted states
4123 Model page: Fix subnavbar icon color for filled theme
4128 Setup Wizard: Fix add-on search in description
4131 Add-on store: Make back link return to Thing details / choose binding
4133 Fix rule module reordering bug
4134 Widget edit: Don't cache expressions in edit mode & throttle rerender on input
4140 API explorer: Line up the response code, description, details & links
4160 useThrottleFn: Configure useThrottleFn to guarantee function is executed
4163 Charts: Fix inconsistencies with week/weekday fixed to start on Sunday vs. depending on locale
4165 Fix token auth on SSE reconnection
4167 item-form: Allow copying of fields in list-input in model-detail-pane when disabled
4170 WebSocket util: Unify close/cleanup logic
4175 Items list: Fix virtual-list rendering on hard refresh
4184 Disable UPPERCASE capitalization of f7-button text
4194 Fix log dock obscuring the unpinned side menu
4195 Fix app drawer when dev sidebar is open
4210 Sitemap edit: Various fixes
4229 Log viewer: Fix dock y-overflow when window height is reduced
4230 Log viewer: Fix details popup looses data on buffer overflow
4233 Code editor: Add input to globals for JS linter
4256 Widget edit: Fix defineVars not working
4259 Code tabs: Fix incorrect heights & Cleanup v-codemirror styling
4260 Fixes for navbar on mobile
4262 Charts: Handle Day.js localized formatting errors
4263 Analyzer: Fix diff_last/diff_first aggregations selection & Update ChartType.week label
4266 Semantic tag editor: Fix missing copy & revert buttons on narrow screens
4269 Sitemap editor: Minor fixes
4279 Properly support read-only block libraries
4280 Sitemap Editor: Allow empty values in rules and mappings
4292 Fix scrolling of "Copy File Definition" popup on narrow screens & Fix DSL "but only if" syntax highlighting
4296 Rules list: Resurrect RUNNING status
4297 Developer sidebar: Fix duplicate keys in events list v-for
4299 Fix tabbed page navigation issues
4300 Rule edit: Update rule code when the source changes
4306 Log viewer: Fix log-viewer-card class style not applied
4308 Block library editor: Fix blocks not refreshed on code change
4309 Various safe area fixes
4313 Setup wizard: Fix persistence strategy selection showing invalid translations
4314 oh-nav-content: Fallback to localised backLink label
4316 Add-ons store: Fix sections tab bar not displaying current tab
4320 useWidgetAction: Fix actionConfirmation config obj regression
4322 Fix oh-context variables no longer defined or scoped

Add-ons

Add-on Type Issue Change
ahawastecollection Enhancements 19834 Add christmasTree channel
Bug Fixes 20417 Fix upgrade instructions
airparif Bug Fixes 20242 Resolve DepartmentDb loading error when already initialized
20357 Fix NullPointerException on startup
20370 Remove pollens
20438 Fix NullPointerException in pollutant concentrations
airq Enhancements 20146 Add Radon sensor and correct spelling mistake
20448 Add mDNS auto-discovery for air-Q devices
amberelectric Bug Fixes 20956 Code Improvements
ambientweather Enhancements 20159 Change ambient server domain
androidtv Bug Fixes 19985 Add configuration option skipPowerRefresh
20845 Fix color conversion in setAmbilightPixel
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
20138 Factor standard Meeus 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
20330 Filter invalid energy values in high refresh polling
bambulab Enhancements 20234 Add layer-total channel
20607 Add support for tray type: ASA-CF
20670 Add support for PLA-S
basicprofiles Enhancements 19753 Add time-weighted average profile
20423 Add precision parameter to Round Profile
20559 Support DateTime in round profile
20929 Add State Delay profile
bluetooth Enhancements 20880 Support custom GATT specifications via a configurable folder
bluetooth.bluez Enhancements 20926 Bump bluez-dbus-osgi to 0.3.5
Bug Fixes 20434 Fix exception when stopping Thing
20882 Fix BlueZ GATT service discovery for slow/reconnecting devices
20903 Recover BlueZ devices after object removal
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
broadlink Bug Fixes 20643 Fix RM4 Pro RF frequency learning logic
chatgpt Enhancements 20408 Add configurable request timeout
20513 Add HTTPS support
20566 Intercom: Add WebRTC sidecar foundation and wiring
20567 Intercom: Add SIP baseline and call-state channels
20568 Intercom: Add SIP call-control servlet delegation
20569 Intercom: Add SIP SDP parser package and tests
20570 Intercom: Final SIP relay lifecycle wiring
20628 Use DHIP invite for SIP button mapping
20681 Multi-client SIP handling and WebRTC session routing
20692 Restore snapshots and enforce retention
20759 Extend snapshot handling and align WebRTC URL
daikin Bug Fixes 20957 Implement code improvements
danfossairunit Bug Fixes 20533 Fix TCP read handling and improve value parsing precision
deconz Bug Fixes 20963 Calculate the correct channel value for soil moisture
dirigera Enhancements 20123 Support IKEA devices based on Matter standard
20484 Add matter plugs
20691 Add device set support
Bug Fixes 20184 Bugfix startup synchronization
20404 Avoid permanent discovery warnings
20421 Bugfix illuminance measurements
easee Enhancements 20176 Add ability to retrieve total consumption per user
20891 Fix offline detection and recovery on connection loss
Bug Fixes 20189 Adopt allowed values for currents since easee also allows 1-5A.
ecoflow Bug Fixes 20442 Fix NullPointerException in discovery service
ecovacs Enhancements 20016 Catch more exceptions when parsing vacuum data
Bug Fixes 20017 Fix device definition for T50 PRO OMNI
ecowatt Enhancements 20282 Handle HTTP error 500 more gracefully
electroluxappliance Bug Fixes 20452 Fix sendCommand() rejecting HTTP 202 Accepted responses
20453 Fix commands reverting immediately due to premature state refresh
21055 Fix bridge going offline after restart
energidataservice Enhancements 19553 Add support for hourly spot prices as calculated average
19917 Add semantic tags for prices
Bug Fixes 20899 Consider Retry-After header
enocean Enhancements 19614 Add proper constraint for serial port path parameter
20218 Add generic state machine infrastructure
20219 Add FSB14 blind control with state machine
20230 Add explicit senderId support for RS485 actuators
20235 Add injector pattern to emulate sensors for Eltako bus actuators
Bug Fixes 20024 Fix SenderIdOffset issue during teach-in
20449 Refactor transceiver receiver
20791 Restore datagram injector outbound telegrams
entsoe Bug Fixes 19867 Fix XML error handling
epsonprojector Enhancements 20474 Update powerstate when Thing is offline
20852 Add password authentication
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
20309 Battery values are not shown anymore
20406 Migrate vehicle Thing property
Bug Fixes 20500 Fix ClassCastException when battery is null
evohome Bug Fixes 20298 Fix deprecated Honeywell URL
fineoffsetweatherstation Enhancements 20483 Add PM1, PM4 measurements and battery level for WH46
20795 Add support for WS85 sensor
20915 Add support for new sensors
20916 Add Ecowitt HTTP API support
20928 Add 10-min avg wind direction and 24h rainfall
20941 Add WN38 black globe sensor and fix lightning distance in miles
Bug Fixes 20942 Fix dynamically created channels disappearing
21000 Fix false low battery for voltage sensors on HTTP API
freeathome Bug Fixes 21065 Fix periodic WebSocket disconnect in ping keep-alive mode
freeboxos Bug Fixes 20280 Review WebSocketManager to avoid IllegalStateException
20611 Mark unknown freeplug mac as OFFLINE
fronius Enhancements 19994 Improve logging in FroniusSymoInverterHandler
20378 Replace global request lock with per‑bridge locking and non‑blocking polling
20650 Add battery Thing type
froniuswattpilot Enhancements 20103 Upgrade wattpilot4j to 2.3.0 & OSGi-ify it
20609 Add channel to control authorization state
Bug Fixes 20711 Fix disposal and increase thread-safety of reconnectJob scheduling
gardena Bug Fixes 21058 Fix reconnection logic
googletts Bug Fixes 20701 Fix NullPointerException when API returns error response
govee Bug Fixes 20984 Fix NullPointerException in discovery for non-scan and malformed packets
gpstracker Enhancements 20804 Improve Owntracks Android ≥ 2.5.x support
gridbox Enhancements 19808 Enable authentication with E.ON API client #19772
groheondus Enhancements 20615 Add Sense Guard pause duration channel
groovyscripting Enhancements 20143 Upgrade Groovy to 4.0.30
20495 Upgrade Groovy to 4.0.31
Bug Fixes 19587 For enum values do import static
hdpowerview Enhancements 20630 Update shade database
heliosventilation Bug Fixes 20475 Correct channel id typo for adjustInveral
heos Bug Fixes 20025 Fix decoding of favorite names
20514 Fix RuntimeException during initialization
homeassistant Enhancements 20225 Support device-level configuration
homeconnect Enhancements 20733 Add cleaning robot support
Bug Fixes 20993 Fix bridge access after handler disposal
homekit Bug Fixes 20796 Improve stability against NullPointerException
20801 Fix representation property. Fix config auto-update
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
20083 Support accessory Things that have children
20106 Improve I/O streaming
20183 Suppress discovery of accessories with 'null' ip address
20245 Clean handler state if configuration changes
homekit.io Enhancements 20213 Add AirPurifier accessory
homematic Bug Fixes 19932 Properly consider special values in DP value validation
19975 Convert to use AbstractStorageProvider
20658 Set status description if software update pending
20790 Fix deadlock on stopping discovery
20850 Fix gateway deadlock on reconnect when handling newDevices
homewizard Enhancements 19967 Add support for the system API
hue Enhancements 19838 Support new Bridge Pro features
20380 Support API v2 motion and light sensor groups
20400 Fix bridge certificate handling
20456 Support Zigbee Green Power connectivity state
20459 Add support for button long_press events
20498 Support software updating
20520 Add support for service groups
Bug Fixes 20439 Remove TTL from discovery results
hueemulation Enhancements 19922 Add support for semantic model
19948 Upgrade JUPnP to 3.0.4
20930 Map semantic equipment tags to archetypes
Bug Fixes 20075 Fix group creation/deletion
20917 Preserve brightness precision for low dimming levels
huesync Bug Fixes 20512 Scheduled runnable ended with an exception
iaqualink Enhancements 17671 Add Support for AWS MQTT based IAqualink devices, such as Zodiac Hydroxinator
Bug Fixes 20638 Fix updates to Filter_Pump/Production
icalendar Enhancements 20150 Add location channels to read the location field of events
icloud Enhancements 20672 Implement iMessage/SMS-based 2FA verification codes
influx Enhancements 20724 Upgrade dependencies
influxdb Enhancements 20654 Move keep() after ordering/pagination for ~1000x query performance improvement
Bug Fixes 20885 Fix InfluxDB 2 selectors and pagination on multi-series measurements
intesis Bug Fixes 20401 Correctly handles empty enum message
20471 Fix type collision
ipobserver Enhancements 20734 Filter out bad sensor values from low battery or corrupt RF packets.
ipp Bug Fixes 19915 Prevent NullPointerException if printer UUID is missing
jablotron Bug Fixes 20256 Fix parsing blank event date
jdbc Enhancements 19925 Upgrade MySQL Connector/J to 9.5.0
20722 Upgrade dependencies
jellyfin Enhancements 18628 Add support for server versions > 10.8
jpa Bug Fixes 19995 Fix querying of DimmerItems
20645 Don't rollback failed transactions
jrubyscripting Enhancements 20951 Upgrade to JRuby 10.0.6.0
Bug Fixes 20227 Fix karaf console command newline
jsscripting Enhancements 20440 Implement debugger support
20908 Upgrade to openhab-js 5.18.2
Bug Fixes 20435 Fix incorrect line numbers in JS stacktrace due to code injection
20853 Prevent deadlock in ThreadsafeSimpleRuleDelegate
21042 Await activation of OSGiScriptExtensionProvider before registering ScriptEngineFactory
kaleidescape Enhancements 20485 Update readiness_state when Thing is offline
20789 Implement search channel
Bug Fixes 20809 Fix EOTF mapping
knx Enhancements 20332 Show raw ASDU as hex string
20718 Upgrade to Calimero 3.0-M2
20740 Allow disabling device polling
kostalinverter Enhancements 20466 Fix autoreconnect after network outage
lgthinq Bug Fixes 21021 Enforce uppercase manualCountry being send
lgwebos Bug Fixes 20925 Fix thing status description
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
20070 matter.js V0.16, Matter 1.4.2, OTA Update support
20257 Remove most polling
20816 matter.js 0.17 and various fixes
21088 Upgrade matter.js to 0.17.4
Bug Fixes 20096 Map JS undefined to Java Null
20229 Add missing Diagnostic Clusters
20291 Fix roller shutter percentage conversion
20382 Fixes various OTA updates bugs
20384 Report correct Illuminance Measurement Value
20604 Deduplicate request data calls
20788 Map contact sensor channels correctly
20901 Handle matter.js 0.17 file locking
20904 Fix very slow things initialization (Thread devices)
20905 Fix Thread device commissioning regressions (matter.js 0.17)
20907 Fix zombie matter.js Node process on restart
21076 Fix crash for some Thread devices
melcloud Enhancements 18850 More data from the cloud
mercedesme Enhancements 20555 Add new charge status options for newer vehicles
Bug Fixes 20249 Door lock status bugfix
20468 Adjust logging
meross Bug Fixes 20939 Fix mqtt cloud connection fallback
meteofrance Bug Fixes 20263 Avoid false assumption that rain forecast is provided
mideaac Enhancements 20665 Add Midea Dehumidifier to Midea AC binding
Bug Fixes 20065 Add Fan Speed Option for Version 3
miio Enhancements 20775 QR, Captcha, 2FA cloud login method enhancements.
Bug Fixes 20776 fixing lint issues in on readme
mikrotik Enhancements 20507 Add PoE support
20661 More interface support and ability to disable interfaces.
misc Enhancements 20174 Add semantic tags for prices
20200 getItemInfo enhancement
20294 Add mac-address context for configuration parameters
20323 Change deprecated required element to attribute
Bug Fixes 20217 Allow sub-bindings to be found in UI Add-on Store
20554 Prevent duplicate event listeners
modbus.lambda Enhancements 19835 Add handling DWord-Swapping for VdaE and VdAQ
20596 Fix unit of volumetric flows in heatpump part
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
modbus.sungrow Enhancements 18364 Add support for more registers
mongodb Enhancements 20725 Upgrade dependencies
mspa Enhancements 20629 Improve token error handling
mynice Bug Fixes 20205 Enable legacy TLS protocols
myuplink Bug Fixes 19906 Fix support for decimal commands
netatmo Enhancements 20286 Avoid sending refresh requests twice
20287 Use cache for event update requests
20296 Potential redundancies in Capability tree
20315 Simplify time zone handling for Home/Weather Station
Bug Fixes 18029 Enforce API reconnect delay
20254 Solving IAE in CameraCapability
20314 Avoid rushing server APIs
nuvo Bug Fixes 21049 Fix encoding of accented characters
opengarage Enhancements 20980 Move to jetty httpclient and other small improvements
openhabcloud Enhancements 20238 Handle WebSocket connections to server
20486 Add webhook service
20748 Provide core WebhookService
Bug Fixes 20247 Fix bugs and add logging related to notification actions
openweathermap Enhancements 20180 Add unit hints for pollution channels
20794 Add TimeSeries support for Air Pollution forecast data
20799 Add UV-Index to hourly forecast with TimeSeries
oppo Enhancements 20488 Set playback status channels to UNDEF when Thing is off or offline
panasonicbdp Enhancements 20489 Update player-status when Thing is offline
paradoxalarm Enhancements 20679 Add panel system trouble channels
20744 Add SYNC_TIME command to sync panel clock on demand
Bug Fixes 20678 Fix binding not polling data correctly after restart
20934 Fix channel-type UID collision across thing types
pihole Bug Fixes 20394 Discrepencies between dashboard and channels
pipertts Enhancements 20201 Add quality to UID/label & Code improvements
20292 Upgrade to Piper 1.4.1 & Download from JFrog
Bug Fixes 20362 Fix dependency unpack on Windows
powermax Bug Fixes 20708 Improve scheduled job handling
pythonscripting Enhancements 20289 Simplify configuration and update helper lib to version 1.0.18
20443 Implement debugger support
radiothermostat Enhancements 20207 Implement remote temperature deadband
Bug Fixes 20134 Fix thermostat schedule error handling
renault Enhancements 20773 Several improvements related to updating channels/documentation
Bug Fixes 20573 Fix hvac start data format bug
20769 Consolidate EU Gigya API key into shared constant
ring Enhancements 20152 Add support for snapshots from camera devices
20226 Add status and control of light and siren functionality for supported devices
20352 Add extended description of events
20521 Add 'open door' functionaility of the Ring Intercom
20539 Add support for toggling 'Motion Detection' to supported stickup cams and doorbells
20572 Detect dual batteries and report status correctly
Bug Fixes 20166 Fix download of videos
20167 Fix rediscovery of objects
20285 Fix ShutdownNow() invoked on a shared thread pool 'ring'
20797 Fix intercom battery level
20943 Fix multiple stability issues
roborock Enhancements 19916 Add available routines as options on the actions#routine channel
20284 Add Roborock map rendering support
20731 Add local protocol support and refresh controls
20847 Add support for Roborock Q7 vacuums
20895 Add basic support for the Roborock Q10 vacs
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
20457 Fix JsonSyntaxException
20599 Avoid exception during discovery
20920 Fixes for Q7/Q10 robots
roku Enhancements 20090 Refactor discovery to use UPnP
20110 Improve refresh job timing
20490 Update powerState when TV is offline
20561 Improve polling for TV status
Bug Fixes 20208 Unable to connect via host name
sbus Enhancements 20693 Add DateTime thing and allow on/off commands for color-channel
sensebox Enhancements 20188 Add unit hints for air pollution channels
senseenergy Bug Fixes 20482 Implement dirty on senseDevices to limit number of thing updates
sensibo Bug Fixes 20169 Fix initialization for half-included devices
sensorcommunity Enhancements 20369 Add radiation sensor
shelly Enhancements 20268 WebSocket keep alive for Gen2+ devices staying always connected
20632 Add support for Shelly Plug M Gen3
20813  Add support for Shelly Plug US Gen4 and Plus Plug CPM (Gen4)
20856 Add support for Shelly Pro Dimmer 2PM (SPDM-002PE01EU)
20888 Refactor initialization of boolean variables
20945 Provide unit hints for UoM channels
20967 Add support for Shelly BLU Motion ZB, BLU H&T Display ZB, BLU For/Window ZB, BLU Remote ZB
Bug Fixes 19229 Improve error handling for Gen1 (CoAP/CoIoT)
19894 Fix NullPointerException for PM Mini updates
19969  Refactor ShellyManagerCache cleanup
20069 Fix Shelly2RpcSocket concurrency issues
20248 Fix "duplicate id" in device log
20336 Misc fixes on ApiResult handling
20347 Fix DST issue
20396 Improve stability through better thread safety
20409 Fix thing lookup for inbound Gen2+ if FQDN name is used as device address
20463 Do not create WebSocket for Gen2 battery devices
20562 Fix state check when Gen2 battery device is online on API request
20811  Power Meter related descriptions and units fixed
20886 Fix BLU event reception after WiFi disconnect of gateway device
20932 Fix stopping sensor updates when using combo sensor connected to Shelly Addon
20965 Fix Shelly Plug S Gen 2 discovery
20995 Fix addon sensor read errors causing spurious 0 °C spike
21031 Add BLU packet time threshold
siemensrds Bug Fixes 20747 Fix url escaping
smhi Enhancements 20642 Use parameter API endpoint
Bug Fixes 20591 Fix channel thunderstorm_probability scale
snmp Enhancements 20835 Upgrade to snmp4j 3.10.0
solaredge Bug Fixes 20216 Fix EOFException during temporary internet connection loss (Live Data polling)
solarman Bug Fixes 20113 Fix definition for Deye SG01HP3
20303 Improve writing to Solarman registers
solax Enhancements 20660 Add missing channels for X1 Hybrid G4 inverter
Bug Fixes 20675 Add handler integration tests and fix missing X3 Mic/Pro G2 temperature channels
somfytahoma Enhancements 20432 Add closure channel and scaling for RS100 shutter motors
sonnen Enhancements 20337 Enable battery discharge to grid, add channel to vary battery charge/discharge rate
sonos Bug Fixes 20815 Remove undocumented Contact command support
sunsynk Bug Fixes 20431 Token refresh method changed to account sign in
synopanalyzer Enhancements 20193 Add IconProvider
systeminfo Enhancements 20558 Upgrade oshi-core to 6.11.1
Bug Fixes 20543 Fix storage name reporting
20544 Prevent noisy hostname-resolution logging
tado Enhancements 19766 Add rate limit info channels
Bug Fixes 21022 Fix NullPointerException causing binding to stop refreshing
tapocontrol Enhancements 19924 Add TP-Link HS200 Kasa Smart Wi-Fi Light Switch
20320 Recover automatically from expired KlapProtocol session
tasmotaplug Bug Fixes 20109 Fix command mapping for power channel 3
telegram Enhancements 20765 Persist message and callback IDs across restarts
teleinfo Enhancements 18738 Add support for D2L wifi dongle
tesla Enhancements 20144 Add a new "share" channel for setting navigation destinations
20737 Add representation property information
20892 Improve OFFLINE status description
teslapowerwall Bug Fixes 20979 Fix for binding staying offline after 401 and other small changes
teslascope Enhancements 20461 Support Personal Access Tokens in lieu of apikey
Bug Fixes 20045 Fix rediscovery of existing vehicle Things
20557 Improve handling of http 500/502 errors
20944 Fix multiple bugs and stability improvements
tibber Enhancements 20699 Introduce history values
tivo Enhancements 20787 Implement search channel
transform.vat Enhancements 20191 Update rates
tuya Enhancements 20428 Add missing "bitmap" DS type
20580 Add configurable TCP port
20680 Improve protocol 3.1 decryption detection
20760 Improve handling of battery devices
20836 Immediate discover after cloud login
20940 Improve channel categories
Bug Fixes 19930 Avoid refresh if there are no measurables
20042 Remove extraneous toLowerCase
20617 Fix unitHint set on non-dimension item types
20933 Percent channels can be dimmers
20937 Always update Channel list when initializing Things
21040 Avoid leaking polling jobs
unifi Enhancements 20598 Unifi family of addons
Bug Fixes 20534 Fix for CSRF error on Unifi OS
unifiprotect Enhancements 20480 Private API Refactor
Bug Fixes 19882 Various fixes
19968 Fix camera and doorbell motion events
20107 Don't recreate RTSP streams
velbus Enhancements 19919 New functionality & Bug fix
Bug Fixes 20151 Fix system types in update instructions
verisure Bug Fixes 20353 Fix NullPointerException for specific case in climate devices
vesync Bug Fixes 20236 Add auth V2 support
viessmann Enhancements 20300 Refactor channel commands and add units
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
20411 Fix parsing of unit Seconds
vigicrues Enhancements 20264 Adapt to new vigicrues api
visualcrossing Bug Fixes 19931 preciptype is a list of strings not a single value
volvooncall Bug Fixes 20784 Fix thing status text
wlanthermo Bug Fixes 20842 Deprecations
wled Bug Fixes 20345 Fix discovery inbox entry matching existing things
20427 Fix segment discovery inbox auto remove
xmppclient Bug Fixes 20220 Fix bundle load
20524 Fix xml parse and muc
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
2022 Add Refresh Channel Thing Action
Bug Fixes 2016 Correct the device Action IsFailedNode
zwavejs Bug Fixes 19934 Keep properties up-to-date (especially lastSeen)
20402 Fix connection recovery

Upgrade Process

Backup your configuration

If you are on openHABian, sudo openhabian-config menu option 50 will do for you,
else use sudo openhab-cli backup. Get the resulting file from $OPENHAB_USERDATA/backups, $OPENHAB_USERDATA is accessible as a Samba share. Using SSH it is /var/lib/openhab/ on your system.

If you run a Raspberry, get another SD card (an "Endurance" labelled one) and create a mirror copy.
openhabian-config menu option 54 will do for you on the live system, else there's tools such as dd or WinDiskImager.
Should you ever need to revert to your old openHAB system or to redo the upgrade process, simply change SD cards and start over from where you had started.

openHABian

If you are working with an openHABian setup,

check for compatibility

openHABian will refuse to install or upgrade to openHAB 5.2 when it detects a 32 bit operating system.
This is because openHAB needs Java 21 but as of today, there is no JVM 21 package available known to work on 32 bit ARM platforms.
Note: this is not about the processor type but about 32/64 bitness of the operating system.
There have been both types of openHABian images for Raspberries and many of you users will still be on the 32 bit OS.
Check the output of getconf LONG_BIT to see what you're on.

If you are on 64 bit, proceed to

upgrade

  1. Use SSH to connect to the command line and run sudo openhabian-config.
  2. When being asked, answer that you want to update openHABian (note that’s not about openHAB itself).
  3. If on Raspberry, it's optional but recommended to create an image copy of your SD card using menu option 54.
  4. Switching to openHAB 5.2.0 release depends on what version you’re upgrading from:

    a) If you have been running a 4.x or 5.x release version, select menu entry 03 “Install or upgrade to latest openHAB” option.

    b) If you have been running a snapshot or milestone release of 5.x, select the first entry in menu option 41 (“Release”).

If you are still on 32 bit OS, you can stay with your current openHAB 4 setup or do the upgrade to 64 bit as described in the openHAB 5.0.0 Release Notes.

Package-based Installations

APT (Debian / Ubuntu and derivatives)

Make sure that openHAB is sourced from the latest location, has the correct GPG signing key and that your system can download .deb packages via HTTPS by following the instructions for a stable installation in the docs.

If the above is correct, simply upgrade by using:

sudo apt-get update
sudo apt-get upgrade

Alternatively, you can force apt to install 5.2.0 and its optional add-ons with:

sudo apt-get install openhab=5.2.0-1

## optional add-ons for offline installation ##
sudo apt-get install openhab-addons=5.2.0-1

RPM

openHAB is also distributed in RPM packages. To use them, make sure that openHAB is sourced from the latest location, and has the correct GPG signing key for verification by following the stable installation instructions outlined in the docs.

If the above is correct, then simply upgrade using your systems package manager (yum, dnf, etc.)

sudo yum update

Alternatively, you can force apt to install 5.2.0 and its optional add-ons with:

sudo yum install openhab-5.2.0-1

## optional add-ons for offline installation ##
sudo yum install openhab-addons-5.2.0-1

Manual Installations

Official update scripts are available that let you update your 5.x installation to version 5.2:

Linux/macOS

  1. Change to your openHAB root directory (e.g. cd /opt/openhab)
  2. Create a backup by calling sudo ./runtime/bin/backup.
  3. Run the update command:
sudo ./runtime/bin/update 5.2.0

Windows

  1. Make a backup of your openHAB installation folder.
  2. Run PowerShell as administrator and change to your openHAB root directory (e.g. cd C:\openHAB)
  3. Run the update command:
. .\runtime\bin\update.ps1
Update-openHAB -OHVersion 5.2.0

Breaking Changes that Require Manual Interaction after the Upgrade

Changes in Core

  • Persistence extensions with QuantityType as input now return results in the item unit or logically derived unit instead of the system unit. This may require changes to rules if you relied on the return values to be in the system unit.

Changes in Main UI

  • oh-canvas-items now use 100% of the height their bounding box and center vertically in that bounding box. While this fixes incorrect behaviour, it might change the appearance of your oh-canvas-layout pages. In that case, you need to adjust the bounding boxes through their resize handles.
  • oh-category-axis startOnSunday parameter has been removed. For chartType = week, the chart will either start on Sunday or on Monday depending on your locale. For chartType = isoWeek, the chart will always start on Monday.

Changes in Add-ons

AhaWasteCollection Binding
  • A typo was corrected in the lightweight channel id, you may need to correct your configuration.
AirParif Binding
  • Due to API evolutions pollens related information have been removed. They are now provided by Atmo France Binding.
Corona Stats Binding
  • Due to EOL of the website, this add-on has been removed.
Matter Binding
  • Contact sensors have now a contact-statevalue (mapping to Contact items) instead of the previous booleanstate-statevalue (mapping to Switch items).
Xiaomi Wifi devices (Mi IO) Binding
  • Cloud login details have been depreciated at binding level. Add a new Cloud Connector Thing to to login with QR or userId.
MongoDB Persistence
  • Support for database 3.6.x has been dropped. The add-on requires database version 4.0 or later.
MyBMW Binding
  • Due to BMW security changes, this add-on does not work anymore and has been removed.
Piper TTS Voice
  • Voice UIDs now contain the model quality. You need to setup your default voice again and adjust your rules & scripts for the changed voice UIDs.
Teleinfo Binding
  • This binding has been rewritten to support the D2L ERL dongle. As a result, channels and channel types have changed, so you may need to recreate your Things and update your configuration.

Don't miss a new openhab-distro release

NewReleases is sending notifications on new releases.