Author Topic: (Better) Support for StreamDeck  (Read 2535 times)

Brokenbroccoli

  • Jr. Member
  • **
  • Posts: 77
(Better) Support for StreamDeck
« on: December 09, 2022, 01:31:48 pm »
The handiness of using a StreamDeck together with GSX would be insane if it would work properly.
There is a VERY good StreamDeck profile on fs.to https://de.flightsim.to/file/39482/gsx-pro-streamdeck-xl-profile-aao-scripts which I love. But it seems not to work properly anymore, as the GSX menu has to be open on screen in order to have the StreamDeck work, furthermore you always have to close the menu by mouse after every interaction. It would be lovely if the whole GSX menu could be displayed and interacted with on the StreamDeck without having to open and close the GSX menu on screen. (like it was before? I don't know, since I have bought the StreamDeck recently, but there is a comment on fs.to) Is that possible?

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 51439
    • VIRTUALI Sagl
Re: (Better) Support for StreamDeck
« Reply #1 on: December 09, 2022, 02:31:56 pm »
It's difficult to say what's might going on with a profile which also requires another add-on ( AAO ) to work, it seem quite complex to install it and make it all work. The PDF latest update date is August 28th, that's just 10 days after GSX came out, and we changed lots of things in the way the menu works since then.

I have a regular Streamdeck and a Streamdeck XL as well, and I thought about integrating it directly in GSX as a SD SDK plugin/Simconnect app that could connect with GSX without having to use AAO, but I can't say right now when I'll have some spare time from other more pressing updates to work at it.

Copper

  • Full Member
  • ***
  • Posts: 159
Re: (Better) Support for StreamDeck
« Reply #2 on: December 10, 2022, 11:29:54 am »
But it seems not to work properly anymore, as the GSX menu has to be open on screen in order to have the StreamDeck work
That's not the case. I'm using the Streamdeck profile and never ever have to enable the GSX menu in the sim. Also my Streamdeck profile is unchanged since I set mine up once AaO made this possible - there were no changes required and it still works like on day one.
Just make sure the GSX icon in the MSFS toolbar is not white (active), then the menu will never pop up but still the full interaction using StreamDeck+AxisAndOhs is possible.

But I agree that having a proper API from Couatl for third party applications that maybe avoid the pecularities that the MSFS menu brings would be a great thing, also for people having the StreamDeck but not AxisAndOhs.

It's difficult to say what's might going on with a profile which also requires another add-on ( AAO ) to work, it seem quite complex to install it and make it all work. The PDF latest update date is August 28th, that's just 10 days after GSX came out, and we changed lots of things in the way the menu works since then.
The instruction was not updated since it did not need an update. It still works as it did after release.
The PDF only contains the basic setup - which means to have scripts that refresh the menu items which is needed because of the way how GSX is designed.

I thought about integrating it directly in GSX as a SD SDK plugin/Simconnect app that could connect with GSX without having to use AAO
If GSX would expose a simple REST interface to read and set data, it would be totally sufficient. But please don't implement another Simconnect app since that just makes things more complex. We already have Simvars that anyone can send to MSFS, but those need to work around the GSX MSFS menu specialities (e.g. always refresh menu before selecting an entry).

Just expose a public API from Couatl directly and let other developers build the needed tools. This way one could implement GSX into many other tools (e.g. in the Fenix EFB) without the need of yet again going through Simconnect.
« Last Edit: December 10, 2022, 11:35:48 am by Cipher »

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 51439
    • VIRTUALI Sagl
Re: (Better) Support for StreamDeck
« Reply #3 on: December 12, 2022, 05:37:51 pm »
The instruction was not updated since it did not need an update. It still works as it did after release.

I replied to an user reporting it didn't work anymore, and since I know we changed many things in the way the menu works after that date, I assumed it was because of these changes but, of course, I couldn't possibly know without knowing exactly how that plugin works.

Quote
But please don't implement another Simconnect app since that just makes things more complex. We already have Simvars that anyone can send to MSFS, but those need to work around the GSX MSFS menu specialities (e.g. always refresh menu before selecting an entry).

Just expose a public API from Couatl directly and let other developers build the needed tools. This way one could implement GSX into many other tools (e.g. in the Fenix EFB) without the need of yet again going through Simconnect.

I don't know how you could possibly say that, without knowing anything about how GSX really works, internally.

