Stream Deck configuration using the new Floating Menu / Macro Pad components

I'm experimenting with the new Floating Menu support for Stream Decks.

(currently on version 6.681)

First, this is really cool, and I'm certain it will be an improvement over the old way of doing things. The sample templates work on both my Stream Deck + and on my SD Neo.

But, I have some questions, some of which might be user confusion:

  1. The Stream Deck + supports swipe left and swipe right actions generated by the LCD touch strip. How do I add these as actions to trigger something?

  2. I have been using the LCD touch strip on my SD+ to hold 8 items (each 100x100), 2 for each knob. (Skipping my use case for this as it is complicated, but basically, I get more stuff on the LCD strip.). It seems to me that it should be possible to do this with the new config, so I shrank one of the "knob items to 100x100, resulting in the following:

(Note that this is how it appears on my screen. On my SD+, only the first LCD button item got shrunk, and the others remain 200x100 as expected). Anyway, I tried to add another 100x100 "standard item" after the first LCD button, and then I set its location to "Macro Pad" / LCD strip, in the hope that this would put the new item in the right place. It did put the new item on the LCD strip, but then it replaces all of the knob items. Either I'm doing it wrong, or some further support in the BTT code might be needed.

  1. With the old way of doing things, you could use the BTT triggers 'Close currently open Stream Deck group' and 'Open Stream Deck Group with Name' to change which groups were active on the Stream Deck devices. How do we do this with the new configuration? I tried using Toggle Floating Menu (and Close Floating Menu), but these only toggle the menu visibility on the computer display rather than changing what is active on the Stream Deck. (I also tried using the old open/close Stream Deck Group triggers with the names of my SD macropad floating menus, but this doesn't work either.)

  2. I'd like to add other things to my LCD strip, like the Weather Widget, but I don't see how to do this...

  3. Is there a macropad item that supports the SD Neo infobar? I don't see anything, but I might be missing it...

Thanks for any help/advice!

Hey, thanks for testing! It's still quite early so most things you mentioned had not yet been implemented.

With 6.684 (uploading) I added

  • Swipe categories at the floating menu level that allow you to override the swipes
  • Mix knob items and lcd items (previously as soon as knob items had been added, no additional lcd items could be added)
  • Predefined action "Open Specific Submenu in Floating Menu" (and the corresponding close action) now work with macro pads.
  • Predefined action "Macro Pad: Show Menu" that allows to load a completely different floating menu onto the pad

Widgets are a bigger topic because of their dynamic nature and limitations on how often I can push a new image to the Macro Pads. I'll work on that soon to make at least some possible.


The macro pad can be used in Stream Deck plugin mode? Or it only works when "Fully controlled by BTT" option is enabled?

only in full control mode, for plugin mode you need to keep using the old stream deck specific implementation

1 Like

Hi Andreas,

Thanks for the quick response and for the functionality updates!

Re stream deck and swipes: (I'm currently testing on BTT 6.687)

It seems to me that the default behavior for swipe direction is backwards from the next and prev page chevrons.
That is, the next page button uses ">>", which looks to me like movement to the right. But, to get to the subpage, you actually need to swipe left.
Similarly, if you are on page 2 and want to get back to page 1, the default prev page button is "<<", but you need to swipe from left to right
to get the same behavior.

Re LCD Strip items:

  • I can now add a non-knob item to the LCD strip (as described in my last message). Very cool.
  • I want to add text to my new LCD strip item.
    I can do this the usual way by just clicking on the Item Appearance and typing, but the text doesn't show up on the item, either on the stream deck, or on the floating menu on the display if I bring it up.

Re Changing pages using Macro Pad: Show Menu :
There's something weird about the behavior I'm seeing. (Maybe several things...)
I have 3 floating menus:
Defined globally: "SD+ test" , "SD+ test 2"
Defined for Firefox: "SD+ test"
(The name overload is intentional, I use this a lot to get behavior that changes with the active app. I love that this works.)

When I first start BTT, there is no menu on the Stream Deck until I open the BTT Config window, then things work fine.
The global "SD+ test" menu is active on the StreamDeck.
If I change the active app to Firefox, then I get the Firefox version of the "SD+ test" menu.

However:
I have one button on the menu set to open the "SD+ test 2" menu. When I press this button, nothing happens immediately, but if I change the
foreground application, then the requested menu appears.

I have one button on the test2 menu set to open the "SD+ test" menu. The same thing happens here: When I press this button, nothing happens immediately, but if I change the
foreground application, then the requested menu appears.

I get the same thing if I trigger the menu change using the stream deck swipe (from menu test2)

Also, at some point in all of this menu changing, the auto toggle back and forth between the Global and Firefox versions of the test menu stops working,
and it get stuck on one of the menus.

If I restart BTT, the stuck behavior persists until the first time that I open the BTT Configuration screen.
If I instead quit BTT, then the LCD buttons don't seem to be visible until I open the BTT Config screen.

Sorry, I know that's not a great description!

Thoughts

  • maybe there is some BTT reset that happens when the Config screen is opened, and if so, does some of this need to also happen on BTT restart?
  • maybe the equivalent of a menu repaint that gets triggered by Macro Pad: Show Menu is stuck waiting on some state event?

Here is the minimal preset I'm using for testing:

SD_floating_test_1.bttpreset (333.2 KB)