Skip to content

openHAB 4.1 Release Notes

Kai Kreuzer edited this page Dec 22, 2023 · 6 revisions

This is the official release of openHAB 4.1.0.

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

New and Noteworthy

The openHAB 4.1 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.

openHAB 4.1 is backward compatible to openHAB 4.0 setups - there are only a few exceptions where manual action is required to adapt an existing setup, so please carefully check the section on breaking changes.

Quick links:

Relevant Changes

The following add-ons are newly introduced:

Add-on Type Issue
Govee Lan-API Binding #15696
Grundfos Alpha Binding #15907
PPC SMGW Binding #16017
Solax Binding #14880
TasmotaPlug Binding #15857

The following add-ons were removed from the distribution:

Add-on Type Reason
MyQ Binding Chamberlain decided to block 3rd party integrations
Action Template Interpreter Voice & Speech The functionality is now covered by the Standard Interpreter
Porcupine Keyword Spotter Voice & Speech Add-on was unmaintained

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

Type Issue Change
Enhancements 3503 Add currency handling
3564 Add interface to represent a remote keyword spotter
3597 Allow sending historic states and forecasts
3659 Add a YAML file provider for semantic tags
3698 Reduce collisions on exact match and use item synonyms
3729 Add caching for TagResource & De-duplicate code for caching
3735 Add new "staticIcon" parameter
3737 Upgrade JUPnP to 2.7.1
3738 Add string utils to core
3749 Expose ColorUtil methods to DSL rules
3751 Fix logging in AbstractProvider implementations
3766 Allow stopping play
3767 Migrate to java.nio.file.createTempFile
3796 Add uptime to /systeminfo endpoint
3798 Add dialog group and location
3802 Make QuantityType.toUnitRelative accept a String
3804 Provide information about widget label source to clients
3806 Service to find suggested add-ons to install
3809 Accept an optional icon for each value/label mapping
3810 Introduce "Buttongrid" as new sitemap element
3817 Upgrade Xtext/Xtend to 2.32.0, LSP4J to 0.21.0
3819 Add support for multiple AND conditions
3820 Add optional conditional rules for icon
3821 FolderObserver improvements
3824 Upgrade hivemq-mqtt-client to 1.3.3, Netty to 4.1.99.Final
3826 Upgrade CXF to 3.6.2
3838 Add caching for UoM info
3840 Use 'uid' instead of 'UID' as method parameters
3849 Add conversion for HSB to RGBW and back
3853 Support item descriptions in built-in interpreter
3859 Add log web socket
3879 Expose ColorUtil methods to DSL rules
3881 Add support for passing extra fields to oauth token request
3882 Extend rgbToHsb(PercentType[]) for RGBW
3884 Use a single thread to watch all event executors
3889 Add time-series support for websockets
3897 Support custom rules on item metadata
3921 Make logger for jar file add-ons configurable in UI
1588 Blacklist Karaf related bundles in Demo App
1589 Check that JVM version is 17
1591 Upgrade to Karaf 4.4.4
1613 New folder config/tags
Bug Fixes 3714 Fix CommunicationManager command handling
3727 Handle null value for relative & inverted props of filters
3730 Fix limitToOptions in script profile
3734 Check a label is provided when creating a new semantic tag
3748 Fix StackOverflowError in SemanticsMetadataProvider
3754 Fix CME in RuleEngineImpl
3756 Use workaround to fix high CPU usage by LinkedTransferQueue
3769 Fix sitemap visibility rule with blanks
3774 Suppress SseItemStates warnings during startup
3779 Fix GenericThingProvider
3781 Fix SAT and null analysis issues
3785 Fix concurrent use of a cache entry
3790 Update directory-watcher to 0.18.0
3792 Adjust QuantityType calculations for temperatures
3797 Fix countries and connection AddonInfo issues
3812 Sitemap Generator: Fix trailing space in state string
3837 Fixes source filter not working for GenericEventTrigger
3850 Fix UI defined sitemaps
3856 Improve FolderObserver ignored paths handling
3858 Fix thing upgrades for bridges
3874 Use a scheduled thread pool in JsonStorage + Bugfixes
3885 Do not leak running pools from the internal collection
3888 Fix AutoUpdatePolicy for channel
3906 Fix handling of mDNS instances when an IP address changed
3940 Improve HTTP 404 handling and logging
1559 Disable "Improved ZIP64 Extra Field Validation"
1561 Make sure updated log4j2.xml configuration is used
1579 Reencode the doorbell.mp3 sample file
UI Type Issue Change
Basic UI Enhancements 1998 Handle the new parameter "staticIcon"
2010 Add a new header line for image, chart and video elements.
2013 Add support for framework7 icons
2016 Upgrade to last version of Material icons
2018 Add a new setting to choose the nb of columns
2020 Add support for icons based on conditional rules
2085 Prefer icon over text in buttons (switch element)
2110 Prefer sitemap label to name in sitemap selection
2112 Hide header row if label not explicitly set
2162 Fix updating of the chart period parameter in URL
2187 Fix dark theme for selection popups
2195 Implement Buttongrid widget
Bug Fixes 2022 Input element: Fix visibility and label/icon color
Main UI Enhancements 1971 oh-colorpicker: Add defaultColor option
1983 Use dynamic links for docs
1985 Developer sidebar: Add search for transformations
1987 Add error page for initial REST request failure & Abort further load
1988 Persistence editor: Remove checks on save as not required anymore
1992 Blockly: Support String/Number/Quantity on eventcontext state/command
1993 Delay toast on SSE communication failure by one second
1994 Action module wizard: Update texts to mention scenes and scripts
1997 Redesign settings page & Add doc links
1999 Support staticIcon parameter in sitemap configuration
2000 Add Quantity support to round block
2009 Alexa metadata: Add UoM support to use new Item unit symbol property
2031 Allow stopping play
2037 Allow item xxx to be used for get xxx of item
2041 Support Quantity in more math blocks
2045 Sitemap parser parse and discard comments
2051 Add alexa air quality monitor + remote device types
2055 Adds an UI command Item
2064 Update Alexa color temperature supported item types
2068 Add CO2 measurement badge to location card
2073 Change setup wizard icon to choose add-ons to install
2074 Add routes for home page tabs
2078 Page edit: Add editing of tags
2083 Rule/script/scene edit: Update tag input & Refactoring
2084 Remove PNG icons from the classic icon set
2087 Items: Show non-semantic tags, relatesTo part of semantics & Use accordion tag input & Fix virtual box height
2088 Add intergrated Help Features
2093 Semantic model: Add options to display and search Item names and tags
2107 Things list: Add grouping by location & Display location in list entries
2116 Adapt movecontrol icon to bright and dark themes
2120 Item edit: Dynamically load UoM dimensions
2122 Rules list: Add filtering by (multiple) tags
2126 Set unit metadata & state description pattern when creating UoM Item
2131 Things: Add copy channel functionality
2132 Add copy rule functionality
2138 Developer sidebar: Support searching (in) sitemaps
2144 Support configurable visibility of semantic model cards
2145 Sitemap editor: Support AND conditions and icon rules
2154 Create aux badge for humidity setpoints similar to temperature badge
2163 Cosmetic changes on cancel and reschedule timer blocks
2174 Add support for getting persistence previous state value as number
2175 Add parse number block
2176 Add event available
2186 Sitemap Editor: Extend chart period config for ISO8601
2189 Persistence edit: Add forecast strategy
2190 Extend chart periods to 3Y, 5Y and 10Y
2191 Model Item picker: Add button to expand or collapse model
2193 Sitemap Editor: Buttongrid support
2208 Developer sidebar: Add search for persistence configs & Style enhancements
2210 Add block to get hue, saturation and brightness from Color Item
2212 Help sidebar & Overview page: Respect release type for doc links & Add persistence FAQs
2214 Support time in oh-input widget
2218 Sitemap editor: Move collapse chevron for toolbar to the left
2222 Add panel for voiceSystem metadata
2224 Model page: Add expand/collapse model button
Bug Fixes 1984 Developer sidebar: Fix Thing pinning fails
1986 Semantic tags: Fix missing translations in case of missing label
1989 oh-colorpicker: Fix command not sent when state null & style not accepted & cosmetic error on missing defaultColor
1995 oh-trend: Fix type of trendlineSampling parameter
2024 Fix missing root semantic classes (e.g. Equipment)
2026 Fix channel for Thing trigger cannot be chosen
2029 Fix missing labels for semantic cards
2030 Item details: Fix metadata error thrown when opened
2032 Fix timer remove regression
2033 Sitemap editor: Fix frequency and refresh parameters
2034 Fix add-ons missing from About Details
2035 Add help buttons for missing sections with releasy type dependent URL
2036 fix uom block output type
2040 Fix ZDT comparison between block on GraalJS
2053 Fixes/Improvements for sidebar highlighting, settings page & add-on store
2061 Profile page: Only show latest 10 sessions
2066 Ensure semantic model pages are built after tags are loaded
2075 Fix SSE failure toast container not removed
2079 Fix missing jar add-ons on settings page
2090 Fix decimal formatting for oh-stepper
2091 Sitemap editor: Trim spaces from color value
2094 Fix oh- components cannot be configured in action modals
2125 Unwrap command Item picker from f7-list-item
2146 Fix oh-clock context in clock card
2159 Fix error when actionAnalyzerItems value is a string
2160 Fix invalid chart period "3M" of sitemaps
2180 Fix developer sidebar conceals "Other Apps" panel
2184 Items list: Fix searchbar broken after Items list update & Fix search query not stored
2194 Fix alexa item group type parameter support
2203 Rule edit: Only save rule if it has changed when opening script editor
2215 oh-input: Update component docs & Minor fixes
2217 Exclude ruletemplates, UI Widgets and block libraries from add-on settings menu list
2221 Fix unwanted model card back navigation
2226 Disable suggestion for installed add-ons
Add-on Type Issue Change
androiddebugbridge Enhancements 15788 Reconnect on max timeouts and improve volume channel
androidtv Enhancements 15317 Add gtvEnabled option
Bug Fixes 15453 Fix GoogleTV Login Error
avmfritz Bug Fixes 15479 Fix NPE when Fritz!Box sends empty alert state element
bluetooth Bug Fixes 15320 Fix ArrayStoreException
bluetooth.bluez Bug Fixes 15347 Fix NullPointerException during discovery
boschshc Enhancements 15752 Add scenario channel
16021 Add support for motion detector illuminance sensor
Bug Fixes 15899 Update active profile of intrusion detection system
bticinosmarter Bug Fixes 15474 Fix activationdate parsing
chatgpt Enhancements 15385 Add support for LocalAI and other compatible services
Bug Fixes 15451 Set proper default values for channel configuration
15578 Fix config option provider to only become active for chatgpt things
chromecast Bug Fixes 15357 Fix STOP command
daikin Enhancements 15456 Support BRP069A81 adapter
deconz Enhancements 15856 Support window covering controller
denonmarantz Enhancements 15539 Add additional input sources for Denon DRA-100
Bug Fixes 15422 Fix NullPointerException on connection problem
digitalstrom Bug Fixes 15319 Fix StringIndexOutOfBoundsException
dwdunwetter Bug Fixes 15405 Improve server problem handling
e3dc Enhancements 15691 State pattern with Percent as default for QuantityType:Dimensionless
easee Enhancements 14614 Migrate charger state API endpoint, add channels
14866 Enable write support for smartCharging channel
15538 Simplify determination of start/stop status due to recent API changes
Bug Fixes 15501 Fix date formatting issue
ecovacs Enhancements 16022 Add some new models to device database
ecowatt Enhancements 15953 Add support for API version 5
energidataservice Enhancements 15621 Add filter for Aal Elnet
15636 Add support for reduced electricity tax
15737 Add discount tariffs for Aal Elnet, Dinel, Sunds Net and Tarm Elværk Net
15807 Adjust filter for Elnet Midt
15864 Add support for persisting historical and upcoming prices
15938 Rename channels net-tariff and transmission-net-tariff
16070 Add UoM support for energy prices
enocean Enhancements 15506 Fix humidity and temperature readings for EEP family A5_10
Bug Fixes 15302 Fix unusable bundle after a refactoring about null annotation
15329 Fix disposal of running tasks
enphase Enhancements 15077 Add Entrez/JWT support for newer software versions of Envoy
feed Bug Fixes 15476 Upgrade jdom2 to 2.0.6.1
fineoffsetweatherstation Bug Fixes 15853 Fix wrong handling temperature reading for of WH34
15979 Fix handling of undefined lightning distance and time
folderwatcher Bug Fixes 15428 Improve Exception handling
freeboxos Enhancements 15299 Support randomized MAC addresses by using mDNS name for Wi-Fi hosts
Bug Fixes 15307 Enhance freeplug data interpretation
15543 Add websocket connection refresh mechanism
15813 Fix NullPointerException when updating inactive Player
fronius Enhancements 15431 Support multiple inverters in powerflow data
gardena Enhancements 15523 Improve and fix UoM support
Bug Fixes 15390 Fix close all valves command
googletts Bug Fixes 15305 Avoid UnsupportedOperationException during dispose
15747 Fix authentication after communication error
GPIO Enhancements 13643 Update GPIO binding to fix issues and provide new functionality
gpstracker Bug Fixes 15337 Fix NumberFormatException
haywardomnilogic Bug Fixes 15515 Fix sending command to channel pumpSpeedPercent
hdpowerview Enhancements 15880 Improve color channel for Repeater and remove redundant brightness channel
homematic Enhancements 15641 Expansion of virtual data channel for all window/door contacts
Bug Fixes 15760 Adjust handling empty values in AbstractTypeConverter
15906 Fix duplication of LONG_REPEATED events for HM devices
http Bug Fixes 15751 Fix brightness
hue Enhancements 15388 Support smart scenes (API v2)
15408 Support timed effects (API v2)
15477 Improve connection stability (API v2)
15552 Add channels for time of last sensor update (API v2)
15601 Support new home security products (API v2)
15732 Support additional effect types (API v2)
15815 Reduce log level for logging of unknown resource types (API v2)
15984 Use auto update policy 'veto' for light channels (API v2)
16020 Improve handling of unknown resource ID (API v2)
Bug Fixes 15169 Fix reconnection, parallel commands, trigger channels, and light level formula
15316 Reintroduce LK Wiser dimmer work-around for API v2
15324 Fix bug due to parallel PUT commands (API v2)
15475 Fix exception text in bridge status description (API v2)
15622 Fix NUPnP discovery after firmware change
15736 Fix channel refresh (API v2)
15905 Fix multiple state updates (API v2)
15976 Fix handling of identical scene names (API v2)
15999 Fix edge cases for broken lights (API v2)
16018 Fix scene channel updates (API v2)
16038 Re-create missing scene channel (API v2)
influxdb Enhancements 15452 Fix exception handling and improve some type conversions
Bug Fixes 15879 Improve connection handling
ipcamera Bug Fixes 15119 Fix connection checks with ONVIF cameras with no snapshots
15613 Fix Hikvision cameras stay offline when a 401 reply is given with no www-authenticate header
15707 Handle empty snapshotUrls and XML encoded characters
15943 Fix Reolink alarms not working after a reconnect
jdbc Enhancements 15412 Upgrade SQLite JDBC driver to 3.42.0.0
15434 Improve conversion of database value to item state
15726 Upgrade H2 to 2.2.224
15802 Upgrade MySQL Connector/J to 8.1.0
Bug Fixes 15801 Process operations asynchronously
15877 Fix addon id for SQLite
Jellyfin Enhancements 16013 Fix how refresh is handled
jrubyscripting Enhancements 15618 Inject script context as global
Bug Fixes 15438 Allow configuration from add-on page
jsscripting Enhancements 15547 Rename library injection parameter & Improve docs
16069 Upgrade openhab-js to 4.7.1
Bug Fixes 15308 Fix timerId not returned by JS timer methods
15336 Upgrade openhab-js to fix cached library injection
15356 Fix incorrect cast
Juicenet Bug Fixes 15566 Fix Charging state controls and override functionality
kaleidescape Enhancements 15663 Update Play/Pause status to Player channel widget
15820 Register connection in Kaleidescape System log
keba Enhancements 15531 Split channel ENABLED to USER and SYSTEM channels
knx Enhancements 15297 Refactor manufacturer map
16042 New modified to set mainGA write-only
15727 Add integration tests
16033 Add discovery service
Bug Fixes 15573 Adapt to core, temperature differences
15723 Fix problem with DPT 251.600
15730 Fix IOOB exception with missing DPT in number channels
lcn Enhancements 15545 Fix deprecation warnings, refactor, add test cases
Bug Fixes 15488 Fix problems with fingerprint codes which were received in decimal
15649 Fix processing of logic function "all fulfilled" status message
lifx Enhancements 15957 Add support for new LIFX products
lutron Enhancements 15541 Add support for RA3
luxtronikheatpump Bug Fixes 15855 Fix control signal circulating pump
microtik Enhancements 15362 Fix date format support in firmware v7.10
miele Enhancements 15620 Interpret more states as appliance being switched on
Bug Fixes 15774 Rename channel powerConsumption to energyConsumption and set display unit to litres for waterConsumption
miio Enhancements 14210 Add support Mi Robot Vacuum-Mop 2 Pro (ijai.vacuum.v3)
15358 Add support for Roborock Q Revo
15582 Add DreameBot L10s Ultra
15586 Add support for newer Roborock vacuums
15591 Add new robo map blocks to map parser
15675 New gen vacuums cleaning map and rooms
15676 Add support "Mi Smart Antibacterial Humidifier" -
Bug Fixes 15611 Fix reported brightness for yeelight
15944 Fix cleaning record for newer vacuums
millheat Enhancements 15342  Increase http comm timeout to 30 seconds
modbus Enhancements 16054 Improve error message if data thing is configured for reading but not connected to a polling bridge.
monopriceaudio Enhancements 16043 Add support for 4 zone model
Bug Fixes 15536 Fix reconnect error race condition
mqtt Enhancements 15872 Add Topic Name for Incoming Payload Not Supported
15897 Interpet incoming NaN as UNDEF for NumberValues
mqtt.espmilighthub Enhancements 13801 Use system channel types for color temp and brightness
Bug Fixes 16066 Use ColorUtil instead of deprecated HSBType.fromXY
mqtt.homeassistant Enhancements 14241 Add support for Update component
14839 Support color temp on JSON schema lights
15875 Improve Cover support
15892 Add support for Button component
15914 Implement effect channel for light
15916 Add support for Scene component
15918 Handle empty device name
15937 VETO updates to read only channels
15977 Handle multiple availability topics
Bug Fixes 15427 Handle null component name
15925 Interpret a dimmable light as OFF properly from zigbee2mqtt
mybmw Enhancements 14452 Upgrade to new BMW API
myStrom Enhancements 15294 Add energy consumption since last API call channel for MyStrom Plug
neeo Bug Fixes 15571 Convert to OH jetty HttpClient
neohub Bug Fixes 15743 Avoid too frequent requests to hub
netatmo Enhancements 15533 Handle new event types
15590 Add a buffer to lower Weather API requests
15860 Accept 'topology_changed' webhook event type
Bug Fixes 15463 Add "thingTypeVersion" property at thing creation
15587 Take in account errored modules/devices for Security/Energy areas
15664 Fix presence warning every three minutes when not siren exists
15686 Avoid double refresh of weather channels
15808 Add and correct webhook events
15866 Enhance errored modules handling
16056 Ensure to close all scheduled jobs
networkupstools Enhancements 15812 Add battery.temperature channel
nuvo Enhancements 15292 Include NuvoNet source favorites in zone favorite channel
opengarage Enhancements 14028 Add door transition status support
opensprinkler Enhancements 14998 Make http connection more resilient
15410 Fix Program names and add new features for firmware 2.2.0
Bug Fixes 16080 Fix excessive WARN in logs due to wifi dropouts, and current displays as 0
openthermgateway Bug Fixes 15355 Remove 'reserved' channels (with invalid channelUIDs)
openuv Bug Fixes 15465 Fix NullPointerException in IconProvider
openweathermap Enhancements 15963 Add support for persisting OneCall API forecasts
openwebnet Enhancements 15837 Add totalizers channels for energy kWh consumed for today and current month
15924 Fix CEN/CEN+ scenario control buttons param descriptions
oppo Enhancements 15662 Update Play/Pause status to Player channel widget
paradoxalarm Enhancements 14557 Implement zone bypass command and additional zone states
14618 Implement detailed partition state
Bug Fixes 15441 Fix Paradox EVOHD zone parsing failure
pilight Enhancements 15986 Add option to disable background discovery for a given pilight bridge thing
Bug Fixes 15791 Fix background discovery
plex Enhancements 15306 Use https for local connections
plugwise Bug Fixes 15339 Prevent possible chomp bug
pulseaudio Bug Fixes 15314 For source, default timeout should be disconnection ASAP
pushover Enhancements 15289 Add support for expiring messages
radiothermostat Enhancements 15492 Disable Remote Temp and Message Area on shutdown
renault Enhancements 15368 Small logging improvements
roku Enhancements 15542 Add power, powerState, player, and activeAppName
15932 Improve exception handling for failed http connections
Bug Fixes 15900 Ignore invalid elapsed/total time values
rustpotterks Enhancements 15556 Upgrade to version 3
senec Bug Fixes 15535 Fix for Senec firmware update
sensorcommunity Enhancements 15692 State pattern for dB, Percent and Microgram/m3 added
shelly Enhancements 15401 BLU Motion, optimize ShellyManager for BLU devices
15950 Support for Plus Dimmer 10v
Bug Fixes 15530 Fix UNI support up to three DS18B20 sensors
15721 Always try to stop WebSocketClient
15798 Fix resource leak, BLU script installation, TRV init, NPE on IPv6 mDNS discovery
15898  Fix Gen2 auth, improved security for Gen1 auth, improved discovery
15922 Misc changes (small fixes, log improvements, hardened leak prevention on
somfytahoma Enhancements 15489 Improvements to avoid cloud login throttling
15671 Add support for noise and CO2 sensor
Bug Fixes 15442 Fix NullPointerException when HttpClient fails to start
sonnen Bug Fixes 15384 Fix channel types, Energy should be Power
sonos Enhancements 15706 Add support for Move 2
15712 Add Dolby Digital Plus 2.0 and fix Dolby Digital 2.0
15831 Add TrueHD5.1 and normalize Atmos
sonyprojector Enhancements 15753 Add new channel to send infrared remote commands
speedtest Enhancements 15278 Add timestamp and result image channel, update thing description
squeezebox Enhancements 15997 Add UoM support for time channels
surepetcare Bug Fixes 15411 Fix possible timeout bug
16087 Fix DateTimeParseException
16088 Fix NullReferenceException
synop Bug Fixes 16024 Enhance error handling when no value is provided for windDirection
tellstick Bug Fixes 15596 Fix local bridge handler update
tesla Enhancements 15705 Add channels for active routing
15711 Remove the minimum 5A charge current limit
15816 Add channels for software update
16030 Hide refresh token in the UI as it is considered a secret
Bug Fixes 15756 Fix update timestamp and null exception for offline state
16029 Fix location with firmware 2023.38.x
16032 Fix "jumping" location updates
tr064 Bug Fixes 15415 Fix clearing of auth (results)
transform.vat Enhancements 15873 Add support for time series
twitter Enhancements 15809 Rename binding to X
vigicrues Bug Fixes 15832 Fix NullPointerException when API does not provide station details
xmltv Enhancements 15467 Avoid XXE injection
yamahareceiver Bug Fixes 15510 Show correct status detail on failure
zigbee Enhancements 809 Update ZSS library to 1.4.12
Bug Fixes 814 Remove deprecations from battery voltage converter
817 Fix battery voltage cluster reference
zwave Bug Fixes 1881 Fix Attempting to add listener when controller is null

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.

If you are working with an openHABian setup,

  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 needed check which version you run via menu option 00.
  4. If on Raspberry, create an image copy of your SD card using menu option 54.
  5. Switching to openHAB 4.1.0 release depends on what version you’re upgrading from:
    a) If you have been running a 4.0 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 4.1, select the first entry in menu option 41 (“Release”).
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.

