[BTicino/OpenWebNet] New openHAB2 binding ready for testing

At the start I used PaperUI to do everything.

  1. Run discovery but add gateway manually by clicking the link and aborting the auto discovery
  2. Run discovery again. This time it finds the BUS Things
  3. Select a Thing from the inbox. This moves it from the inbox to the Control to the ‘other tab’; unless you edit the Thing and change the location.
  4. Edit the Thing from the control area. You can change the location here.
  5. Click on the channel for the Thing
  6. Click add Linked Item
  7. Select Create new Item

That’s it. The Thing should now have one item showing that you can test if it works.

That’s fine to start with for testing, learning, building confidence but in the end its better at some point to begin to recreate the auto generated items in the item config file. This will save a lot of repeat PaperUI work when later making changes, updating, upgrading, backing up etc.

Ty Stefan & Mark. I did the item for lightpoint 11 in UI and it worked. Then I tryed to write down few lights in the .things and .items files, but they do not work. Only the light done by UI is still working. The new one does not work.
I have the dubt the the UI and the files configurations are two separate environments. In this case it’s very tricky to manage an installation with hundreds of items! Maybe is there a way to obtain the files from the already defined things/items? I did not find it in configuration.
I think I have mismatched something during writing in vi :frowning: I’ll recheck later!

For sure you have something wrong. PaperUI live happily together so that’s not the issue. Sometimes a restart helps if things look a bit confused. A Browser refresh may also help.

sudo systemctl restart openhab2.service

Check the error logs for clues as to where its going wrong.

Start simple and build it it up. First try get the .items file working. When done correctly you will see in the PaperUI things the item automatically assigned to to the Thing in the correct channel. There will be no need to do the paperUI link channel stuff as you will see you item will be automatically assigned.

When .items config file is working then I would start work on the site map. That’s great for ineracting via mobile phone and BasicUI, which uses .sitemap, is a lot better to look at and use than PaperUI.

When you have everything working only then start on the .things config file. I just finished getting all my BUS Things moved over to the .things config file. It was a lot of work but it will save time and frustration later when making upgrades etc. It was also the most difficult thing to get my head around but actually quite simple when I had the correct information. You will notice as you add things to your .things config file the previous discovered PaperUI inbox things are automatically removed.

I suggest ignore the other threads you might read on the .things topic and stick to what is posted by Massi and by others here. Later I might try some of the suggested alternative syntax.

ps I also keep an xls spreadsheet with all the actual BUS configuration details. Its great using excel filters for quickly checking I have the right details in openhab.

hi fulvio,

check the syntax of your items file, thats wrong.

your setup is.

Switch Garage “Garage” {channel=“openwebnet:bus_on_off_switch:858b375d:12:switch”}

but i suppose it should be

Switch Garage “Garage” {channel=“openwebnet:bus_on_off_switch:mhs1:Garage:switch”}

and (i think you did already): if you added the gateway in things-file this must be the only one, remove an manually added. but: you will have to remove the discovered items and start a new discovery.

That had me confused for a while. It comes from the Thing name. PaperUI uses the BUS address for that but actually could be characters you like. But you must also be sure to change the channel=etc part in the item config to match… I stuck to using the BUS address as the name. It’s not used anywhere except in the item channel= etc part

eg Item and thing 0415 in bold below should match but don’t have to be the BUS address.

item

Switch WardrobeLight_Switch “Wardrobe light” (HouseLights) [“Lighting”] {channel=“openwebnet:bus_on_off_switch:Screen10:0415:switch”}

Thing

Thing bus_on_off_switch 0415 “Wardrobe light” @ “Lights” [ where=“0415” ]

Sitemap

Default item=WardrobeLight_Switch label=“Wardrobe light”

You are right! I had two gateways defined, the one I defined in things (mhs1) and the other defined in UI (858b375d).
I started from scratch using only the files definitions and now all is good.
Lights are done, now blinds and thermostats.
Next step, building the HABPANEL.
I have few days of good job …

You both where fantastic and cleared many doubts! TY!

