cedricboon / openhab-addons

Add-ons for openHAB 2.x
Eclipse Public License 2.0
6 stars 5 forks source link

Alarm Type bug #10

Open MDAR opened 4 years ago

MDAR commented 4 years ago

I think the Alarm Type is inverted.

If I set an Alarm (in an Edge Lit Oled) to being a Member of the Alarm group (IE Global)

image

OpenHAB2 reports it as "Local"

image

But if I un-check that option (Local), openHAB2 reports it as "Global"

image

image

The bottom of this log shows the packets that openHAB2 is sending to the panels to change state to Global (or at least that was what I selected in PaperUI)

velbuslink_11-07-2019.log

I will double check the states with :-

VMBGP2 VMBGP4

VMBEL2 VMBELO

MDAR commented 4 years ago

I think the issue is only in the VMBELO panel.

All four panels were set to

Alarm 1 in Local

Alarm 2 in Global

image

And here it is inverted

All four panels were set to

Alarm 1 in Global

Alarm 2 in Local

image

(FYI, I have checked that they aren't simply swapped between Alarm 1 and Alarm 2)

cedricboon commented 4 years ago

This one is really strange! The code for all module types is shared, so I'm pretty sure it's the same. And the protocol documentation also looks identical for all module types.

I'll try to reproduce it and see where it goes wrong...

MDAR commented 4 years ago

There's something else happening that's really strange.

I'm trying to set up a system so that some of the glass panels are in Global mode and some are in Local mode.

This all works perfectly in VelbusLink, but as soon as I toggle any of the alarm enable switches in openHAB2, every alarm state get changed to Global. But.. Changing the Global / Local mode again doesn;'t change the alarm enable state.

I seem to remember something like this when we setup Velbus in OpenRemote, but I can't remember (for certain) what the solution was.

I think it is something to do with how the modes are set, within the same packet as the global / local mode. (but I might be wrong it was a long time ago.)

MDAR commented 4 years ago

Hi

I had to create a widget for HabPanel for the alarm for a customer, when I got home, I added in a Type switch. This revealed something interesting, which I think is related to the fact that toggling the alarm state is in the same packet as switching Type.

I'll tidy up the widget and post it, so you can see what's happening.

Essentially, if the Type change is made, a long wait, then change the alarm state it works & vice versa .

Making both changes too soon is where things go wrong.

MDAR commented 4 years ago

Okay.... I've tided up the widget/s and they work well now, that's to say that for a non-programmer I'm happy with the results.

Feel free to roll your eyes at my 1st grade attempts, I won't take offence.

So, when running two widgets beside each other for both alarms, I can see two Bugs now :cry:

  1. There is definitely an issue when toggling the Alarm Type too soon. As in if the Alarm Switch has been toggled and the Type changed too soon afterwards, the Type reverts to the state it was in when the Alarm Switch was toggled, so I think this is a timing issue.

  2. This one is strange. Setting the Alarm Switch state and Type state on Alarm 2 is fine, including when setting the times, There is no interaction with Alarm 1 However Setting any of the Times in Alarm 1, causes Alarm 2 Type to change to Local. I tested this with a VMBEL2 this evening, on Monday, I'll make a quick video to show what's happening and I'll test it against any other input modules I can.

The widgets I created are here velbus_alarm_widgets.zip

Or here - http://www.mdar.co.uk/dl/openhab2/velbus_alarm_widgets.zip

image

MDAR commented 4 years ago

Hi

There is something strange happening.

Can I give you remote access to VelServ and HabPanel so that you can confirm the settings of each Input module and see what's happening when alarm times and states are changing?

For example

Changing a Wake 1 hour seems to affect the Local / Global state.

Sometimes, changing the state of Alarm 2, causes Alarm 1 type to change.

MDAR commented 4 years ago

I'm really not sure what to look for with this.

I'm beginning to think that it's more to do with timing and polling.

As I've confirmed that each module is in the correct mode, then changed a time value.

Previously, this updated value would appear almost instantly.

Now...

1 module's updated alarm time values appear, but not the others in Global Mode.

What can I do to further evaluate what's going on so the information is useful to you?