Flight Data Recorder

Working on a instrument project or just finished a project? Show it to others!

Moderators: russ, Ralph

Post Reply
Message
Author
Tetrachromat
Posts: 236
Joined: Sun Feb 14, 2021 6:55 pm

Flight Data Recorder

#1 Post by Tetrachromat »

Just finished my 'Flight Data Recorder' instrument (currently for MSFS2020 only.)
It can be used to:
- display/inspect flight data values while flying
- record flight data triggered manually
- start/stop recording flight data continously in selectable intervals (125ms .. 16 seconds)

The front panel is similar to a Garmin GTX 330 Transponder front panel. Actually I took the liberty of reusing the graphics from the 'Garmin GTX-327 transponder for XPlane'. Credits to Frans van Goor.
recorder.png
The flight data to display/record is configurable through a JSON file in the 'resources' folder. All data items are individually assigned to 4 data sets:
- 1 set of 'Engine' data (Eng) for up to 4 engines (subsets 1..4), with number of engines determined through SimConnect.
- 3 freely configurable data sets (A, B, C)

Select the data item using the selectors at the bottom

A JSON configuration looks like this:

Code: Select all

{ "Engine": [
    { "label": "Throttle"   , "unit": "Percent"   , "format": "%.1f", "variable": "GENERAL ENG THROTTLE LEVER POSITION:index" },
    { "label": "Manifold"   , "unit": "inHg"      , "format": "%.2f", "variable": "ENG MANIFOLD PRESSURE:index"               },
    { "label": "RPM"        , "unit": "RPM"       , "format": "%.0f", "variable": "GENERAL ENG RPM:index"                     },
    { "label": "Mixture"    , "unit": "Percent"   , "format": "%.1f", "variable": "GENERAL ENG MIXTURE LEVER POSITION:index"  },
    { "label": "Ratio"      , "unit": "Ratio"     , "format": "%.4f", "variable": "RECIP MIXTURE RATIO:index"                 },
    { "label": "Fuel Flow"  , "unit": "GPH"       , "format": "%.2f", "variable": "ENG FUEL FLOW GPH:index"                   },
    { "label": "EGT"        , "unit": "Fahrenheit", "format": "%.0f", "variable": "ENG EXHAUST GAS TEMPERATURE:index"         }
  ],
  "Aircraft": [
    { "label": "Altitude"   , "unit": "Feet"   , "format": "%.0f", "variable": "PLANE ALTITUDE"      },
    { "label": "Weight"     , "unit": "Pounds" , "format": "%.0f", "variable": "TOTAL WEIGHT"        },
    { "label": "KIAS"       , "unit": "Knots"  , "format": "%.1f", "variable": "AIRSPEED INDICATED"  },
    { "label": "KTAS"       , "unit": "Knots"  , "format": "%.1f", "variable": "AIRSPEED TRUE"       },
    { "label": "Pitch"      , "unit": "Degrees", "format": "%.1f", "variable": "PLANE PITCH DEGREES" },
    { "label": "Flaps"      , "unit": "Number" , "format": "%.0f", "variable": "FLAPS HANDLE INDEX"  },
    { "label": "Trim"       , "unit": "Percent", "format": "%.1f", "variable": "ELEVATOR TRIM PCT"   }
  ],
  "Ambient": [
    { "label": "Air Temp"   , "unit": "Celsius", "format": "%.1f", "variable": "AMBIENT TEMPERATURE" },
    { "label": "Pressure"   , "unit": "inHg"   , "format": "%.2f", "variable": "AMBIENT PRESSURE"    },
    { "label": "P-Alt"      , "unit": "Feet"   , "format": "%.0f", "variable": "PRESSURE ALTITUDE"   }
  ],
	"Custom": [
    { "label": "DME"        , "unit": "NMiles" , "format": "%.1f", "variable": "NAV DME:1"   }
	]
}
The configuration is loaded when you switch from OFF to STBY or ON. This allows to reconfigure in flight.

The device has 2 modes:
STBY: lets you
- display and cycle through any data items from the 4 data sets (and subsets for engines)
- record a single flight data record anytime (press REC)

ON: let's you
- choose the recording interval with (+)/(-) buttons
- start and stop continous recording of flight data (press REC)

The LCD display shows
recording.png
recording.png (4.9 KiB) Viewed 1171 times
on the left side:
- the recording interval [ms]
- the instrument state (STBY, READY, REC)
- a recording indicator (R)
on the right side:
- the data set name (plus engine number for engine data)
- the data item label
- data item unit of measurement
at the center
- the formatted data value

Currently the flight data is recorded in the AM log file (C:\Users\<user name>\Air Manager\log.txt) in CSV format for postprocessing in external apps (e.g. Excel).
See also my Feature Request: Recording Flight Data for having a separate Log4J destination for the recording.

I might submit the instrument to the community if there is some interest in it. But the code need's some refactoring as I use some own library code and SI does not like this in community instruments.

Paul

User avatar
Keith Baxter
Posts: 4674
Joined: Wed Dec 20, 2017 11:00 am
Location: Botswana

Re: Flight Data Recorder

#2 Post by Keith Baxter »

Good work Paul.

Keith
AMD RYZEN 9 5950X CPU, Corsair H80I cooler, ASUS TUF GAMING B550-PLUS AMD Ryzen Mother Board,  32Gb ram Corsair Vengeance 3000Mh, MSI GTX960 4G graphics card 

Tetrachromat
Posts: 236
Joined: Sun Feb 14, 2021 6:55 pm

Re: Flight Data Recorder

#3 Post by Tetrachromat »

Attached you can find an export file (SIFF) of the public version of my data recorder instrument, that should run without my custom library code. Import the file and add it to a panel of your choice.
Generic - LC Data Recorder.siff
(827.5 KiB) Downloaded 58 times

I also attach a simple documentation with operating instructions and a description of the data set configuration.
LC Data Recorder.pdf
(356.65 KiB) Downloaded 74 times

I would appreciate any feedback, questions, bug reports.

Paul

Tetrachromat
Posts: 236
Joined: Sun Feb 14, 2021 6:55 pm

Re: Flight Data Recorder

#4 Post by Tetrachromat »

This is a new release (v2.0.1) of the data recorder.

Changes
- FIXED: When recording is active (REC state) and power is lost or Avionics Master is switched off, recording does not stop (e.g. after aircraft shut down).
Generic - LC Data Recorder.siff
(827.98 KiB) Downloaded 64 times

Post Reply