EDITED: BTW, which widgets may I use for blinds and thermostats? I’m still confused: in Domoticz I had devices recognized by their manifactures/model, here I do not know how select the right widget for things I have defined. I can browse the widgets but I do not have any info about which one to use for my own devices …

Great job, friends! After your smart suggestions I was able to edit directly the items file (I prefere to work with textfiles because I’m a very old mainframe-unix man! ) and now, in only two days I have lights and blinds perfectly working.
The MHS1 gateway seems also well supported. (I was told I never could use it as OWN gateway, both from BTicino man and other developers in the net).
Now I’m facing the thermo set: only two zones without control central (my 4way is no more supported from MHS1) . Two LN4691 are directly controlling the Daikin via two F430/2 for both warming and cooling.
Where may I read to begin? This is the part I stopped in domoticz because of partial support of LN4691. I was only able to read temperatures and no more.

Another question:
I would like to manage the 3486 burglar alarm via OWN (this is from a domoticz forum).
I have configured four auxiliaries in bticino alarm control panel, for example:

  • AUX 1 status 0 = disengage
  • AUX 2 Status 1= engage with ALL zones

Configuration Automation 1: when AUX-1 go OFF, then DISENGAGE all Zones
Name: Disengaged all zones
Event: command OPEN = 90*1##
OPEN command to execute: 59##

Configuration Automation 2: when AUX-2 go ON, then ENGAGE active Zones
Name: Engaged active zones
Event: command OPEN = 91*2##
OPEN command to execute: 58##

Is there a way to do this in OH2?

Thank you in advance!

Hi Fulvio,
BTicini/OpenWebNet in OH2.3 at the moment support Automation, Swicth and Thermo.
No AUX support

Error Installing from “Marketplace”:

First I remove beta7 “manualy” installed (from addons/)

  • From Karaf console: bundle:uninstall <ID>
  • remove jar from addons/ folder

When In PaperUI I go to “Add-ons” and click to “OpenWebNet 2.x Binding Install” I have a error:

“binding-4138499: Binding cannot be installed: Error reading bundle content.”

Plz try again, one link was broken in the repo.
M

Hi,
I have a few discovered switch Things that stay in the undefined state fro a long time. Since discovery I haven’t needed to use these switches. The state does change to ON or OFF when I use them. Is this the expected behaviour. Undefined state until the switch is actually used?

Also,

I have been playing around with Lights and blinds groups definitions. For lights I can get the site map to show how many lights are ON in the group. But for blinds I haven’t found a away to get a useful group state number. Has anyone else manged to get the group to show how many blinds are actually open?

Thx Mark

Hi @m4rk , yes this is expected : after a discovery, state stays UNDEF until state changes (or you send command form OH).
I may add a feature to check state after a discovery or restart/disconnect or even periodically … you are invited to submit a new issue for this if you like with some use case you want to be solved.

One idea could be to use MIN (or MAX) of the group blinds positions. If it’s different from 100% or 0% you can derive in a rule that at least one blind must be open/closed .

Massimo

I tried MIN, MAX, SUM, AND(DOWN,UP), AND (UP,DOWN), OR(UP, DOWN), OR(DOWN,UP) but all give numbers that are not the exact number of blinds open, unlike the Lights group. Interestingly the the dynamic Group icon shows closed, open or partial open. So, I gave up on using numbers for the group state and use the group icon instead. I just wondered if it could be done or not…

Regarding the UNDEF initial state. I noticed it when some rules fail to execute the first time. eg

rule ‘my rule’
when
my_switch changes from ON to OFF
then
do some stuff
end

The rule will not run until the switch is first in state ON. Its only really a problem during the testing phase when I am repeatedly running discovery or restarting openhab.

I think the behaviour is different after an Openhab restart. I have to confirm it but I think some items are initially undefined and a few seconds later change to known state. So, creating a rule to take care of the undefined state could cause more problems.

Blockquote[quote=“massi, post:192, topic:43377, full:true”]
Plz try again, one link was broken in the repo.
M
[/quote]

Thanks is OK now

