Thanks. I have to admit I’m still learning what the plugin can’t and can’t do. Where I can’t get stuff to work, there’s a good possibility I’m the one at fault. I’m a programmer, but I’m also an old guy, so things don’t “click” for me as quickly as they did when I was a strapping young lad. lol
For me atm, it’s all about the TBM. And from what I can gather, there are many unique controls and readings for that plane that either don’t exist in the SDK or are named something totally different. Or things don’t work quite right. Like the inability to get the NG reading, ITT temp being in Rankine instead of Centigrade, the inertial separator (engine 1 anti-ice) activating immediately vs the 30 second delay, and the Boolean feedback for it not working.
And from what I can tell, Master Caution and Master Warning switches aren’t exposed at all in the SDK. You’d think those would be easy and elementary, but they’re not in there to the best of my knowledge. I couldn’t find the values or actions for either.
Yep always needs a bit trials for SimConnect variables.
SimConnect has a very interesting feature whereas you can specify different units, and it gives you the correct value. I simply put Rankine there because it is listed in that unit in the doc (so guarantee to work), but it might work with Centigrade too. Unfortunately, there is no way to change unit in the plugin yet. We are thinking of way to improve this too.
Yeah in-sep is weird. I think previous FSX doesn’t really have in-sep, and this SimConnect version is not up-to-date yet.
Yes SimConnect is still more or less at FSX level, which is very basic. So many of the variables are not exposed via SimConnect. There are another set of variables usually called local variables or lvar, which can be extracted with an in-game mod, and I am thinking of doing that for the plugin also.
My ultimate goal would be to be able to operate the TBM without ever having to use the mouse to click stuff on screen. It’s close to that at this point. I don’t mind so much for the startup routine. I know things like the autopilot switch on the upper panel is likely something we’ll never be able to access through an external API since it’s unique to the TMB. I can live with that. You hit that thing once at startup and never touch it again. Other stuff does have an analogous control in other planes, but can’t seem to get it to work.
Values like NG are common for all turboprops. I don’t know why that wouldn’t be exposed by the SDK. Same thing for N1 and N2 for jet engines. I can find no reference to that in any documentation. Ditto for the engine on/off for jets. You’d think that was a common thing, but I can’t find them (trying to also set up a panel for the Longitude). If you or anyone else happens to know what those are, I’d appreciate feedback.
Looking through the SDK documentation, I wasn’t able to find any reference to alternate units other than Rankine for ITT. My gauge “looks” right in terms of its relative percentage while using Rankine, but I’d love to have a value of Centigrade so the number actually makes sense and matches what’s on my screen.
I’m actually beginning to think that the action of the in-sep is ‘faked’ in game. Activating the switch on the plane’s panel either puts it on a 30 second delay before it activates, or more likely it slowly ramps up from 0 to 100% over a span of 30 seconds like it does in the real plane. And that’s why activating the control via SimConnect activates just toggles it, but doesn’t actually flip the switch in the cockpit. The part I can’t figure out is why I can’t read the Boolean value for it I’ve tried every variable related to engine 1 anti ice and can’t find one that will display its status as “on” for the Stream Deck button.
And on a side note, no eng anti ice command works with the intertial separator on the C208. I thought I’d try it out, and nothing works.
If you could get those lvars esposed, that would certainly add a lot of new functionality.
On a side note about master caution / warning buttons - they’re not even in the list of bindable keys in game. To me, that’s just very odd.
I’m also almost exclusively flying the TBM and would be very interested in your setup. So far I’ve configured most of the AP functions on my physical Stream Deck (wished I’d gone for the XL) and things like lights and different cockpit views on a Stream Deck Mobile running on an iPhone right next to it. If you don’t mind sharing your configuration at some point, for me to get some more ideas / inspiration that would be great
I’m more than happy to share my layout once it’s complete. It won’t be as complete for others as it is for me as I also have the Logitech Multi Panel, and Switch Panel, so I don’t duplicate those functions on the Stream Deck (AP, flaps, gear, etc). I do have some AP functions that are lacking on the Logi panel (FD, LVL, FLX wiuth associated + and -).
In any case, my layout can be a good starting point for others.
There are a lot of variables that just don’t seem to work
PROP RPM:1 should return the main prop RPM on the TBM, but does nothing. The only RPM I could find that works is GENERAL ENG RPM:1, and that’s not the right value. But it does return it.
Was crawling through the Working Title G3000 mod to see how they displayed NG. It seems it1 would require modifications to the plugin beyond my level of willingness to learn to make it work. Ditto for directly access ITT temp in Centigrade.
That would be great, looking forward to it! And yeah I know it won’t fit everyone’s needs, but it’ll be nice to see if there’s anything that I could use in my setup as well…
Pieter is there a recommended way for us to get these values?
I’ve been using FSUIPC7 to read the events from FS2020 and then try to match up values to what is contained in Struct.cs. the question is, is there a different or better way?
We initially took that document, filtered on possible units and implemented the most of them.
As mentioned before, not all of them are in and currently you’re not able to select units yourself.
It’s always a trade-off of usability and configurability. Maybe we need a RAW button or something, where it’s fully customizable which variable and unit you’ll get. Or maybe even a whole different system where you first configure the variables and then assign them to buttons… Hmm…
So with the recent changes to FlightTracker I moved on to version 2 of my Icons.
I moved to a more structured repeatable template design with better layout and font sizes.
I love that the values are now displayed for key items… using the On Off images for Toggles, I can show both states this being off.
TBM 930 PANEL
This is my layout, available at the link at the bottom. A few things to note:
Inertial Separator works, but the action is instantaneous vs ramping up over 30 seconds like on the real thing. Activating this doesn’t flip the cockpit switch. I suspect that when you hit the cockpit switch, it slowly ramps up / down the in-sep over 30 seconds. Unfortunately, there’s no way to do that at this time with this plugin.
I got the inertial Separator indicator working. It was “GENERAL ENG ANTI ICE POSITION:
1”. Pretty sure I had tried that one previously and it didn’t work, but it does now, so that’s what matters.
ITT “works” in the sense that the graph is proportionally correct, but the numerical value it displays is º Rankine vs ºC. It’s not as useful when it’s an odd unit you’re not familiar with. And of course there’s no “red zone” for when ITT gets too high. I may be able to do a partial fix to that.
Fuel gauge shows % instead of gallons. Personally I like that better, as it makes this gauge more generic to work with any plane. It can easily be switched to the gallon variable, but then you need to have a custom one for every plane where you enter 0 as the min value, and the fuel tank capacity in gallons as the max value. Wasn’t worth the effort to me since gallons are displayed on the MFD anyway.
I wanted a Prop RPM gauge, but unfortunately, it seems the PROP RPM:1 variable doesn’t work in MSFS. It was tested with the tool that comes with the SDK. The variable simply doesn’t work at all.
I don’t have all AP commands in this layout, nor various switches, flaps, etc. I have the Logitech Multi Panel and Switch Panel, so I don’t need them for my layout. The only AP stuff I’ve included is stuff that’s not on my Multi-Panel, or buttons that will add some extra functionality for long press.
@Pieter1982NL, I have thus far veered away from using the Parepar3D docs in the belief that was just for Perpar3d? Is that assumption incorrect? At least as it pertains to the data we are discussing here?.. [so much to learn, so little time ;-)]
In theory, any sim that can use SimConnect should have the same variables, or at least subsets of the variables available. That includes P3D.
But from what I’ve been seeing using the MSFS testing tool that’s in the SDK, a lot of the variables just don’t work at all in MSFS. I think that’s just part of the SDK being in such a horrible, incomplete state.
The examples good sir, was exactly what I was looking for. Thank You!!!
I loaded in your C172 Profile this morning and got immediately good results!
It seems the Gauge vars I was trying to make work may not yet be working. FLAP Postion, I was sure would work, and with some new found knowledge, I’m sure I can make it and other Items work now too.
I can also see a growing need to work out how to build a little Web App connected to a DB to make it easy to find implemented simconnect control events and common associated variables. Right now I’m doing it in Excel with just Structs.cs and then leveraging FSUIPC7. Its hit and miss since I’m not sure if there is a definitive list of Events and variables that are currently implemented and supposed to work in Flight Tracker.
Last night my son pointed me to a tool included with the MSFS SDK that allows you to live test the variables. He and I tested a bunch of vars that would be very useful for gauges, and a lot of them don’t currently work. That’s due to the incomplete nature of the MSFS SDK.
I can’t remember what the tool is called or where it’s located in the SDK folder structure atm. I’m at work, so not at my home computer to check it out.
It’s a mix of many issues, which are also common in FSX and P3D:
SimConnect simply doesn’t support the variables/events. In this case, you will get an error if you try to use the variables/events. This happens to a few that MSFS has renamed/removed.
SimConnect has working variables/events, but the aircraft/panel simply doesn’t set value to those. This happens to a ton of 3rd party stuffs in FSX and P3D, they simply don’t care about SimConnect and use all internal variables. In MSFS, this happens to the A320 on certain level (e.g. the AP has to use a bunch of extra variables for each mode Adapt button to Airbus 320 behavior · Issue #65 · nguyenquyhy/Flight-Tracker-StreamDeck · GitHub, and for some reason, COM/NAV freq only sets value to SimConnect but doesn’t read changes from SimConnect). This is the same for G1000 ignoring a bunch of SimConnect events.
Honestly, I always feel that SimConnect is a mess since every add-on can decide on their own whether to publish a standard SimConnect values to play nice with others, or to publish weird SimConnect values as they see fit, or to ignore SimConnect and use lvar, or to not even use lvar. The decision to maintain backward compatibility with SimConnect in MSFS is great since all my old FSX SimConnect plugins more or less work without modification, but I think supporting something so old would hold Asobo back in many regards. I always hope that Asobo would come up with a next generation of SimConnect, but that would definitely take some time and would make people even angrier. Or maybe SimConnect is already the best solution for the crazy variety of aircraft and components, which I admit is a very difficult problem to solve.
I have no experience with previous sims. I’ve never been a civilian flight sim guy until MSFS2020, so I lack a lot of the context of these tools, their history, etc. I appreciate your thorough explanations. It gives me a better understanding of the state of things and why they’re that way.