enertial / streamdeck-dcs-interface

A StreamDeck plugin for interaction with Digital Combat Simulator (DCS)
GNU General Public License v3.0
190 stars 16 forks source link

Stream Deck Hot Keys not working #63

Closed ericandi closed 2 years ago

ericandi commented 2 years ago

I have a stream deck XL and used your DCS interface and DCS exports to program a bunch of my stream deck buttons, but there are a lot of things in DCS that are just easier to use a keyboard bind. So I programmed a couple dozen buttons on different streams deck pages and folders using the hot keys feature in stream deck and matching the hot keys to keyboard binds in DCS Control Settings.

All of the streams deck buttons that are programmed using DCS interface and DCS exports are working perfectly, but not a single one of my stream deck buttons programmed as a hot key to a DCS keyboard bind is working.

I texted some stream deck buttons set up as hot keys with keyboard shortcuts to control windows and other apps on my PC and they work just fine, however as soon as I get in DCS and start a mission, none of the stream deck hit keys work. Even simply hot keys set up with single letters and numbers and no modifiers and that match perfectly with keyboard shortcuts in DCS Control settings. The keyboard shortcuts are still working just fine when I use my keyboard in DCS missions, however when I use my stream deck hot keys to emulate the keyboard shortcuts in DCS, nothing at all happens.

Is there anything in the stream deck DCS Interface or DCS Exports that would cause the hot keys functions in stream deck to not function in DCS? I’m am totally perplexed. Obviously my stream deck works fine in DCS with DCS interface/DCS exports scripts and my streams deck works fine outside of DCS with hot keys. But my stream deck hot keys don't work in DCS. Very weird!

charlestytler commented 2 years ago

Yeah, I've also seen this problem in the past, but not knowledgeable on what the Windows/Streamdeck/DCS issue truly is. It was also part of the reason that got me to create this plugin.

I've seen in other forums some people have success by closing and re-starting Streamdeck with "Run as Administrator". But for myself I've just found the DCS exports more reliable. I'll still do a hotkey bind if I just want something quick though. Also, sometimes its just the modifiers (shift, ctrl, etc) that have issues, so if you really want to bind something you could rebind it in DCS to a character keypress and have Streamdeck hotkey send that which might work better.

charlestytler commented 2 years ago

Moving post from @ericandi in #59 to here:

Thanks. I’ll give what you suggested a shot. The controls that I had set up as hot keys matching DCS keyboard shortcuts were mostly things simulator applications controls, not aircraft controls that involve interacting with a physical button, switch, or dial in the cockpit. I programmed hot keys for all of the external views, to add/remove pilot, to add/remove flight stick, and for all of the pilot communication shortcuts like calling the ball, saluting, etc.

At first I thought that it might be the left and right keyboard modifiers that was causing the issues, so then I changed all of my hot keys to single character key binds and then changed the keyboard shortcuts in DCS Control Settings to match the single character hot keys that I programmed in the SD app, but still none of the hot key stream deck buttons worked in DCS.

But if I open up a Word document and press any of the hot key buttons on my Stream Deck, the appropriate characters get typed into Word. The hot keys also work in other flight sim apps like MSFS2020.

I read something on a forum this morning where some other people said they ran into the same issue as me whenever they had the stream deck application open with the stream deck window on a secondary monitor, while DCS is displayed on their main monitor.

I had the stream deck app opened on a secondary monitor with DCS on my main monitor, but I also tried to use my streams deck hot keys with the stream deck application closed altogether and the hot keys still didn’t work.

I will try keeping the stream deck app opened oj my main monitor, but if that doesn’t work, will the momentary buttons work for control simulator functions that don’t have a corresponding physical button, switch, dial, stick, pedal, or throttle in the aircraft?

charlestytler commented 2 years ago

will the momentary buttons work for control simulator functions that don’t have a corresponding physical button, switch, dial, stick, pedal, or throttle in the aircraft?

Things like camera controls (F1, F2, etc) and other General simulation commands don't have great support right now. I think once DCS-BIOS is enabled as a backend this may be easier. But for now I agree hotkeys are probably best if you can get them working.

ericandi commented 2 years ago

So there is nothing in the DCS Controls or DCS Exports plug-ins that would cause Stream Deck Hot Keys to not work in DCS? I didn’t think there would be, but wanted to check just in case, since I can’t think of anything else that would cause this issue.

I tried running the Stream Deck app as Admin, but still none of the hot keys are working to activate keyboard shortcuts in DCS. I know lots of people are only using their Stream Decks with hot keys to control keyboard shortcuts and they aren’t even aware that your plug-in exists, so there must be something on my end that causing the stream deck hot keys to not work in DCS, when they work fine in every other app.

It’s really mind boggling because there really isn’t a lot going on behind the scenes with the stream deck hot keys. It’s a simple keyboard emulator. I know that the hot keys are set up properly because when pressed they type the correct programmed keyboard characters in Word and other apps.

All that’s happening is the stream deck is emulate a keyboard. I can’t figure why they emulation would work everywhere but DCS.

Best Regards, Eric Reyes Cell 407-310-0096 Email: @.***

On Oct 30, 2021, at 12:37 PM, Charles Tytler @.***> wrote:

 will the momentary buttons work for control simulator functions that don’t have a corresponding physical button, switch, dial, stick, pedal, or throttle in the aircraft?

Things like camera controls (F1, F2, etc) and other General simulation commands don't have great support right now. I think once DCS-BIOS is enabled as a backend this may be easier. But for now I agree hotkeys are probably best if you can get them working.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

charlestytler commented 2 years ago

Have you tried uninstalling the plugin from Streamdeck and testing out the hotkeys? That should confirm if it's interfering which I can't think of a way it would. Check out the ED forums, here's an example: https://forums.eagle.ru/topic/266840-cant-get-stream-deck-hotkeys-to-be-recognized-in-dcs/