I have been testing the Inovelli Blue mmWave switch and just like their red series z-wave devices button events are generated via paddle actions taping up generates button press events and presses down generates button held events. The also generate a event for the config button which is a press on button 8.
When adding this switch to the button controller and started to map my button actions I notice the drop down for button number only goes to 6. Is button controller hard coded not to go higher than 6?
I tested with rule machine and put in a simple rule for button press 8 from the switch and it responded to it.
It's supposed to show however many buttons that are part of the device chosen in the first step. If it doesn't then it may be a device driver issue. I have a device with 100 buttons and it shows them all in BC.
Oh oh looking into the driver from 12/12 from Inovelli found these lines. I just uncommented , went into device info and did a save, now in the button controller seeing 14 devices. I don't know why Inovelli would comment these out. Lets see if they respond on their forum.
// Uncomment these lines if you would like to test your scenes with digital button presses.
/*
command "pressUpX1"
command "pressDownX1"
command "pressUpX2"
command "pressDownX2"
command "pressUpX3"
command "pressDownX3"
command "pressUpX4"
command "pressDownX4"
command "pressUpX5"
command "pressDownX5"
command "holdUp"
command "holdDown"
command "releaseUp"
command "releaseDown"
command "pressConfigX1"
command "pressConfigX2"
command "pressConfigX3"
command "pressConfigX4"
command "pressConfigX5"
command "holdConfig"
command "releaseConfig"
*/
Those aren't related to your Button Controller problem. That can only be caused by the "numberOfButtons" attribute not being set correctly. Likely, something you did in between (a save or configure?) updated that.
I can understand why they'd comment these out, as it would clutter the device detail page with a bunch of custom commands you don't need when then standard push, hold, etc. commands can get you the same result (they might be aware of this now, but some of their drivers pre-date this, and I suspect there's lots of copy and paste from their first Hubitat drivers, which themselves have a lot from ST).
Yes strange coincidence that when I uncommented them the number of buttons showed up. I re-commented the lines and I still have the right number of buttons.
Update: Spoke too soon. Just started to define a couple more of button rules and only 1-6 is back again. I don't know what I going on with this switch and it's driver.
Update 2: well I tired with "In-Private" browser and it lists all the devices. Must be something with browser caching. Let's the driver off the hook.
Oh great going around and around on this. I added another switch. Have the Inovelli driver on it and using in-private browser and darn back to only 6 button's on the Switch. So I don't know what is going on here and would really like to help resolve this. I have 4 more switches that I want to bring online and need button controls that are consistent.
Any idea's on what I can provide to Hubitat to help debug?
Yes but it's the "fix" that I think is the issue where you have to trick the inclusion on the C-8 pro that is causing corruption of the configuration in the Hubitat. The driver is solid from what I have been reading. Pushing the going to the "Device Info" tab on the device and save again can bring back the number of buttons which I did yesterday.
In the other thread I put in the link to the "work around/fix" for C8-Pro's and the mmWave Blue switches that Inovelli is only seeing with the C8-Pro during the inclusion process.
Does it show the expected value for "numberOfButtons" when you have this problem? If not, there is definitely a problem with the driver. An app, like Button Controller, will only know what the device reports this way. I'm not sure where you believe the problem is, so additional information, including this, should help narrow it down!
Since that setting wouldn't exist, it should evaluate to Groovy false, making the value always 14. (There could be other places in the code that set this too, but this is all I found from a quick look.)
I am seeing 14 as the number of buttons after dong the "save" on the device preference tab. Before I do that it's only 6. If there is 23 don't know where they map to I am just leveraging multi-taps, held, release of the paddle switch and a single press of the config button. All which seems to be account for in the the "14".
Do you see any errors in Logs when you add one of these devices? Or does changing line 651 (or wherever this in in your current code) from def configure(option) { to def configure(option=null) { help for new installs? It looks like they are trying to set this value in this method, which should be called on device install -- but they have a mandatory parameter, which is not the standard Hubitat signature, and my guess is that it throws an error. Then, when you do it later from the device detail page, their custom override of this command works from the UI.
In any case, something must be wrong with the driver. This is a possible explanation. Logs should tell you for sure if you can still go back; if not, seeing if the above modification helps is something you could try in the future. But otherwise, a manual "Configure" on any device looks like it should work, too.
No errors in the logs when I set up. I have a few more switches to install and configure I will check again when it get them ready for deployment.
I have known Eric for a long while at Inovelli and surprised that if this was a known issue with the C8-Pro he would have fixed it in code. I have been cross posting my journey over on Inovelli's support site also. Hopefully it will get their attention.