[eBUS 2.0] New binding - Release Candidate 7b

Tags: #<Tag:0x00007f386e46e738> #<Tag:0x00007f386e46e558>

I’ll give it a try, thanks!
But if this is a latency issue, why does cleaning the cache helps, but restarting OH2 or the complete system issn’t helping?

Mh, yes a good point, the send queue etc. are not stored, it only exists in memory. Could send me a log (via PM) when the binding is not working anymore and and a part of the log before the binding fails? Maybe the serial connection stops and the queue doesn’t recognize it.

Hi, @csowada!

Tell me, please, what is the best way to switch from the first version of binding to second? In the first version, I used a custom json. As I understand it, in OpenHAB version 2.4 the first version will be replaced by the second?

Second question - I have not found this command in your files, can you help convert it into a new format?

{
  "comment": "Get circuit parameters",
  "id":      "getParameters",
  "class":   "circuits",
  "command": "B5 04",
  "data":    "09",

  "values": {
    "dayTemp":           {"type": "uchar", "pos": 10, "label": "Circuit desired temp/day temp for fixed value circuit"},
    "nightTemp":         {"type": "uchar", "pos": 11, "label": "Circuit night temp"},
    "heatingCurve":      {"type": "uint",  "pos": 12, "label": "Circuit heating curve", "factor": 0.01, "min": 0.1, "max": 4.0},
    "circuitType":       {"type": "uchar", "pos": 14, "label": "Circuit type", "mapping": {"128": "Disabled", "129": "Mixing circuit", "130": "Fixed value", "131": "Cylinder circuit", "132": "Increase in return flow", "133": "Direct circuit"}},
    "otShutdownLimit":   {"type": "uchar", "pos": 15, "label": "Max limit outs. temp"},
    "pumpDelay":         {"type": "uchar", "pos": 16, "label": "Pump delay time"},
    "minTemp":           {"type": "uchar", "pos": 17, "label": "Minimum temp"},
    "maxTemp":           {"type": "uchar", "pos": 18, "label": "Maximum temp"}
  }
}

Hello,

I use the Binding since one year. Now I update to the newest Milestone 2.4.0 or the newest snapshot. In both cases the RC1 don’t work. The binding not appears in papierUI. OH 2.3.0 and Version 21 of the binding works so far.

This Version is only for 2.4 milestones, not for 2.3. could you check the log or console.

I try a clean setup of 2.4 Milestone. Then I put the kar file of RC1 in the Addons folder. Under PapierUI the binding don’t appears. In Eventlog and openhablog is nothing. What should I look in the console?

Hello, I tried to do the same, on a fresh new 2.4 Milestone as well, putting the RC1 in the addons folder. I’m not familiar with the .kar files, is this the right process ?

Same problem here,

I stopped Openhab, deleted the RC1 file, cleaned up te cache, restarted openhab, stopped openhab, copied te the RC1 file back, started openhab, and yes there it was again.:grinning:

Until the next openhab update…:thinking:

It still needs som tweeking:grinning:

MH, all of you on latest milestone or nightly? Maybe new changes to openhab…

I try both, milestone and snapshot 1406/1407. Same effect.

So, I’ve updated my development environment and I can’t see any compilation issues. So we need more details from the console. Could you try some commands.

bundle:list .*ebus.*

Output should look like:

START LEVEL 100 , List Threshold: 50
 ID │ State  │ Lvl │ Version            │ Name
────┼────────┼─────┼────────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
259 │ Active │  80 │ 0.9.18.SNAPSHOT    │ eBUS library configuration
260 │ Active │  80 │ 0.9.18.SNAPSHOT    │ eBUS core library
261 │ Active │  80 │ 2.4.0.201807101913 │ eBUS Binding
feature:info ebus-binding

Output should look like:

Feature ebus-binding 2.4.0.22
Description:
  eBUS 2.0 binding incl. eBUS core libs
Feature has no configuration
Feature has no configuration files
Feature has no dependencies.
Feature contains followed bundles:
  mvn:org.openhab.binding/org.openhab.binding.ebus/2.4.0-SNAPSHOT start-level=80
  mvn:de.cs-dev.ebus/ebus-core/0.9.18-SNAPSHOT
  mvn:de.cs-dev.ebus/ebus-configuration/0.9.18-SNAPSHOT
Feature has no conditionals.

So if the bindings are not active, I need some diagnostic information from the bindings. In that case use IDs from the first command and try this…

bundle:diag 259 260 261

You can also try to unistall the old feature with this command and then re-add the kar file.

feature:uninstall ebus-binding

My system was just fully reinstalled from scratch, based on last Miles Stone

Here is the result of the console info:
I think my very first issue is to install the kar file, as the list is empty:

openhab> bundle:list .*ebus.*

START LEVEL 100 , List Threshold: 50
ID │ State │ Lvl │ Version │ Name
───┼───────┼─────┼─────────┼─────────────────────────────────────────────────────────────────────────────────────────

but the feature info let me think it see the content of the kar file:

openhab> feature:info ebus-binding
Feature ebus-binding 2.4.0.RC1
Description:
  eBUS 2.0 binding incl. eBUS core libs
Feature has no configuration
Feature has no configuration files
Feature has no dependencies.
Feature contains followed bundles:
  mvn:org.openhab.binding/org.openhab.binding.ebus/2.4.0-SNAPSHOT start-level=80
  mvn:de.cs-dev.ebus/ebus-core/0.9.18-SNAPSHOT
  mvn:de.cs-dev.ebus/ebus-configuration/0.9.18-SNAPSHOT
Feature has no conditionals.

The bundle command return:

openhab> bundle:diag 259 260 261
    Bundle 259 is invalid
    Bundle 260 is invalid
    Bundle 261 is invalid
    Error executing command: No matching bundles

