VMB4AN and openHAB - what's the status?

I see the module in openHAB, but it doesn’t show any values or channel names. Also the Inputs are marked as Outputs? In VelbusLink it’s all OK, I see a value on channel 1. I use version 4.3.2 of the binding, compiled locally as the official version didn’t cover the some of the new “*-10” modules

Interesting.

It should be working just fine.

The outputs are outputs, if you look closely at the VMB4AN you’ll see them in the right.

My own VMB4AN reports inputs correctly, at least it did when it was in my home setup and not the test rig.

Maybe @Daniel615be can help here?

1 Like

You mean the 4 “reserved” are active outputs? Good news! :slight_smile:

Yeah, those are the outputs.
You may want to check in VelbusLink if you have the autosend on for the sensors, or if OpenHAB reports when you have VelbusLink open.

2 Likes

I have the auto-send set to 60 s now changed to 15s. The title channels got transferred after remove-add operation. I also wrote everything in VelbusLink (not only changes) to VMB4AN, just in case. Something has helped - I see the measurement in openHAB - thank you very much!!!

1 Like

I see other problem that might be harder to solve. The value is passed as a string with unit welded to it. That way openHAB doesn’t treat is as number and makes it impossible to have a graph showing changes. I guess I will need a percentage. Or change in the binding to pass the value in one field and the unit in another. That would be probably the cleanest solution, but it would break existing setups unless it was added as a separate feature without touching the existing data.

P.S. A quick and dirty option would be to work in the data in openHAB, split the unit, convert to number and make “a proper number and unit” data…

I guess I’ll need to code it myself :–)

Just to close the topic:

  1. Create point in openHAB
  2. Make javascript rule to convert the string into Quantity (code below)
  3. Done, the new value allows to use Analyse function and make a graph
var pool_temp;
var pool_temp_from_velbus;
pool_temp_from_velbus = items.VANPF01_elbusvmb4an_Address_0D_Pool_Temperature;

if (pool_temp_from_velbus == 'null') {
  pool_temp = Quantity('0 C');
} else {
  pool_temp = Quantity(pool_temp_from_velbus);
}
  
items.VANPF01_elbusvmb4an_Address_0D_Pool_Temp_with_unit.postUpdate(pool_temp.float)

console.log("Pool Temperature", items.VANPF01_elbusvmb4an_Address_0D_Pool_Temp_with_unit.state);