Stream Deck Toggle Button

Hi there,

I have a Stream Deck Toggle Button to indicate a Play / Stop state. The button is defined in different places (I copied it into some BTT groups). Ticking the "Show in any open Stream Deck group" will put the Button in all groups, which I do not need/want...

Initially it shows 'Play' and when I press the button it shows 'Stop' as expected. The button itself works fine.
The 'problem' is when I open a different group (where a second 'play' button is defined ) then it still shows 'Play'.

Is there a possibilty to 'sync' the appearance/state somehow. May be with a script to influence the state (pressed / not pressed) of the button ?
Any idea or help would be appreciated!

In BTT the Toggle buttons all have the same fixed indentifier assigned, I use the BTT plugin Stream Deck option.

Thx,
Christian

Running:
BTT 3.952 (2117) / Mac M1 Max OS Ventura 13.1 /
BTT plugin Stream Deck option
Stream Deck Mobile (on iPad Air) latest version

good point, currently it uses the unique id of the trigger to save the state. I'll add an option to specify a custom state variable name with the next version.

Great Andreas!

Is there a way to set the state somehow…

Here is my situation: I use SD/BTT with Ableton Live (DAW for music production) and to ‘Play’ can also be done with the Spacebar, which would mean that the SD toggle button would be out of sync.

I can track the use of the spacebar in Ableton already (CAG, script and global BTT variable…) and to set the state would allow to sync the toggle button again…

Did this custom state variable for synchronizing Stream Deck toggle buttons get implemented? I can't seem to find it if it did.

If so, where can it be found?

I think I have found the solution to keeping 2 toggle buttons in sync. I have added a variable to store if they need to be synced. Then for each of the 4 actions (on button 1, off button 1, on button 2, off button 2), I add a conditional. When the button is pressed, the synched variable is checked. Normally it is set to them being in sync. When that is the case, the action is triggered, the variable is set to unsynced, and the other button is triggered. The counterpart button checks the state of the sync variable, sees that it is in the unsynced state, skips triggering the action, skips triggering other button (that was already pushed) and then changes the sync variable back to in sync.

This is kind of a pain to setup as the same logic has to be on the on and off option for both buttons and then each needs to be modified to trigger the counterpart button by UUID, but it seems to work very rapidly and very consistently.