openHAB 4.0 Milestone discussion

I upgraded from OH3 to OH4 and getting this error

 [ERROR] [rketplace.AbstractRemoteAddonService] - Failed to read JSON database, trying to purge it. You might need to re-install [] from the 'marketplace' service.

How to solve it?

In addition also this warnings

 [WARN ] [core.karaf.internal.FeatureInstaller] - The transformation add-on 'javascript' does not exist - ignoring it.

I read the release notes and know that javascript Transformation no longer exists. Is there a step to step guide how to replace it?

Is the cause of this issue the Changes in Units of Measurement (UoM)

HTTP ERROR 500 java.lang.NumberFormatException: Character N is neither a decimal digit number, decimal point, nor "e" notation exponential mark.
URI:	/basicui/app
STATUS:	500
MESSAGE:	java.lang.NumberFormatException: Character N is neither a decimal digit number, decimal point, nor "e" notation exponential mark.
SERVLET:	/basicui/app
CAUSED BY:	java.lang.NumberFormatException: Character N is neither a decimal digit number, decimal point, nor "e" notation exponential mark.

Log entry

[WARN ] [org.eclipse.jetty.server.HttpChannel] - /basicui/app
java.lang.NumberFormatException: Character N is neither a decimal digit number, decimal point, nor "e" notation exponential mark.
	at java.math.BigDecimal.<init>(BigDecimal.java:586) ~[?:?]
	at java.math.BigDecimal.<init>(BigDecimal.java:471) ~[?:?]
	at java.math.BigDecimal.<init>(BigDecimal.java:900) ~[?:?]
	at java.math.BigDecimal.valueOf(BigDecimal.java:1368) ~[?:?]
	at tech.units.indriya.function.DefaultNumberSystem.multiplyWideAndNarrow(DefaultNumberSystem.java:773) ~[?:?]
	at tech.units.indriya.function.DefaultNumberSystem.multiply(DefaultNumberSystem.java:167) ~[?:?]
	at tech.units.indriya.function.DefaultNumberSystem.divide(DefaultNumberSystem.java:172) ~[?:?]
	at tech.units.indriya.internal.function.Calculator.divide(Calculator.java:143) ~[?:?]
	at tech.units.indriya.function.LogConverter.convertWhenNotIdentity(LogConverter.java:138) ~[?:?]
	at tech.units.indriya.function.AbstractConverter$Pair.convertWhenNotIdentity(AbstractConverter.java:450) ~[?:?]
	at tech.units.indriya.function.AbstractConverter$Pair.convertWhenNotIdentity(AbstractConverter.java:450) ~[?:?]
	at tech.units.indriya.function.AbstractConverter.convert(AbstractConverter.java:238) ~[?:?]
	at org.openhab.core.library.types.QuantityType.toUnit(QuantityType.java:270) ~[?:?]
	at org.openhab.core.library.types.QuantityType.toInvertibleUnit(QuantityType.java:306) ~[?:?]
	at org.openhab.core.ui.internal.items.ItemUIRegistryImpl.getLabel(ItemUIRegistryImpl.java:419) ~[?:?]
	at org.openhab.ui.basic.internal.render.AbstractWidgetRenderer.preprocessSnippet(AbstractWidgetRenderer.java:130) ~[?:?]
	at org.openhab.ui.basic.internal.render.AbstractWidgetRenderer.preprocessSnippet(AbstractWidgetRenderer.java:113) ~[?:?]
	at org.openhab.ui.basic.internal.render.TextRenderer.renderWidget(TextRenderer.java:57) ~[?:?]
	at org.openhab.ui.basic.internal.render.PageRenderer.renderWidget(PageRenderer.java:199) ~[?:?]
	at org.openhab.ui.basic.internal.render.PageRenderer.processChildren(PageRenderer.java:165) ~[?:?]
	at org.openhab.ui.basic.internal.render.PageRenderer.processChildren(PageRenderer.java:186) ~[?:?]
	at org.openhab.ui.basic.internal.render.PageRenderer.processPage(PageRenderer.java:130) ~[?:?]
	at org.openhab.ui.basic.internal.servlet.WebAppServlet.service(WebAppServlet.java:170) ~[?:?]
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:584) ~[bundleFile:4.0.4]
	at org.ops4j.pax.web.service.spi.servlet.OsgiInitializedServlet.service(OsgiInitializedServlet.java:102) ~[?:?]
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799) ~[?:?]
	at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1656) ~[?:?]
	at org.ops4j.pax.web.service.spi.servlet.OsgiFilterChain.doFilter(OsgiFilterChain.java:100) ~[?:?]
	at org.ops4j.pax.web.service.jetty.internal.PaxWebServletHandler.doHandle(PaxWebServletHandler.java:310) ~[?:?]
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[?:?]
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:600) ~[?:?]
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[?:?]
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[?:?]
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) ~[?:?]
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[?:?]
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1440) ~[?:?]
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[?:?]
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:505) ~[?:?]
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) ~[?:?]
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[?:?]
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1355) ~[?:?]
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[?:?]
	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:234) ~[?:?]
	at org.ops4j.pax.web.service.jetty.internal.PrioritizedHandlerCollection.handle(PrioritizedHandlerCollection.java:96) ~[?:?]
	at org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:731) ~[?:?]
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[?:?]
	at org.eclipse.jetty.server.Server.handle(Server.java:516) ~[?:?]
	at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:487) ~[?:?]
	at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:732) ~[?:?]
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:479) ~[?:?]
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277) ~[?:?]
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) ~[?:?]
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) ~[?:?]
	at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) ~[?:?]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338) ~[bundleFile:9.4.50.v20221201]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315) ~[bundleFile:9.4.50.v20221201]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173) ~[bundleFile:9.4.50.v20221201]
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131) ~[bundleFile:9.4.50.v20221201]
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:409) ~[bundleFile:9.4.50.v20221201]
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883) ~[bundleFile:9.4.50.v20221201]
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034) ~[bundleFile:9.4.50.v20221201]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]