Hello!
Thanks to Massimo, from what I read, it’s a great binding!
Right now I’m using the old binding 12 snapshot for controlling rollershutters depending on the sun radiation and sun set/rise but specially for controlling my heating and switch the status when I’m not at home or when a window is open.
Some questions: is it possible to intercept messages from the LN4691 termostats regarding the status of heating? 303 or 111 status.
Is it also possible to receive messages from the heating central 3550? 1101, 1102 etc status?
Seems that it should be with Operation Mode and Set Mode. Could you post eventually an example of the sitemap and the thing?

Thank you very much!

Tom

hi tom,
i use a 3550 and 4693 sensors. this is what i set up
in things:

bus_thermostat      EG_ThTmp_Buero              "EG_ThTmp_Buero"              [ where="17"]

and in sitemap:

Frame label="Heizung" icon="heating"{
	Default item=EG_ThTmp_Buero icon="temperature"
	Default item=EG_ThOffs_Buero visibility=[EG_ThOffs_Buero!="NORMAL"]
	Text label="Heizung aktiv!" labelcolor=["red"] item=EG_ThHeiz_Buero icon="heating" visibility=[EG_ThHeiz_Buero=="ON"]
	Text label="Kühlung aktiv!" labelcolor=["blue"] item=EG_ThKuehl_Buero icon="climate" visibility=[EG_ThKuehl_Buero=="ON"]
	Default item=EG_ThZiel_Buero
	Default item=EG_ThInf_Buero
	Setpoint item=EG_ThSet_Buero icon="temperature"
	Selection item=EG_ThMod_Buero icon="radiator" valuecolor=[AUTO="green", MANUAL="orange", PROTECTION="blue", OFF="red"] mappings=[AUTO="Auto", MANUAL="Manuell", PROTECTION="Frostschutz", OFF="Aus"]
	}

sorry, no experience with rules yet. i close my shutters depending on a light-sensor on the roof and a cenario.

perhaps this helps :wink:

bye, stefan

Hallo Stefan!
Thank you very much!
Don’t you need also an item file?

of course tom :blush:

here it is:

Number:Temperature EG_ThTmp_Buero "Temperatur" (EG_Buero) {channel="openwebnet:bus_thermostat:MH200N:EG_ThTmp_Buero:temperature"}

String EG_ThOffs_Buero "Offset" (EG_Buero) {channel="openwebnet:bus_thermostat:MH200N:EG_ThTmp_Buero:localMode"}

Switch EG_ThHeiz_Buero "Heizung" (EG_Buero) {channel="openwebnet:bus_thermostat:MH200N:EG_ThTmp_Buero:heating"}

Switch EG_ThKuehl_Buero "Kühlung" (EG_Buero) {channel="openwebnet:bus_thermostat:MH200N:EG_ThTmp_Buero:cooling"}

Number:Temperature EG_ThZiel_Buero "Zieltemperatur" (EG_Buero) {channel="openwebnet:bus_thermostat:MH200N:EG_ThTmp_Buero:targetTemperature"}

String EG_ThInf_Buero "Modus" (EG_Buero) {channel="openwebnet:bus_thermostat:MH200N:EG_ThTmp_Buero:activeMode"}

Number:Temperature EG_ThSet_Buero "Solltemperatur" (EG_Buero) {channel="openwebnet:bus_thermostat:MH200N:EG_ThTmp_Buero:setpointTemperature"}

String EG_ThMod_Buero "Modus" (EG_Buero) {channel="openwebnet:bus_thermostat:MH200N:EG_ThTmp_Buero:setMode"}

Message NUMBER 200 !!!
This topic is getting popular! thanks for your participation!
:slight_smile:

Yes, they are already detected, they should change the activeMode (“Operation Mode”) channel.

Program messages (11xx) are currently ignored by the binding, but if you send me some logs (in DEBUG mode, see README for howto) and examples/suggestions of what you would like to see in PaperUI when you switch in 3550 a Zone to a specific program, then I will try to handle that case as well.
Even better if you submit a new issue with the log showing the messages sent from the central 3550 when switching to one of those programs (every message seen on the BUS is logged by the binding).

bye
Massimo

Good sitemap example @bastler.
If you do not mind I may add it to the README (slightly changed) to be useful for everyone.

massimo