TMD file again

  • So IPACS uses the famous "Teenager Engine", I'm sure they think cars run on thin air too.

    Using the Cessna fuel system as the Starfighter is pretty basic, it will do for now and I'll give up trying to stop the engine. Maybe I can just frighten users by flashing up a low fuel warning, if I knew how to do it. Like the hud and afterburners, info on interior lighting is rather sparse to non existent.


  • So IPACS uses the famous "Teenager Engine", I'm sure they think cars run on thin air too.

    Using the Cessna fuel system as the Starfighter is pretty basic, it will do for now and I'll give up trying to stop the engine. Maybe I can just frighten users by flashing up a low fuel warning, if I knew how to do it. Like the hud and afterburners, info on interior lighting is rather sparse to non existent.


    You can also override the engine thrust input and force the engine to spool down to idle.

  • Hi Jan

    My throttle lever has a starter button at the end. This button is pressed in and should latch in position until the engine reaches 45%. Whilst this start cycle is in progress the throttle is advanced to ground idle to open the High Pressure fuel cock to allow the engine to start.

    I have the throttles rotating, the button follows and I can press the button in at any position, so all good so far. Not that we actually have any engines yet but that's another story.;)

    Is it possible to latch the button so I can then grab the throttle to move it to Ground Idle. With some nifty finger work I can do it but its rather fiddly.

    Thanks Steve

  • Instead of using an input_button just use an input_binary with an output to the graphics and a toggle qualifier in the controls. Click it and it stays in.

    The lever can be locked using the InputEnable. Sending 1.0 into that input makes it move, sending it 0.0 locks it. So you could do sth like: InputEnable <- logic_or ThrottleAboveIdle (logic_greater) || ButtonPressed (your input_binary)

    Check our the Learjet 45 thrust levers. The are latched above idle until you pull the release and move them to cut off... Not quite the same but involves similar elements. You'll have to enable the cut off in the controls.tmd.... don't expect the engines to physically stop yet... But that is not as far off as you might think

  • Hi Jan

    Thanks for the input :rolleyes: (sorry couldn't resist). Buttons now work fine thanks. Will need to add a cutout feature to return them to the out position later when we get the heli engines and I can actually work with real figures.

    Throttles are only used at start and stop so locking isn't really needed. It's an awkward procedure getting a Lynx going but it will be as accurate as I can get it so if it's not started correctly it won't work (that's the plan anyway, usual T & C's apply etc). An HP cutoff will be required but that shouldn't be too difficult, bull in a china shop method works eventually.


  • Hi Jan

    Another TMD question

    I am trying to drive the small ITT needle on the turbine gauge, which refuses to move. The main needle shows the correct reading. As we do not have heli engines yet I am using a constant to test things out. Inputting 873.15(K) shows 600(C) on the right gauge, inputting 823.15(K) shows 550(C) on the left gauge but the small needle should show 5 (ie 50 degees C) Code I am using is similar to the NH Gauge which works perfectly.



    <[tmvector2d][Map][(0.0 0.0) (100.0 62.8304) ]>


    I have tried 1.0, 10.0 and 100.0... Graphics mapping input is the same for the small and large needle


  • Hi Steve,

    if your EngineITTLeftInput is in kelvin then your mapping only covers the range from -273°C to -173°C, not very useful. Change your Map to sth like this:

    <[tmvector2d][Map][ (273.15 0.0) (1273.15 62.8304) ]> to extend the input range from 0°C to 1000°C

  • Hi Jan

    Is it possible to make a light flash for a period of time when a button is released.

    I can get the light to steady illuminate on Annunciator test and I can get the light to flash using a graphics_flasher, I just need it to simulate doing a bite test by the light continuing to flash for 15 seconds when the button is released

    Padowan Steve

  • Yes.

    input_event with the button message,

    event_pulse with duration of 15.0

    in the input_event fire that pulse .Trigger and then use pulse .Output as your light source

    Check out the C172 transponder ident, that should work very similar.

  • Hi Master Obi Jan Kenobi

    My Radar Warning Receiver now has a bite test system, 10 seconds as 15 was far too long to wait, just need to cobble together a credible display.

    Could you enquire with the modelling team how I need to make the rotor items as without a heli TMD it's all guess work, and the TTX files are also useless

    Once again I thank you for your guidance and I stand with my head bowed towards my monitor


  • Forgot to ask,

    Is it possible to input Lat and Long as a start position, destination and way points.

    The TANS navigation system is only lat and long, it was pretty useless in the Lynx so no big deal if not. If not I will then model a packet of Polo's to insert on top the TANS display as that's where we normally kept them.


  • Obi Jan Kenobi, I like that. I'll try to use that as my next user name LOL

    Not sure what you want to know about how to model it?

    On the R22 pretty much every push rod, link or plate is separate.

    The rotor pivot is at 0.0 0.0 ~1.5m (makes things easier), the axis is 0.0 0.0 1.0, so straight up, blade bitch is adjusted to have 0° of incidence at 0.75 R or whatever your collective 0° is defined at...

    We recommend having the rotor flat in the x-y plane (so no tilt forward or aft), it is possible to even tilt it forward but I'd recommend just having the rotor straight and the rest of the model at an angle

  • Hi Steve,

    It might be possible but it hasn't been done yet, so it will require a bit of extra work on our side. I'd save that for later and just use the default navigation route for your missions and HSI indications.

  • Hi Master Obi Jan Kenobi

    Been strugling with this for far to long so where am I going wrong

    Controls entry uses Communication.COM1Frequency

    TMD entry for Dynamics is




    <[tmvector2d][Range][ 118000000.0 137000000.0 ]>

    <[float64][Value] [ 133550000.0 ]>






    TMD entry for Graphics is




    <[string8][GeometryList][ KnobVHFCommDecimal ]>


    <[tmvector3d][Axis][ -0.0984 0.0000 0.9951]>

    <[tmvector3d][Pivot][ 1.9284 -0.0737 0.3631 ]>


    // <[string8][InputIllumination0][PanelLighting.Output]>


    I get these errors in the TM.log

    object 'COM1FrequencyKnobSmall' not found

    property 'COM1FrequencyKnobSmall.Output' not found

    This method worked fine for the Nav radio in the F104 so I'm stumped


  • Hi Master

    I believe they say,' the more you look the less you see'... it was indeed as you suggested.

    It seems obvious FS2 knows what to expect as it spits out an error. Can it be possible for the TM.LOG file to include a TMD line number and more info on the error.

    In this particular case something like, Line 6826 Angle ID expected.

    I was convinced it was a dynamics problem which is where I spent all my time loosing what little hair I have left.


  • Hi Steve,

    no, this is not possible because at the time that the different objects are linked together the tmd file as such, with the code line and braces, etc. does not exist. It's only a function pointer that points to null which causes this log entry but there is nothing in the code that points back to the original tmd and the amount of data that would require is going to slow down the loading process.

    For these kind of errors my custom aircraft editor is the key to success. The debugger it has checks for all kinds of errors, this is one of the critical ones that I can detect. I've mentioned that editor before and I hope to be able to include it in the Aerofly SDK at some point. Right now I still have some random crashes in my editor, which I would like to fix.

    Best action with a tm.log error is to search the whole tmd and controls.tmd file for that name until you spot the missing piece.

  • Hi Master

    I get the following TM.LOG error

    property 'Communication.UHF1Frequency' is not a member of type 'input_knob'

    Does this mean UHF is not yet supported as it works fine for both NAV1Frequency and Communication.COM1Frequency

    Whilst the sim doesn't crash out, it does try to reach Australia and gives the error quoted in the TM.LOG file


  • No, that means you either spelled input_knob wrong or you are missing a bracket?
    Can you show me your tmd code section around your Communication.UHF1Frequency ?

    I'd recommend sticking with the COM1Frequency because that is what is sent by Saitek Panels and via control assignments. If you use UHF1 as a message that chain breaks and someone with such a hardware panel wont be able to use your craft.