The binding is not listed in PaperUI. However, if I try to manually install the feature, I get the error:

openhab> feature:install ebus-binding
org.apache.felix.resolver.reason.ReasonException: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=ebus-binding; type=karaf.feature; version="[2.4.0.RC1,2.4.0.RC1]"; filter:="(&(osgi.identity=ebus-binding)(type=karaf.feature)(version>=2.4.0.RC1)(version<=2.4.0.RC1))" [caused by: Unable to resolve ebus-binding/2.4.0.RC1: missing requirement [ebus-binding/2.4.0.RC1] osgi.identity; osgi.identity=de.cs-dev.ebus.ebus-core; type=osgi.bundle; version="[0.9.18.SNAPSHOT,0.9.18.SNAPSHOT]"; resolution:=mandatory [caused by: Unable to resolve de.cs-dev.ebus.ebus-core/0.9.18.SNAPSHOT: missing requirement [de.cs-dev.ebus.ebus-core/0.9.18.SNAPSHOT] osgi.wiring.package; filter:="(&(osgi.wiring.package=gnu.io)(version>=3.12.0))"]]
at org.apache.felix.resolver.Candidates$MissingRequirementError.toException(Candidates.java:1343)
at org.apache.felix.resolver.ResolverImpl.doResolve(ResolverImpl.java:392)
at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:378)
at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:332)
at org.apache.karaf.features.internal.region.SubsystemResolver.resolve(SubsystemResolver.java:257)
at org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:388)
at org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1025)
at org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$13(FeaturesServiceImpl.java:964)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.felix.resolver.reason.ReasonException: Unable to resolve ebus-binding/2.4.0.RC1: missing requirement [ebus-binding/2.4.0.RC1] osgi.identity; osgi.identity=de.cs-dev.ebus.ebus-core; type=osgi.bundle; version="[0.9.18.SNAPSHOT,0.9.18.SNAPSHOT]"; resolution:=mandatory [caused by: Unable to resolve de.cs-dev.ebus.ebus-core/0.9.18.SNAPSHOT: missing requirement [de.cs-dev.ebus.ebus-core/0.9.18.SNAPSHOT] osgi.wiring.package; filter:="(&(osgi.wiring.package=gnu.io)(version>=3.12.0))"]
at org.apache.felix.resolver.Candidates$MissingRequirementError.toException(Candidates.java:1343)
… 12 more
Caused by: org.apache.felix.resolver.reason.ReasonException: Unable to resolve de.cs-dev.ebus.ebus-core/0.9.18.SNAPSHOT: missing requirement [de.cs-dev.ebus.ebus-core/0.9.18.SNAPSHOT] osgi.wiring.package; filter:="(&(osgi.wiring.package=gnu.io)(version>=3.12.0))"
at org.apache.felix.resolver.Candidates$MissingRequirementError.toException(Candidates.java:1343)
… 13 more
Error executing command: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=ebus-binding; type=karaf.feature; version="[2.4.0.RC1,2.4.0.RC1]"; filter:="(&(osgi.identity=ebus-binding)(type=karaf.feature)(version>=2.4.0.RC1)(version<=2.4.0.RC1))" [caused by: Unable to resolve ebus-binding/2.4.0.RC1: missing requirement [ebus-binding/2.4.0.RC1] osgi.identity; osgi.identity=de.cs-dev.ebus.ebus-core; type=osgi.bundle; version="[0.9.18.SNAPSHOT,0.9.18.SNAPSHOT]"; resolution:=mandatory [caused by: Unable to resolve de.cs-dev.ebus.ebus-core/0.9.18.SNAPSHOT: missing requirement [de.cs-dev.ebus.ebus-core/0.9.18.SNAPSHOT] osgi.wiring.package; filter:="(&(osgi.wiring.package=gnu.io)(version>=3.12.0))"]]

Ah, sounds like an serial driver issue. Please install the serial driver even when using the network connection

I will fix this dependency with the next release.

Great, you were right, the serial installation fixed the installation issue:

openhab> feature:install openhab-transport-serial
openhab> feature:install ebus-binding
openhab> bundle:list .*ebus.*
>
START LEVEL 100 , List Threshold: 50
 ID │ State  │ Lvl │ Version            │ Name
────┼────────┼─────┼────────────────────┼────────────────────────────────────────────────────────────────────────────
240 │ Active │  80 │ 0.9.18.SNAPSHOT    │ eBUS library configuration
241 │ Active │  80 │ 0.9.18.SNAPSHOT    │ eBUS core library
242 │ Active │  80 │ 2.4.0.201809301159 │ eBUS Binding

However, this ebus binding version is not visible in the list of available bindings in Paper UI, is this an attended result ?

I often must force a browser refresh to show new entries in paper ui, so try to press F5 key several times.

So, I’ve released a new “Release Candidate”, I’ve added an addition serial driver and the send/receive round-trip time in the metrics of each bridge.
Also the the serial dependencies should be be fixed, so no extra installation of feature “openhab-transport-serial” required anymore.

I can’t really check the 2.4 releases because I’m still on 2.3 stable!

so, I upgrade to OH 2.4 Milestone. The RC1 disappears. After Installing the RC2 the binding appears again and the bridge is online. So it seems to work. But I have no time to test it deeper now…

good work:-)

Hello,
I’m also trying to install the ebus2.0 binding on my system 2.4.0-SNAPSHOT Build #1414. The add-ons/bindings page displays the following

But it’s not listed in the configuration/bindings page and also in the console. (binding:list)
Is it because of the snapshot built? Do have to go to a Release Candidate instead.
Thanks

Please use the kar file from first post, the market place version is older and not working.