Please specifically note that the "old" signing key expired on July 24, 2023 - if you are still using this, you will need to download the latest key. See https://community.openhab.org/t/linux-repo-public-key-is-expiring-soon/147905 for details.

If the above is correct, simply upgrade by using:

sudo apt-get update
sudo apt-get upgrade

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

sudo apt-get install openhab=4.1.0-1

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

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 4.1.0 and its optional add-ons with:

sudo yum install openhab-4.1.0-1

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

Official update scripts are available that let you update your 4.0 installation to version 4.1:

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 4.1.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 4.1.0

Changes in Add-ons

Energi Data Service Binding
  • The channels 'net-tariff' and 'transmission-net-tariff' have been renamed to 'grid-tariff' and 'transmission-grid-tariff' respectively. Items should be relinked to the new channels.
Hue Binding
  • The auto update policy for API v2 light channels has been changed to avoid multiple state updates. For this to work, you may need to remove and create your things again in case your things were previously created using UI.
JavaScript Scripting Automation
  • The "useIncludedLibrary" configuration parameter has been renamed to "injectionCachingEnabled". In case you changed it, make sure to apply that change to the new parameter.
JDBC Persistence
LuxtronikHeatpump Binding
  • The channel 'controlSignalCirculatingPump' has been changed to type 'Number:Dimensionless'. Items linked to this channel will need to have their Type manually updated.
Miele@home Binding
  • The channel 'powerConsumption' has been renamed to 'energyConsumption'. Items should be relinked to the new channel.
MQTT EspMilightHub Binding
  • Color bulbs no longer have a level channel. You may need to re-add your things for it to be removed. Link to the colour channel instead, even for Dimmer items.
MyBMW Binding
  • Vehicle channels "charge-info" and "motion" removed, "charge-remaining", "last-fetched", "estimated-fuel-l-100km" and "estimated-fuel-mpg" added. Image options changed - now "VehicleStatus", "FrontView", "RearView", "FrontLeft" and "FrontRight" are available.
Twitter Binding has become X
  • All related references to Twitter and Tweets have been replaced, please check your configuration (rules, actions, channels etc).