Issue with Button Contoller 3.0 and Capturing Device State

I am having an issue with a Button Controller 3.0 object when I am trying to capture device state when button 8 is held.

After I define what devices I want to capture, the interface doesn't go any further, but records enough information that the button 8 held action is no longer available to me as a new object, but not defined enough to show up on the list of buttons.

Is there a way to clear out this invalid information, without having to delete and recreate the entire app instance?

Settings
Name Type Value
sorted bool true
origLabel text Remotec
buttonDev capability.pushableButton Remotec
btnNo.2 enum 1
btnPH.2 enum pushed
btnNo.3 enum 2
btnPH.3 enum pushed
btnNo.4 enum 3
btnPH.4 enum pushed
btnNo.5 enum 4
btnPH.5 enum pushed
btnNo.6 enum 5
btnPH.6 enum pushed
btnNo.7 enum 6
btnPH.7 enum pushed
btnNo.8 enum 7
btnPH.8 enum pushed
btnNo.9 enum 8
btnPH.9 enum pushed
btnNo.10 enum 1
btnPH.10 enum held
btnNo.11 enum 2
btnPH.11 enum held
btnNo.12 enum 3
btnPH.12 enum held
btnNo.13 enum 4
btnPH.13 enum held
btnNo.14 enum 5
btnPH.14 enum held
btnNo.15 enum 6
btnPH.15 enum held
btnNo.16 enum 7
btnPH.16 enum held
btnNo.18 enum 8
actType1.pushed.1 enum Control Switches, Capture or Restore
actSubType1.pushed.1 enum Toggle these switches
toggleSwitch1.pushed.1 capability.switch Kitchen
actType1.held.2 enum Set Dimmers
actSubType1.held.2 enum Set these dimmers
dimA1.held.2 capability.switchLevel Kitchen
dimLA1.held.2 text 100
actType2.pushed.3 enum Control Switches, Capture or Restore
actSubType2.pushed.3 enum Toggle these switches
toggleSwitch2.pushed.3 capability.switch Chartreuse Room
actType2.held.4 enum Set Dimmers
actSubType2.held.4 enum Set these dimmers
dimA2.held.4 capability.switchLevel Chartreuse Room
dimLA2.held.4 text 100
actType3.pushed.5 enum Control Switches, Capture or Restore
actSubType3.pushed.5 enum Toggle these switches
toggleSwitch3.pushed.5 capability.switch Living Room
actType4.pushed.6 enum Control Switches, Capture or Restore
actSubType4.pushed.6 enum Toggle these switches
toggleSwitch4.pushed.6 capability.switch Porch
actType5.pushed.7 enum Control Switches, Capture or Restore
actSubType5.pushed.7 enum Toggle these switches
toggleSwitch5.pushed.7 capability.switch Dining
actType6.pushed.8 enum Control Switches, Capture or Restore
actSubType6.pushed.8 enum Toggle these switches
toggleSwitch6.pushed.8 capability.switch Book Light
actType7.pushed.9 enum Control Switches, Capture or Restore
actSubType7.pushed.9 enum Toggle these switches
toggleSwitch7.pushed.9 capability.switch Hallway
actType8.pushed.10 enum Activate Scenes, Adjust Shades or Fans
actSubType8.pushed.10 enum Activate scenes
sceneAct8.pushed.10 enum ["98"]
capture8.held.11 capability.switch Chartreuse Room, Dining, Kitchen, Living Room, Porch
actType4.held.12 enum Set Dimmers
actSubType4.held.12 enum Set these dimmers
dimA4.held.12 capability.switchLevel Porch
dimLA4.held.12 text 100
actType3.held.13 enum Set Dimmers
actSubType3.held.13 enum Set these dimmers
dimA3.held.13 capability.switchLevel Living Room
dimLA3.held.13 text 100
actType5.held.14 enum Set Dimmers
actSubType5.held.14 enum Set these dimmers
dimA5.held.14 capability.switchLevel Dining
dimLA5.held.14 text 100
actType6.held.15 enum Set Dimmers
actSubType6.held.15 enum Set these dimmers
dimA6.held.15 capability.switchLevel Book Light
dimLA6.held.15 text 100
actType7.held.16 enum Set Dimmers
actSubType7.held.16 enum Set these dimmers
dimA7.held.16 capability.switchLevel Hallway
dimLA7.held.16 text 100
capture8.held.17 capability.switch Chartreuse Room, Dining, Kitchen, Porch
btnPH.18 enum held
btnNo.19 enum 8
Event Subscriptions
Source Event Handler Filter
Remotec held.2 buttonHandler true
Remotec held.3 buttonHandler true
Remotec held.4 buttonHandler true
Remotec held.5 buttonHandler true
Remotec held.6 buttonHandler true
Remotec held.7 buttonHandler true
Remotec null.null buttonHandler true
Remotec pushed.1 buttonHandler true
Remotec pushed.2 buttonHandler true
Remotec pushed.3 buttonHandler true
Remotec pushed.4 buttonHandler true
Remotec pushed.5 buttonHandler true
Remotec pushed.6 buttonHandler true
Remotec pushed.7 buttonHandler true
Remotec pushed.8 buttonHandler true
Remotec held.1 buttonHandler true
Application State
Name Value
actionDone true
btnNos [1, 2, 3, 4, 5, 6, 7, 8]
actions4.held {12={wait=, modes={}, method=getSetDimmer}}
selectActionsParams {name=8 held, thisStr=8.held}
actionList1.held [2]
skipRepeatActions7.held false
actionList7.held [16]
actions5.held {14={wait=, modes={}, method=getSetDimmer}}
repeating {}
isExpert false
doneButtonActions false
maxButtons 32
capture capture8.held.17
actLabelIndent
paramsDone false
installedCapabs [Polling, RelaySwitch, PushableButton, UltravioletIndex, IlluminanceMeasurement, TemperatureMeasurement, ReleasableButton, HoldableButton, Battery, Outlet, SwitchLevel, Initialize, Switch, ChangeLevel, Configuration, Thermostat, PressureMeasurement, Actuator, Sensor, Refresh, Light, RelativeHumidityMeasurement, DoubleTapableButton]
skipRepeatActions7.pushed false
skipRepeatActions1.pushed false
actionList6.held [15]
actNdx 18
actions1.pushed {1={wait=, modes={}, method=getToggleSwitch}}
actionList3.held [13]
actions1.held {2={wait=, modes={}, method=getSetDimmer}}
actionList2.pushed [3]
actionList1.pushed [1]
actions3.pushed {5={wait=, modes={}, method=getToggleSwitch}}
actions2.pushed {3={wait=, modes={}, method=getToggleSwitch}}
hasDevice
actions4.pushed {6={wait=, modes={}, method=getToggleSwitch}}
actions7.held {16={wait=, modes={}, method=getSetDimmer}}
actions2.held {4={wait=, modes={}, method=getSetDimmer}}
actionList7.pushed [9]
actions5.pushed {7={wait=, modes={}, method=getToggleSwitch}}
actions6.pushed {8={wait=, modes={}, method=getToggleSwitch}}
actions7.pushed {9={wait=, modes={}, method=getToggleSwitch}}
actions8.pushed {10={wait=, modes={}, method=getActivateScene}}
actions8.held {}
actionList5.pushed [7]
cstCmds []
actionList8.pushed [10]
btnNdx 19
actionList4.pushed [6]
actionList6.pushed [8]
actionList8.held []
actionList4.held [12]
actionList3.pushed [5]
actionCancel false
inRepeat false
btnList {1=[doubleTapped, released], 2=[doubleTapped, released], 3=[doubleTapped, released], 4=[doubleTapped, released], 5=[doubleTapped, released], 6=[doubleTapped, released], 7=[doubleTapped, released], 8=[doubleTapped, released]}
buttons {11=2 held, 12=3 held, 13=4 held, 14=5 held, 15=6 held, 16=7 held, 19=, 2=1 pushed, 3=2 pushed, 4=3 pushed, 5=4 pushed, 6=5 pushed, 7=6 pushed, 8=7 pushed, 9=8 pushed, 10=1 held}
paramNdx 1
gettingButton false
actionList5.held [14]
actionList2.held [4]
captureNot capture8.held.17
skipRepeatActions1.held false
actions6.held {15={wait=, modes={}, method=getSetDimmer}}
first true
actions3.held {13={wait=, modes={}, method=getSetDimmer}}

You are going to capture them and then do what with that capture? The capture action is usually paired with a restore action. Did you also have a restore action within the same button press?

In retrospect, capture is probably not what I wanted to do, but the UI "broke" as I went down the path.

My question is more around what I can do to fix the issue -- so I can do anything with the button action -- without needing to delete the whole configuration and have to reset the 14+ other actions.

No, there is not. However, irrespective, instead of deleting everything you've got, just do button 8 held in another app instance, or in RM.

I've tested doing Capture and Restore in BC, and you are right that there is a bug with it. You can use Rule 4.0 as Button Controller, and it works fine there. We will fix BC 3.0 for next release.

1 Like

Thanks. Any chance the fix will detect the configuration bits that did get created and clean up this issue (or allow the GUI to function well enough for me to do so)?

See the pm I just sent you.