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:
- Notes about new add-ons
- Notes about removed 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 |
---|---|---|
Govee Lan-API | Binding | #15696 |
Grundfos Alpha | Binding | #15907 |
PPC SMGW | Binding | #16017 |
Solax | Binding | #14880 |
TasmotaPlug | Binding | #15857 |
Removed Add-ons
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 |
Runtime
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 | |
User Interfaces
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-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 |
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 |
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,
- Use SSH to connect to the command line and run
sudo openhabian-config
. - When being asked, answer that you want to update openHABian (note that’s not about openHAB itself).
- If needed check which version you run via menu option 00.
- If on Raspberry, create an image copy of your SD card using menu option 54.
- 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”).
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.
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
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 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
Manual Installations
Official update scripts are available that let you update your 4.0 installation to version 4.1:
Linux/macOS
- Change to your openHAB root directory (e.g.
cd /opt/openhab
) - Create a backup by calling
sudo ./runtime/bin/backup
. - Run the update command:
sudo ./runtime/bin/update 4.1.0
Windows
- Make a backup of your openHAB installation folder.
- Run PowerShell as administrator and change to your openHAB root directory (e.g.
cd C:\openHAB
) - Run the update command:
. .\runtime\bin\update.ps1
Update-openHAB -OHVersion 4.1.0
Breaking Changes that Require Manual Interaction after the Upgrade
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
- The add-on now uses H2 database 2.2. If you use H2 for storing data, your database needs to be migrated as described in https://h2database.com/html/migration-to-v2.html. It is also required to add ';NON_KEYWORDS=VALUE' to your H2 JDBC URL. See also openhab/openhab-addons#15726 for a Bash migration script.
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 thecolour
channel instead, even forDimmer
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).