When hovering over a control/switch/button in a cockpit, allow an Alt or Shift keyboard press to display the information that Spad uses for it’s bindings.
I would like the option to have what MSFS shows when I hover over a switch/button/control to show me exactly what the Spad event I need to find and assign to a button on my device actually is. I wouldn’t expect it to correlate when I simply hover over the button, but if I add Alt or Shift I should see the code I need to look for and use in Spad (and presumable MobiFlight as well…) Spad uses the code that MSFS uses, so it seems it wouldn’t be too hard to program that functionality.
A lot of people are using Spad.NeXt - more and more every day it seems. I’m learning it, and it’s frustrating to have to guess which command I need to assign in Spad in order to make the cockpit buttons do what I want them to do.
This is not going to happen, many times an event is not triggered but an LVAR is changed or more than one LVAR is changed, sometimes an event can trigger an action but the action does not trigger the event.
As LKFJP said your best option is to use SPAD Event Monitor or Data Monitor to detect what you need to change to map your hardware to the desired action.
A couple of tips about SPAD to make my post less dry:
In the event monitor start the event monitor, stop it immediately, clear all the events that flood the monitor and re-start it, then actuate the switch and check if an event is reported by SPAD. When no event is triggered it is probably an LVAR being changed (see next).
In the data monitor you can “add LVARS” this will add all the LVARs, to detect the one that changes I suggest first to sort the LVARs by number of actuations, then delete the ones that get a lot of actuations without you doing any action, then repeat the action you are interested in several times, for example if you want to map the heading bug change it 10 or 20 times, then re-sort the data monitor by number of actuations and hopefully the LVAR you are interested will be near the top, keep changing the button/dial/switch in the cockpit and check if you detect which LVAR(s) is/are changing.
Been trying to figure out how to use my radio panel to control the MCP in the PMDG 737. I was able to get it with Simconnect. I think they do something different (because of course) because when i change my altitude knob it doesn’t register exactly what simconnect is doing, if that makes sense. I don’t recall exactly what it was saying for that action but it just made it difficult to figure it out.
I ended up just using ChatGPT to tell me which simvars to use
I’ve been using Spad extensively over the past couple of years and I cannot even begin to imagine how my MSFS would be without it. 100% of controls for all my peripherals is done via Spad and I am not using in-game controller configs at all, I haven’t mapped a single in-game key related to aircraft systems or controls.
Binding controls/systems for default Asobo aircraft isn’t really that difficult if you check Spad’s event/data monitor. But then nowadays I’m not flying Asobo aircraft at all, due to their lack of complexity. I’m only using 3rd party ones.
Having said that, when trying to create bindings (or combinations of bindings) my main problem is neither MSFS, nor Spad. It’s the fact that 99% of 3rd parties:
will NOT document which LVARs they are using for which systems (or they’ll only document a very small percentage of them)
will NOT document how each LVAR is supposed to be used (min/max, what does each value do etc), or provide specific examples on how a specific task can be achieved
will NOT map everything to LVAR, but will often use a combination of different variable types or simconnect events
will NOT document whether a certain system is controlled via LVAR or simconnect event (or both)
will NOT document which systems aren’t controlled by LVARs but by something else that can’t be mapped at the moment or isn’t exposed (e.g. B: event or whatever)
and so on.
It seems to me the devs are just saving time in documentation, possibly assuming that end users who care about such things will take the time and effort to figure them out on their own. I haven’t found a single 3rd party "“study level” aircraft which documents all (or even most) of its LVARs and whatnot. Some (like SWS’s Kodiak or WBSim’s Cessna 172) will document a small list and/or a few examples, but that’s the end of it.
I cannot even begin to count the endless hours I’ve invested in trying to map every single aircraf system to Spad and the endless times I’ve had to search by specific LVARs in either the dev’s Discord (if any, and then official help is rarely provided), or Google if I’m truly desparate.
In the end I always manage to set up 95% of what I’m after, but there are still cases that elude me or that took hours to figure out.
So, suggestion to 3rd parties: please document your LVARs, events and everything that could be of some use to people flying MSFS with DIY cockpits and not mouse+keyboard or Xbox gamepads. I assume you already have this info as internal documentation, used during the project’s development. Why not beautify it slightly and include it in the documention (or at least upload it somewhere), so that it can be shared with those that need it?
Or here is another idea: When you hover over a switch/button/control and hold or press a modifier, you can actually BIND it to one of your controls right then and there, no matter if it is in the keybindings list or not.
There are so many functions in MSFS that are not bindable and not listed in the keybdingins list and that can be insanely fustrating.
I think that once I start playing around with those features I’ll agree with you. Right now (even after watching numerous Les O’Reilly videos on the subjects) it’s all gobbledygook to me.
You might say, “Well, maybe Spad.NeXt isn’t for you.”
It’s true that Spad has a relatively steep learning curve in the beginning, although due to its UI I believe it’s generally simpler to use compared to other similar (and excellent) tools such as Axis and Ohs or FSUIPC. Also it doesn’t help that they’ve stopped updating the forums and have moved to Discord, so some documentation on the site is either not complete or may be outdaded or examples may be missing. But you get over such facts quickly.
I strongly-strongly recommend you join their Discord and also search Youtube for those excellent tutorials posted by LesOReilly, which will save you immense amounts of time in getting an idea of how to set up controls via Spad and also how to do tons of other advanced things based on scenarios (e.g. if the gears are up, then change the color of that LED of your Logitech/Honeycomb to red and 5 seconds later switch it off).
Another option is to download shared snippets from other users, for your specific aircraft and peripheral (there are tons available via Spad’s menu). Even if you don’t use them as they are (I never do), you may get a good understanding of how others set up their controls.
edit: obviously I somehow missed the part where you’ve already watched those LesOReilly videos, sorry…
Thanks for your input and suggestions. I program touchpanel control systems for A/V installation, so I’m pretty confident that if I keep plugging away I’ll be a Spad wizard eventually.
I definitely need to review Les’ Event videos again. I was trying to see what happened on the Alpha when I clicked on a cockpit button, but there were so many events flooding into the window I couldn’t find what I was looking for. I know there’s a way - I just need to learn it.
I am on the Discord, and just paid for the Spad license, so I’ll have plenty of content there to sift through.
If there’re thousands of events flooding in, you can stop the event viewer and then select ignore. That will let you see further events that aren’t among the ones you ignored.
Also, if there are 1000s of events flooding in, maybe consider removing the in-game bindings in favour of bindings in Spad.next. Controls bound in the game fire at dozens of Hz each, which, when there are lots of them, can bog down your system by making it process events 1000s of times a second. Spad is much smarter about how it generates events for your hardware.