How do I solve this? and how do I find out which item is the issue?

Hi,
I have tried to upgrade to M3 on several installations (Ubuntu/Debian/dietPi), but package installation is not offering the new version.

Upgrading to a new SNAPSHOT is working
Setting source to testing (Milestone) is not offering M3. I can see a difference in package size retreived from “apt upgrade” :

SNAPSHOT (unstable)
Holen:5 https://openhab.jfrog.io/artifactory/openhab-linuxpkg unstable InRelease [90,4 kB]
Holen:6 https://openhab.jfrog.io/artifactory/openhab-linuxpkg unstable/main amd64 Packages [165 kB]
Milestone (testing)
Holen:5 https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing InRelease [12,5 kB]
Holen:6 https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages [8.084 B]

Anybody else having issues with apt upgrades ?

@Benjy Any idea ?

For me it was OK for Milestone

Get:1 https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main armhf openhab all 4.0.0~M3-1 [103 MB]
Get:2 https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main armhf openhab-addons all 4.0.0~M3-1 [382 MB]

In M3 these bindings continue to have the 2 minute startup delay: daikin miio http (the SmartHome/J version)

Just wanted to let you know that It is still present in M3

Logging in as openhab
Failed to load native library:jansi-2.4.0-46a31a7848b558ae-libjansi.so. osinfo: Linux/arm
java.lang.UnsatisfiedLinkError: /var/lib/openhab/tmp/jansi-2.4.0-46a31a7848b558ae-libjansi.so: /var/lib/openhab/tmp/jansi-2.4.0-46a31a7848b558ae-libjansi.so: cannot open shared object file: No such file or directory

It was already reported here by few users for previous milestone build.

You have this issue to follow the progress:

Note that a delay of 2 minutes can be normal at first startup.

Daikin and http bindings are not identified in that issue as being potentially concerned by this delay. That is strange.

1 Like

Thanks, so there seems to be an issue with the amd64 packages.

I’m having a look, but there does seem to be the package there:

