Closed FlyingDiver closed 6 years ago
Did you have "Create unprogrammed buttons" box checked when you did this? I have that turned off, and don't have those buttons or LEDs. But I guess I should block the LEDs even if those are created.
Yeah, I had checked that box - I use some unprogrammed buttons for Indigo controls on physical keypads...
Gotcha. Should I increase the granularity of that option? Do keypads separate from phantom buttons?
For me personally that would make sense - I don't use phantom buttons, but it would still be good to have all physical keypad buttons show up, so options like:
Does that make sense?
Two checkboxes would give four different options on that, which would include the three you mention.
Ah, if you assume that people always want at least the buttons they've programmed (which seems a fair assumption) then you could do it with two, like this:
Is that what you are thinking?
Exactly
Sounds good to me!
Done. Will be in next beta release.
But it looks like tabletop support has introduced a new bug, and I don't know if I just missed this before, or if it is new in beta 4. The code is adding buttons (and LEDs) for the raise/lower buttons on the keypad... I guess on the surface there is nothing wrong with that, but these buttons should not have LEDs created for them (since they don't have LEDs on the physical buttons) and since there is no engraving for these buttons, perhaps it is best to hard code the labels for these specific IDs:
For standard keypads: 16 - Top Lower 17 - Top Raise 18 - Bottom Lower 19 - Bottom Raise
For tabletop: 20 - Column 1 lower 21 - column 1 raise 22 - column 2 lower 23 - column 2 raise 24 - column 3 lower 25 - column.3 raise
The code does appear to only create these raise/lower buttons as they exist on the keypads, so it would probably be a good idea to put them in - just need to hard code the names and omit the LEDs...
Unfortunately, there is some overlap between Button IDs, since a tabletop button ID can range 1-17, so we probably need some check to determine if it is a wall keypad or a tabletop... I don't know if there is something in the XML that would indicate that, or if we need some sort of logic in the code to test it (perhaps based on the presence of button IDs 24 and 25 (it appears every tabletop keypad layout (per page 110 of the integration protocol) has column 3 raise/lower buttons.