The only thing you see are the GSX L: variables being exposed, but that's just a way ( a hack ) to connect the HTML/JS menu to the Couatl scripting engine that runs the whole code but, those variables are only a consequence of that but, at the low level, what is really happening IS a Client-server Simconnect communication between the part of the GSX code that runs in Couatl with the GSX WASM module that makes the menu menu working using those variables.

This would be way more simpler and responsive, if GSX/Couatl were simply integrated with the Streamdeck SDK, bypassing that whole superstructure, removing the need of AAO which added an extra layer of abstraction, removing the need to read the tooltip and menu text files that contains the actual menu entries, when GSX could just call into the Streamdeck SDK instead and provide with all the required data directly, jumping over all of this.
« Last Edit: December 12, 2022, 05:40:51 pm by virtuali »

rsm2000e

  • Jr. Member
  • **
  • Posts: 57
  • B738 Pilot AAL-211 YouTube Channel rsm2000e
    • Visit my YouTube Channel today!
Re: (Better) Support for StreamDeck
« Reply #4 on: December 16, 2022, 11:19:09 pm »
It's difficult to say what's might going on with a profile which also requires another add-on ( AAO ) to work, it seem quite complex to install it and make it all work. The PDF latest update date is August 28th, that's just 10 days after GSX came out, and we changed lots of things in the way the menu works since then.

I have a regular Streamdeck and a Streamdeck XL as well, and I thought about integrating it directly in GSX as a SD SDK plugin/Simconnect app that could connect with GSX without having to use AAO, but I can't say right now when I'll have some spare time from other more pressing updates to work at it.

Applause and kudos for a WONDERFUL and ambitious product enhancement, Umberto!  The home cockpit crowd would dearly love to do without the 'onscreen menus' of GSX and be able to properly and robustly control GSX Pro from their Stream Decks!  There is a fellow named Guenter who is known as Guenseli on Flightsim.to that developed a nice profile for GSX Pro and the streamdeck XL https://flightsim.to/file/39482/gsx-pro-streamdeck-xl-profile-aao-scripts which works pretty well, but not perfectly - and so if you could build something similar that works directly without spad.nxt or AAO, why that would be a real gift to the sim community and build your brand to 'the next level'.  I think if you PM Guenther (Guenseli) on Flightsim.to, I am pretty confident he would give you the nice buttons he has made.  Of course the 'missing' buttons to 'start/restart/quit' GSX/Couatl need to be added, along with 'continue pushback' which did not make it into his build yet AFAIK.  With you offering Streamdeck XL compatibility directly without need for third party AAO or spad.nxt, that would likely really accellerate sales as I know many enthusiasts who want to use 3rd party utilities such as GSX but do not want the menus for those products to me up on their in-flight displays (it is 1-an immersion killer and 2-ruins video recordings requiring editing to cut out the on-screen GSX menus from the YouTube videos).  I would pay additional money to purchase the streamdeck add-in for GSX Pro if it were robust and reliable.  Your additional benefit would be a reduction in responding to support messages, as you could build in all your commands / default hotkeys into the Streamdeck build eliminating problems like people using the red X to close onscreen menu in GSX and thus locking up the program... so I want to encourage you to please build this fine upgrade for GSX Pro.  ;)

Copper

  • Full Member
  • ***
  • Posts: 159
Re: (Better) Support for StreamDeck
« Reply #5 on: December 17, 2022, 12:38:18 am »
This would be way more simpler and responsive, if GSX/Couatl were simply integrated with the Streamdeck SDK, bypassing that whole superstructure, removing the need of AAO which added an extra layer of abstraction, removing the need to read the tooltip and menu text files that contains the actual menu entries, when GSX could just call into the Streamdeck SDK instead and provide with all the required data directly, jumping over all of this.
Whatever your solution is, please don't forget that while Streamdeck is pretty common, there are other similar tools which would not benefit from a Streamdeck-only solution.

Loupedeck, Streamlabs Deck, StreamPuppy, TouchPortal, Matric,... A solid (public and documented!) API that allows integration of such tools would be of a much bigger benefit for the whole community than a Streamdeck-Only implementation.
Of course Streamdeck could be an officially supported plugin, but PLEASE open the API for doing things - the community will get creative as they already did with the only publicly documented "API" which are the L:Vars.

If there was a public API already, people would have developed a streamdeck plugin without the need of AxisAndOhs (which is obviously a workaround in lack of a proper API accessible to us). That's pretty easy if you know how to access the needed resources of another program (in that case Couatl).