ben@ubuntutest:~$ sudo apt update
Get:6 https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing InRelease [12.5 kB]
Get:7 https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages [8084 B]
Fetched 8084 B in 4s (1886 B/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
107 packages can be upgraded. Run 'apt list --upgradable' to see them.

ben@ubuntutest:~$ sudo apt-cache madison openhab
   openhab | 4.0.0~M3-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 4.0.0~M2-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 4.0.0~M1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages

What’s the output of apt-cache madison openhab?

Strange, it is there, but still :

OK:8 https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing InRelease
Holen:9 http://de.archive.ubuntu.com/ubuntu jammy-security/main amd64 Packages [396 kB]
Holen:10 http://de.archive.ubuntu.com/ubuntu jammy-security/main Translation-en [114 kB]
Holen:11 http://de.archive.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [269 kB]
Holen:12 http://de.archive.ubuntu.com/ubuntu jammy-security/restricted Translation-en [39,5 kB]
Holen:13 http://de.archive.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [723 kB]
Holen:14 http://de.archive.ubuntu.com/ubuntu jammy-security/universe Translation-en [126 kB]
Holen:15 http://de.archive.ubuntu.com/ubuntu jammy-security/universe amd64 c-n-f Metadata [14,6 kB]
Es wurden 3.719 kB in 1 s geholt (3.935 kB/s).
Paketlisten werden gelesen… Fertig
Abhängigkeitsbaum wird aufgebaut… Fertig
Statusinformationen werden eingelesen… Fertig
Alle Pakete sind aktuell.
hmerk@smarthome:/etc/apt$ apt-cache madison openhab
   openhab | 4.0.0~M3-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 4.0.0~M2-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 4.0.0~M1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.4.4-2 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.4.4-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.4.3-2 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.4.3-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.4.2-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.4.1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.4.0-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.4.0~RC1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.4.0~M6-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.4.0~M5-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.4.0~M4-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.4.0~M3-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.4.0~M2-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.4.0~M1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.3.0-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.3.0~RC1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.3.0~M7-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.3.0~M6-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.3.0~M5-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.3.0~M4-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.3.0~M3-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.3.0~M2-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.3.0~M1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.2.0-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.2.0~RC1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.2.0~M5-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.2.0~M4-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.2.0~M3-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.2.0~M2-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.2.0~M1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.1.1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.1.0-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.1.0~RC1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.1.0~M5-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.1.0~M4-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.1.0~M3-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.1.0~M2-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab | 3.1.0~M1-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.0.4-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.0.3-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.0.2-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.0.1-2 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages
   openhab |    3.0.0-1 | https://openhab.jfrog.io/artifactory/openhab-linuxpkg testing/main amd64 Packages

Strange indeed - is the package on hold? (apt-mark showhold)

If so: (sudo apt-mark unhold openhab)

If not, try forcing the install: (sudo apt install openhab=4.0.0~M3-1)

Are you trying to upgrade from a previous milestone release or from snapshot?

When I was on SNAPSHOT and wanted to upgrade to a more recent milestone, that was not possible without explicitely specifying the package version because for apt snapshot → milestone seems to be a downgrade.

My attempt to upgrade from 4.0.0.M2 to 4.0.0.M3 yesterday via ‘apt full-upgrade’ failed during the “JSON Database upgrade tool” process with the following java error. The upgrade process hung at that point and seemingly couldn’t be killed. To recover, I rebooted the system and restored a system disk full image backup that I had created immediately prior to attempting the upgrade. Sorry, I only have the information that I could screen capture and don’t have more log capture or other info. Anyone have any thoughts?

[openHAB] Running JSON Database upgrade tool (${OPENHAB_RUNTIME}/bin/upgradetool.jar).
[main] INFO org.openhab.core.tools.internal.Upgrader - Copying item unit from state description to metadata in database '/var/lib/openhab/jsondb/org.openhab.core.items.Item.json'
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQTH003_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQTH004_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQWD006BasementBath_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQTH002_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQWD001Dishwasher_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQTH001_Pressure: Wrote 'unit=kPa' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQTH003_Temperature: Wrote 'unit=°C' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBTUTH001_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - SKY2F016TH3_Temperature: Wrote 'unit=°C' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQTH002_Pressure: Wrote 'unit=kPa' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQWD002Laundry_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQWD005Fridge_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQTH002_Temperature: Wrote 'unit=°C' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQWD004EnsuiteBath_BatteryVoltage: Wrote 'unit=V' to metadata.
[main] INFO org.openhab.core.tools.internal.Upgrader - ZBAQCT001_BatteryVoltage: Wrote 'unit=V' to metadata.
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "String.contains(java.lang.CharSequence)" because "pattern" is null
        at org.openhab.core.tools.internal.Upgrader.lambda$0(Upgrader.java:104)
        at java.base/java.util.concurrent.ConcurrentHashMap$KeySetView.forEach(ConcurrentHashMap.java:4706)
        at org.openhab.core.tools.internal.Upgrader.itemCopyUnitToMetadata(Upgrader.java:93)
        at org.openhab.core.tools.UpgradeTool.main(UpgradeTool.java:79)


1 Like

A fix has already been proposed: Fix NPE in UpgradeTool when no pattern present by J-N-K · Pull Request #3630 · openhab/openhab-core · GitHub. Press Ctrl-C to end the hanging tool.

1 Like

Upgrade fro SNAPSHOT to M3. This was possible for openHAB 3.4 without any issue on my side.

I am not sure if I made some mistake or if this might be a bug.

As I had to review my unit of measurement configuration before upgrading to M3 I wanted to adapt my KNX configuration to use units as well.

I have the following KNX thing definition for absolute humidity:

...
Type number : Feuchte_Abs_Keller_HV  "Feuchte abs. Keller HV"  [ ga="14.017:11/1/203" ]
...

With the following item attached to the channel:

Number:Density Feuchte_Abs_Keller_HV "Feuchte abs. Keller HV [%.2f g/m³]"    <water>      (gMesswerte, gSemTempHumKellerHV)   ["Measurement", "Humidity"] { unit="g/m³", channel="knx:device:bridge:knx-tw-1_1_200:Feuchte_Abs_Keller_HV",                                                                          widgetOrder="6204" }

I checked with a KNX bus monitor, the value is indeed send as g/cm³, e.g. the device sends 0x410C0000 , which, as float, is 8.75. But in the UI the value is shown as 8750 g/m³.

As I understood it, the metadata unit=“g/m³” should have ensured, that the value is in the correct unit, but this is probably a misunderstanding?

If I connect the channel to a simple Number item the value is displayed correctly:

Number Feuchte_Abs_Keller_HV "Feuchte abs. Keller HV [%.2f g/m³]"    <water>      (gMesswerte, gSemTempHumKellerHV)   ["Measurement", "Humidity"] { channel="knx:device:bridge:knx-tw-1_1_200:Feuchte_Abs_Keller_HV", widgetOrder="6204" }

What am I doing wrong?

The default unit for density in OH is kg/m³, which is assumed that the value is in if it doesn’t have a unit. 8.75 kg/m³ = 8750 g/m³

According to Calimero code the unit for DPT 14.017 is kg/m³. So 8.75 kg/m³ indeed is 8750 g/m³, so it looks fine to me.

Edit: https://www.knx.org/wAssets/docs/downloads/Certification/Interworking-Datapoint-types/03_07_02-Datapoint-Types-v02.02.01-AS.pdf also states that the values are kg/m³.

The internal unit does not matter in this case, the KNX binding already sends the value with correct unit.

I’m having the exact same issue on my Raspberry PI with Enocean USB300. It worked ok on OH 4.0.0.M1 and is broken both on OH 4.0.0.M2 and M3.
Any ideas anyone?

1 Like

No, it is not. Forcing update to M3 says it is a downgrade, eve the SNAPSHOT is older than M3 :thinking:

That’s exactly the case here too. Nevertheless, I am now on Build #3481, which was done after M3.