Fsuipc4 key fsx
Dating > Fsuipc4 key fsx
Download links: → Fsuipc4 key fsx → Fsuipc4 key fsx
Brakes being used flag. When working properly as a video I have seen when you click the flaps take off line eg 5 it puts the V speeds into the Q400 speed bug after hitting enter. Please Note: This version works with versions 1.
This is in double floating point format FLOAT64. Если кому-то что-то не понятно из моего такого поста - пишите - постараюсь объяснить.. В раздаче присутствуют все необходимые версии - выбирайте в зависимости от симулятора и установленных дополнений. If this bit is set then when the Hot Key is detected FSUIPC waits for the KEYUP or another key press first. It is only updated when the user aircraft's Latitude or Longitude change by one minute or more. Flight director pitch value, in degrees. D000 2nd use 16 Reading full AI Traffic identity strings The offset area at D000 can also be used to read full AI aircraft data strings. Convert to Fahrenheit by Rankine — 459. Users are prompted to use the Steam Client to invite someone from the Multiplayer menu to become a friend on Steam.
You will get the correct value from 39F0. FSX FSX-SE Prepar3D Versions releases to date Full release of FSUIPC 5 incorporating WideFS 7 for use with Prepar3D 64-bit Version 4 May 8th 2018 3.
DoutDess торренты без регистрации - Если кому-то что-то не понятно из моего такого поста - пишите - постараюсь объяснить.. These locations operate the FSUIPC facility to send keystrokes to FS.
FSUIPC4 Status of IPC Offsets for FSX Applicable to FSUIPC4 version 4. Needs checking and feedback please Mostly for write only, mapped to Sim Event, but operation unknown. Needs checking and feedback please situation unknown — try it or wait for next issue Not working, awaiting fix in SimConnect Not working, Sim Event seems broken, needs fix in FSX? Not working, hoping for additions to SimConnect Not supported. Appeals to Pete Dowson, with reasons, please Maybe can do okay, but not yet got around to it! Data unknown, not listed for SimConnect. To use this, write the following to offset 0024, as one structure i. Any overlapping setting replaces the previous one, but re-writing the same one with different data is fast as it merely writes to the relevant offsets -- the FS data is already being diverted. Cancel the overrides by writing the same with no data and a length of 0. If you don't cancel, but don't update, the override will be cancelled after about 12 seconds not counting Menu time. Avoid letting this happen, though -- always explicitly cancel when finishing. Note that not all FSX values can be overridden in this way, and none of the normal FSUIPC values can be permanently overridden. However, this facility does provide direct access to ALL offsets, and you can easily wreck things and ruin someone's day! Those which are normally write-protected are not so protected using this facility. This is unchecked, but is said to be the time since 12 noon on January 1 st, Year 0000? No way to directly set a number of seconds. Hour of Zulu time in FS also known at UTC or GMT Minute of Zulu time in FS2 Zulu day of month in FS counting from 1 Day number in year in FS counting from 1 Zulu year in FS Zulu month of year in FS Zulu day of week in FS Local month of year in FS Local day of month in FS Local time offset from Zulu minutes. If you increase this you will normally see an FS progress bar as it reloads traffic AI General Aviation Traffic Density % 0—100. Lights: this operates the NAV, TAXI, PANEL and WING lights. For separate switches see offset 0D0C Beacon and Strobe lights. For separate switches see offset 0D0C Landing lights. See also offset 0D0C. Convert True headings to Magnetic by subtracting this value, Magnetic headings to True by adding this value. Not updated in Slew mode! See also offset 02D6. A frequency of 1234. Can be used to check hardness of touchdown but watch out for bounces which may change this. This is the one used in the G1000 gauge. ADF1 Frequency: main 3 digits, in Binary Coded Decimal. See also offset 0356. A frequency of 1234. See also offset 0389 COM1 frequency, 4 digits in BCD format. A frequency of 123. The leading 1 is assumed. NAV1 frequency, 4 digits in BCD format. A frequency of 113. The leading 1 is assumed. NAV2 frequency, 4 digits in BCD format. A frequency of 113. The leading 1 is assumed. Transponder setting, 4 digits in BCD format: 0x1200 means 1200 on the dials. Not updated in Slew mode. Provided in 32-bit floating point format 2nd FSUIPC monitored value right-hand side of Logging tab , if numeric. Provided in 32-bit floating point format 3rd FSUIPC monitored value right-hand side of Logging tab , if numeric. Provided in 32-bit floating point format Left aileron deflection, in radians, as a double floating point value Right aileron deflection, in radians, as a double floating point value The current state of the buttons on actively scanned joysticks local ones, 0 to 15. Each of the 16 DWORDS contain the 32bit state of the joystick 0-15, in order. Button 0 is the least significant bit bit 0 in each DWORD. The filename of the last flight or situation saved, as an ASCII string with a zero terminator. Use the counter at 3BD2 to determine when this has changed. Aileron trim axis input, 64-bit floating point double , read-only Rudder trim axis input, 64-bit floating point double , read-only Aileron trim axis required value, 64-bit floating point double. See offsets 480— 0498 above. Elapsed seconds value, as a double. Accurate to fractions of a second but only updated frame by frame. This value counts simulated time, stopping in paused and menu modes, speeding up and slowing down according to the actual sim rate. Area reserved by FSUIPC. This is used to provide the METAR reporting station altitude so that the cloud bases can be converted to AGL. Write 0xFFFF to release control back to FS. Sets surface layer dewpoint only, FSUIPC does rest. Write 0x8000 to release control back to FS. Surface layer wind speed, in knots. This may be different to the current wind speed at the aircraft—see offset 0E90. This may be different to the current wind direction at the aircraft—see offset 0E92. INITIAL POSITION: Airspeed setting. FSUIPC4 will use the INITIAL POSITION facility in FSX to place your aircraft and set the speed. To set the speed at the current position but not on ground , just write this offset and FSUIPC4 will use the following values as they currently stand. INITIAL POSITION: On-ground setting. FSUIPC4 will use the INITIAL POSITION facility in FSX to place your aircraft. It will set the speed to 0 if the on-ground value is nonzero, but otherwise it will use the current airspeed from 02BC. Latitude of aircraft in FS units. Read offset 6010 for easier conversion! To convert to Degrees: If your compiler supports long long 64-bit integers then use such a variable to simply copy this 64-bit value into a double floating point variable and multiply by 90. Otherwise you will have to handle the high 32-bits and the low 32-bits separately, combining them into one double floating point value say dHi. To do, copy the high part the 32-bit int at 0564? Divide dLo by 65536. This preserves the integrity of the original positive or negative number. Finally multiply the result by 90. Either way, a negative result is South, positive North. Read offset 6018 for easier conversion! To convert to Degrees: If your compiler supports long long 64-bit integers then use such a variable to simply copy this 64-bit value into a double floating point variable and multiply by 360. Otherwise you will have to handle the high 32-bits and the low 32-bits separately, combining them into one double floating point value say dHi. To do, copy the high part the 32-bit int at 056C to one double and the low part the 32-bit unsigned int at 0568 to another say dLo. Divide dLo by 65536. This preserves the integrity of the original positive or negative number. Finally multiply the result by 360. Either way, a negative result is West, positive East. If you did it all unsigned then values over 180. The units are in the high 32-bit integer at 0574 and the fractional part is in the low 32-bit integer at 0570. Bits here mark which of the aircraft situation variables LLAPBH, Lat Lon alt Pitch Bank Heading in offsets 05600580 were updated by FS at the time provided in offset 0588. The viewpoint Latitude 8 bytes , Longitude 8 bytes and Altitude 8 bytes in the same format as 0560—0577 above. This is read only and seems to relate to the position of the viewer whether in cockpit, tower or spot views. One keypress on Q up or A down makes a change of 512 units. Values 1—127 give slow to fast slewing —128 is the fastest forward slew. Values 1—127 give slow to fast sideways slewing —128 is the fastest leftward slew. Can write to turn on and off whilst there is still time to play see offset 062C Instant replay: time left to run, in seconds. Whilst this is nonzero, the flag in offset 0628 controls the playback. This area was intended to contain a table of data about the 6 nearest airports to the user aircraft, in order nearest to furthest. Unfortunately, whilst it seems to work quite often, it is unreliable, and even frequently fails to list even the airport on which the user airraft s standing! Anyway, in case the poor results are useful to anyone, I've left it in for now. Each entry is 20 bytes long, consisting of 4 fields as follows: 0 4 8 4 bytes 4 bytes 4 bytes ICAO ID of the aircraft. If this is 3 characters only the 4th will be zero. Latitude of the airport, in degrees, as a 32-bit Float N positive, S negative. Longitude of the airport, in degrees, as a 32-bit No-SimC+ No-SimC+? Altitude of the airport, in feet, as a 32-bit Float. Distance from the user aircraft, in nm. It is only updated when the user aircraft's Latitude or Longitude change by one minute or more. Area used for operating, controlling and configuring the facilities in FSUIPC for feedback flight control bank, pitch, speed, yaw. For full details of this please see the separate TXT documentation in the SDK. Writing rounds to the nearest whole % Autopilot GlideSlope hold N. To clear both you need to write 0 to them in the same FSUIPC process call, as if they are separated by an FS frame, an interlock stops them clearing. See the note above, for offset 07FC. Autopilot Back course hold. The note for offset 07FC may also apply here. Yaw damper Autothrottle TOGA take off power Ok-Intl Ok-Intl No Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC? Applicable to Robinson model helicopter only. Writing: there appears no way to set the level of braking directly. The only way to influence it is to send Rotor Brake controls. In an attempt to achieve the written value, FSUIPC4 send Rotor Brake controls to FSX on every FS frame whilst the read-out for the rotor braking value is less than that last written to 0822. There is an exception—if the read-out remains zero for 4 such attempts, the written value is reset to zero too. This is to infallibly cope with aircraft with no implemented rotor brake, avoiding continuous useless control applications.. This was intended to achieve the result of a sustained brake pressure oscillating close to the value being written, but unfortunately the Rotor Brake control imposes immediate maximum brake pressure but with a fast reduction. The result, therefore, is an oscillation between maximum and just under the requested value. Rotor lateral trim 0 to 16384. Applicable to Robinson model helicopter only Rotor transmission temperature 64-bit double float, in degrees Rankine. Possibly only applicable to Robinson model helicopter, but no success in seeing this! Action on crash not working. For FS2004 and before this was a 4-byte value. Now the two high bytes are used for flags as shown in the next two entries. Same units as in 085C above. DME2 Longitude when available separately. Same units as in 0864 above. DME2 elevation in metres when available separately. Vertical speed in metres per minute, but with —ve for UP, +ve for DOWN. NAV2 ILS localiser inverse runway heading if VOR2 is ILS. This is 180 degrees different to the direction of flight to follow the localiser. NAV2 ILS glideslope inclination if VOR2 is ILS. VOR2 Latitude, as in 085C below, except when NAV2 is tuned to an ILS, in which case this gives the localiser Latitude. VOR2 Longitude, as in 0864 below, except when NAV2 is tuned to an ILS, in which case this gives the localiser Longitude. VOR2 Elevation, in metres, except when NAV2 is tuned to an ILS, in which case this gives the localiser Elevation. VOR2 Latitude in FS form. If NAV2 is tuned to an ILS this gives the glideslope transmitter Latitude. VOR1 Latitude in FS form. If NAV1 is tuned to an ILS this gives the glideslope transmitter Latitude. VOR2 Longitude in FS form. Convert to degrees by Ok-SimC No Ok-SimC Ok-SimE No Ok-SimE but see notes 0824 0826 0828 2 1 8? If NAV2 is tuned to an ILS this gives the glideslope transmitter Longitude. VOR1 Longitude in FS form. If NAV1 is tuned to an ILS this gives the glideslope transmitter Longitude. VOR2 Elevation in metres. If NAV2 is tuned to an ILS this gives the glideslope transmitter Elevation. VOR1 Elevation in metres. If NAV1 is tuned to an ILS this gives the glideslope transmitter Elevation. NAV1 ILS localiser inverse runway heading if VOR1 is ILS. This is 180 degrees different to the direction of flight to follow the localiser. NAV1 ILS glideslope inclination if VOR1 is ILS. VOR1 Longitude, as in 0864 above, except when NAV1 is tuned to an ILS, in which case this gives the localiser Longitude. VOR1 Elevation, as in 086C above, except when NAV1 is tuned to an ILS, in which case this gives the localiser Elevation. DME1 Latitude when available separately. Same units as in 085C above. DME1 Longitude when available separately. Same units as in 0864 above. Active engine select flags. See notes against offset 0892. Rotor clutch switch, when applicable. Can be read and written. DME1 Elevation in metres, when available separately. Engine 1 combustion flag TRUE if engine firing Engine 1 Jet N2 as 0 — 16384 100%. This also appears to be the Turbine RPM % for proper helo models and now also for the FS2004 Robinson model and derivatives Engine 1 Jet N1 as 0 — 16384 100% , or Prop RPM derive RPM by multiplying this value by the RPM Scaler see 08C8 and dividing by 65536. Note that Prop RPM is signed and negative for counter-rotating propellers. Engine 1 Throttle lever, —4096 to +16384, same as 088C above except that values written here are treated like axis inputs and are disconnectable via offset 310A, and have the last written value obtainable from offset 3330 Engine 1 Fuel Flow PPH SSL pounds per hour, standardised to sea level. Not maintained in all cases. Note that in some aircraft eg the B777 this can exceed the 16-bit capacity of this location. FSUIPC limits it to fit, i. You will get the correct value from 3B70. I will fix this when I can Ok-SimC? This is a relative measure of amplitude from the sensors on the engine which when too high is an indication of a problem. The value at which you should be concerned varies according to aircraft and engine. This is correct for true Helo models like the Bell. Other prop-based models have this computed by FSUIPC4 from the actual torque in 0920, assuming a maximum of 600 ft-lbs. Engine 1 Fuel pressure, psf i. Engine 1 Electrical Load. True helo models only I think. Note that Prop RPM is signed and negative for counter-rotating propellers. Engine 2 Throttle lever, —4096 to +16384, same as 088C above except that values written here are treated like axis inputs and are Ok-SimC Ok-SimC? Not maintained in all cases. Note that in some aircraft e. FSUIPC limits it to fit, i. You will get the correct value from 3AB0. This is a relative measure of amplitude from the sensors on the engine which when too high is an indication of a problem. The value at which you should be concerned varies according to aircraft and engine. Engine 2 fuel used since start in pounds, 32-bit float Engine 2 fuel elapsed time in hours, 32-bit float Engine 2 Fuel Flow Pounds per Hour, as floating point double FLOAT64 Engine 2 Torque in foot-pounds, as a 32-bit Float. Note that Prop RPM is signed and negative for counter-rotating propellers. Not maintained in all cases. Note that in some aircraft eg the B777 this can exceed the 16-bit capacity of this location. FSUIPC limits it to fit, i. You will get the correct value from 39F0. This is a relative measure of amplitude from the sensors on the engine which when too high is an indication of a problem. The value at which you should be concerned varies according to aircraft and engine. Engine 3 fuel used since start in pounds, 32-bit float Engine 3 fuel elapsed time in hours, 32-bit float Engine 3 Fuel Flow Pounds per Hour, as floating point double FLOAT64 Engine 3 Torque in foot-pounds, as a 32-bit Float. Note that Prop RPM is signed and negative for counter-rotating propellers. Not maintained in all cases. Note that in some aircraft eg the B777 this can exceed the 16-bit capacity of this location. FSUIPC limits it to fit, i. You will get the correct value from 3930. This is a relative measure of amplitude from the sensors on the engine which when too high is an indication of a problem. The value at which you should be concerned varies according to aircraft and engine. Engine 4 fuel used since start in pounds, 32-bit float Engine 4 fuel elapsed time in hours, 32-bit float Engine 4 Fuel Flow Pounds per Hour, as floating point double FLOAT64 Engine 4 Torque in foot-pounds, as a 32-bit Float. See 0020 for more accuracy. Bleed air source control. Just write any Non-Zero value to start, or all zero to stop. Aileron control input: —16383 to +16383 Aileron position indicator maybe adjusted from input! Note that FSX provides left and right values. Only the left is used here Rudder control input: —16383 to +16383 Rudder position indicator maybe adjusted from input! Elevator trim control input: —16383 to +16383 Elevator trim indicator follows input Left brake application read-out 0 off, 16383 full: parking Ok-SimC No No-SimC+ No-SimC+ No No? You can also apply a fixed brake pressure here, or else use the byte at 0C01 to apply brakes emulating the keypress. Note that the values READ here run from 0 to 16384, but will not match exactly the values written. They seem to follow an exponential curve, being much lower at the low end e. You can apply a fixed brake pressure here, or else use the byte at 0C00 to apply brakes emulating the keypress. Note that the values READ here run from 0 to 16384, but will not match exactly the values written. They seem to follow an exponential curve, being much lower at the low end e. The 4800 value is set by arming. Values from 0 to somewhere close to, but below, 4800 do nothing. The percentage extension is the proportion of the distance in the range 4800 to 16383, even though values 4800 to 5619 cannot be used—7% seems to be the minimum. See also offset 3BFA below. Do not expect to read this and see 100% accurate values. Flaps position indicator left. This only gives the inboard? Please see offsets 30E0—30FF for greater details where needed. Flaps position indicator right. This only gives the inboard trailing edge flaps. Please see offsets 30E0—30FF for greater details where needed. This is the value set in the Display Quality Settings. At present, FSUIPC4 tries to accommodate writes to this value by using INCR and DECR. This gives powers of two values, range 64 to 32768 — i. If you use intermediate values you will get the next one up or down. The 5th character may be a zero or a space. The 5th character may be a zero or a space. Any value written here will normally be read back slightly differently, based upon this granularity. Note that this is in degrees Magnetic for a VOR, but TRUE for an ILS LOC. NAV1 signal strength: For Localisers, seems to be either 0 or 256 For VORs varies from 0 to over 1,000,000 when really close! Note that this is in degrees Magnetic for a VOR, but TRUE for an ILS LOC. NAV2 signal strength: For Localisers, seems to be either 0 or 256 For VORs varies from 0 to over 1,000,000 when really close! Parameter associated with any Macro or Lua call sent to the following offset 0D70 Write here the complete identity string of a Macro control or Lua program control in order to have FSUIPC execute it. For a Macro, the string should begin with up to 16 characters Ok-SimC Ok-SimC Ok-SimC Ok-SimE No No Ok-SimC Ok-SimC Ok-SimC but see note No No No Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC No No Ok-SimE No No Ok-SimC? The valid Lua controls are: Lua, LuaDebug, LuaKill, LuaSet, LuaClear, LuaToggle Note that a parameter should always be written first for the Set, Clear and Toggle controls as this specifies the flag to be changed 0—31. If a parameter is to be supplied, it should first be written to offset 0D6C, above. Otherwise whatever was last written there will be supplied. Write has no effect except graphical. Write has no effect except graphical. This is the interpolated value for the aircraft altitude, as supplied by FSX. For compatibility with previous FS versions, the direction is Magnetic for surface winds aircraft below the altitude set into offset 0EEE , but True for all upper winds. See offset 02A0 for magnetic variation and how to convert. Hence for layered weather aspects the only accurate values are for the altitude of the aircraft. This applies to temperature and wind layers. The other layers are populated by FSUIPC4 from the weather reported by the nearest Weather Station. Surface wind ceiling, metres AGL Surface wind speed, knots. Divided into steps by FSUIPC. Divided into steps by FSUIPC. FS98 style Global Weather setting area: details follow. Surface wind ceiling, metres AGL Surface wind speed, knots. Divided into steps by FSUIPC. Divided into steps by FSUIPC. Divided into steps by FSUIPC. See text Not used However, since version 3. Consequently, for compatibility, FSUIPC will now always set 0FF0 to zero and continually change the timestamp at 0FFC The full path to the folder where FS will save flights, in UNC format i. Inner Marker Latitude in FS form. Inner Marker Longitude in FS form. Inner Marker Altitude in metres Middle Marker Latitude in FS form. Middle Marker Longitude in FS form. Middle Marker Altitude in metres Outer Marker Latitude in FS form. Outer Marker Longitude in FS form. Outer Marker Altitude in metres ADF1 Latitude in FS form. ADF1 Longitude in FS form. ADF1 Altitude in metres ADF2 Latitude in FS form. ADF2 Longitude in FS form. Set according to the local time, read for lighting effects and so on in BGLs. The value 32767 is 180 degrees Angle of Attack. Note that the indicator angle actually decreases as the wing AofA increases. This is the aircraft weight without the payload and fuel. This is the maximum aircraft weight including payload and fuel. Count of Payload Stations A set of Payload Station data, 48 bytes for each payload station the count is in 13FC above. These loadings can be changed, and this does have some effect, but are changes are being promulgated to the overall weights offsets 30C0, 30C8, 3BFC and balance 2EF8? Needs checking in FSX. Ok-SimC No 11C6 11D0 123E 123F 1240 1244 1248 124C 1250 1254 1258 125C 1260 1264 1268 126C 1270 1274 132C 1330 1334 13FC 1400 2 2 1 1 4 4 4 4 4 4 4 4 4 4 4 4 4 2 4 4 4 4 48 x n Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC Ok-SimC No Ok-SimC? You cannot read back what you have written here. The data this structure should contain is as follows: id Any id number UNIQUE to all aircraft you supply. It does not have to be unique to the AI aircraft. FSUIPC keeps an internal flag to distinguish the two types. This doesn't need to be unique but it could be rather confusing to the user if it isn't. To erase an aircraft provide the specific id for that entry, and set the idATC field to null i. In any case, FSUIPC will automatically erase any externally supplied aircraft after about 8—12 seconds if it receives no further updates in that time. Even if the aircraft is static you'll need to supply updates for it regularly. Apart from the user-adjustable range, which is applied, FSUIPC is not performing any filtering for these aircraft—i. However, once the airborne TCAS table is full current capacity 96 whether with AI aircraft, MP aircraft, or a mixture, no others will be accepted until slots become free. So in this sense slot management is up to you. Turbine Engine 1 N1 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 1 N2 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 1 corrected N1 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 1 corrected N2 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 1 corrected fuel flow pounds per hour as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 1 max torque fraction range 0. Turbine Engine 1 EPR as a double FLOAT64. This is for jets and turboprops. Turbine Engine 1 ITT interstage turbine temperature in degrees Rankine, as a double FLOAT64. This is for jets and turboprops. This is the jet thrust. See 2410 for propeller thrust turboprops have both. This is for jets and turboprops. Turbine Engine 1 Fuel Available flag Turbine Engine 1 bleed air pressure pounds per square inch as a double FLOAT64. This is for jets and turboprops. Turbine Engine 1 reverser fraction, a double FLOAT64 , in the range 0. Turbine Engine 1 Vibration Turbine Engine 1 Ignition Switch Turbine Engine 2 N1 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 2 N2 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 2 corrected N1 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 2 corrected N2 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 2 corrected fuel flow pounds per hour as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 2 max torque fraction range 0. Turbine Engine 2 EPR as a double FLOAT64. This is for jets and turboprops. Turbine Engine 2 ITT interstage turbine temperature in degrees Rankine, as a double FLOAT64. This is for jets and turboprops. This is the jet thrust. See 2510 for propeller thrust turboprops have both. This is for jets and turboprops. Turbine Engine 2 fuel available flag Turbine Engine 2 bleed air pressure pounds per square inch as a double FLOAT64. This is for jets and turboprops. Turbine Engine 2 reverser fraction, a double FLOAT64 , in the range 0. Turbine Engine 2 vibration Turbine Engine 2 Ignition Switch Turbine Engine 3 N1 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 3 N2 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 3 corrected N1 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 3 corrected N2 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 3 corrected fuel flow pounds per hour as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 3 max torque fraction range 0. Turbine Engine 3 EPR as a double FLOAT64. This is for jets and turboprops. Turbine Engine 3 ITT interstage turbine temperature in degrees Rankine, as a double FLOAT64. This is for jets and turboprops. This is the jet thrust. See 2610 for propeller thrust turboprops have both. This is for jets and turboprops. Turbine Engine 3 fuel available flag Turbine Engine 3 bleed air pressure pounds per square inch as a double FLOAT64. This is for jets and turboprops. Turbine Engine 3 reverser fraction, a double FLOAT64 , in the range 0. Turbine Engine 3 vibration Turbine Engine 3 Ignition Switch Turbine Engine 4 N1 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 4 N2 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 4 corrected N1 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 4 corrected N2 value % as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 4 corrected fuel flow pounds per hour as a double FLOAT64. This is for jets and turboprops—it has no meaning on reciprocating prop aircraft. Turbine Engine 4 max torque fraction range 0. Turbine Engine 4 EPR as a double FLOAT64. This is for jets and turboprops. Turbine Engine 4 ITT interstage turbine temperature in degrees Rankine, as a double FLOAT64. This is for jets and turboprops. This is the jet thrust. See 2710 for propeller thrust turboprops have both. This is for jets and turboprops. Turbine Engine 4 fuel available flag Turbine Engine 4 bleed air pressure pounds per square inch as a double FLOAT64. This is for jets and turboprops. Turbine Engine 4 reverser fraction, a double FLOAT64 , in the range 0. Turbine Engine 4 vibration Turbine Engine 4 Ignition Switch Propeller 1 RPM as a double FLOAT64. This value is for props and turboprops and is negative for counter-rotating propellers. On turboprops this will give the shaft RPM, since there is currently no Gear Reduction Ratio available to fix values on such aircraft. I will fix this when I can Ok-SimC? This is for props and turboprops. Propeller 1 Beta blade angle in radians, as a double FLOAT64. This is for props and turboprops. Propeller 1 feathering inhibit Propeller 1 feathered flag Propeller 1 sync delta lever Propeller 1 autofeather armed flag Propeller 1 feather switch Propeller 1 panel auto-feather switch There appears to be only one control, not one for each prop, so changing any of these 4 changes all 4 Propeller 1 sync active There appears to be only one control, not one for each prop, so changing any of these 4 changes all 4 Propeller 1 de-ice switch There appears to be only one control, not one for each prop, so changing any of these 4 changes all 4 Propeller 2 RPM as a double FLOAT64. This value is for props and turboprops and is negative for counter-rotating propellers. On turboprops this will give the shaft RPM, since there is currently no Gear Reduction Ratio available to fix values on such aircraft. I will fix this when I can? This is for props and turboprops. Propeller 2 Beta blade angle in radians, as a double FLOAT64. This is for props and turboprops. Propeller 2 feathering inhibit Propeller 2 feathered flag Propeller 2 sync delta lever Propeller 2 autofeather armed flag Propeller 2 feather switch Propeller 2 panel auto-feather switch There appears to be only one control, not one for each prop, so 253C 4 2540 4 2600 8 changing any of these 4 changes all 4 Propeller 2 sync active There appears to be only one control, not one for each prop, so changing any of these 4 changes all 4 Propeller 2 de-ice switch There appears to be only one control, not one for each prop, so changing any of these 4 changes all 4 Propeller 3 RPM as a double FLOAT64. This value is for props and turboprops and is negative for counter-rotating propellers. On turboprops this will give the shaft RPM, since there is currently no Gear Reduction Ratio available to fix values on such aircraft. I will fix this when I can 2608 2610 2618 2620 2624 2628 2630 2634 2638 8 8 8 4 4 8 4 4 4 263C 4 2640 4 2700 8 Propeller 3 RPM as a fraction of the maximum RPM. This is for props and turboprops. Propeller 3 Beta blade angle in radians, as a double FLOAT64. This is for props and turboprops. Propeller 3 feathering inhibit Propeller 3 feathered flag Propeller 3 sync delta lever Propeller 3 autofeather armed flag Propeller 3 feather switch Propeller 3 panel auto-feather switch There appears to be only one control, not one for each prop, so changing any of these 4 changes all 4 Propeller 3 sync active There appears to be only one control, not one for each prop, so changing any of these 4 changes all 4 Propeller 3 de-ice switch There appears to be only one control, not one for each prop, so changing any of these 4 changes all 4 Propeller 4 RPM as a double FLOAT64. This value is for props and turboprops and is negative for counter-rotating propellers. On turboprops this will give the shaft RPM, since there is currently no Gear Reduction Ratio available to fix values on such aircraft. I will fix this when I can 2708 2710 2718 2720 2724 2728 2730 2734 2738 8 8 8 4 4 8 4 4 4 273C 4 2740 4 281C 2824 282C 2834 4 8 8 8 Propeller 4 RPM as a fraction of the maximum RPM. This is for props and turboprops. Propeller 4 Beta blade angle in radians, as a double FLOAT64. This is for props and turboprops. Ambient air pressure, in lbs per square foot, double floating point. Static air temperature, in degrees Fahrenheit, double floating point. Static air temperature, in degrees Rankine, double floating point. In FSX this is currently calculated by FSUIPC A. Write all 3 32-bit values i. The values needed are: Bytes 0—3: Aircraft Id from the TCAS table Bytes 4—7: The FS Control see published lists Bytes 8—11: A parameter for the control, if needed Note that most of the many hundreds of FS controls will have no noticeable affect on the AI aircraft. Note that you can write these values in separate FSUIPC Writes, but if you do the ID must be last, as it is only when this is written that the control is activated. The special control value 0xFFFF 65535 is supported as a request to delete the specified aircraft. This currently uses a hack into the FS code. Number of Hot Joystick Button slots available for Application Programs to use. Currently this is fixed at 56, representing the 56 DWORDs available in the following offsets: 56 DWORDs containing zero when free for use , or a Hot Joystick Button specification. See also 32FF below. This facility is very similar to the Hot Key system described for offset 3210. Up to 56 such hot Ok-SimC? These will be zero initially, and zero if free. The application must search through to find an empty slot, then set this into it: Byte 0 bits 0-7 : Joystick number 0-15 + 128. In other words 128 for Joystick 0, 129 for joystick 1, etc. Joysticks are numbered from 0. Byte 1 bits 8-15 : Button number 0-39 Again buttons are numbered here from 0. Byte 2 bits 16-23 : Flags from application. Byte 3 bits 24-31 : Flags from FSUIPC. Bit 0 value 1 is set when the specified Hot Button change occurs. Needs to be cleared by Application when seen so it can detect another. Bit 1 value 2 is set when bit 0 is set only if the button is still pressed. Note: If the same Hot button is listed more than once for instance by several applications , every copy for the same Hot button will get the flag set. Use: Having found an empty slot, write the above value into it, then monitor the highest byte of that same slot for Non-Zero. That's the button event. Clear that byte to detect it again. If you register several HotKey Buttons it will be more efficient to only scan the slots themselves when a hot button actually occurs. To detect this, just monitor the one byte at offset 32FF. This can be paired with 32FE to scan for buttons and keys. When it changes, read and check the flags in your slots. The count at 32FF may change without any of your buttons occurring, of course, if other applications are trapping other hot buttons. When finished, and certainly before exit, be sure to clear the whole DWORD to zero so other applications can use it. If you only want to use joystick buttons for a certain part of the operation of your program, only set the entries there and clear them when done. Note that if several applications want the same button, they will all get it. You might have to do that at intervals in case a clashing application is loaded after yours. This DWORD provides a facility to set, clear or toggle any of the virtual buttons at offset 3340 without needing to read anything first. Byte 3: 0 Reserved Elevon 1 deflection Elevon 2 deflection Elevon 3 deflection Elevon 4 deflection Elevon 5 deflection Elevon 6 deflection Elevon 7 deflection Elevon 8 deflection Folding wing for reading , left percent, as double float. Folding wing for reading , right percent, as double float. Canopy open, as double float. This value is also controlled by the Increase Heli Beep and Decrease Heli Beep FS controls. It appears to change from 0 to 16313 then more slowly to 16368. The wind at the aircraft in the lateral X axis—relative to the aircraft orientation, in feet per second, as a 64-bit double. The wind at the aircraft in the vertical Y axis—relative to the aircraft orientation, in feet per second, as a 64-bit double. The wind at the aircraft in the longitudinal Z axis—relative to the aircraft orientation, in feet per second, as a 64-bit double. Wind direction at the aircraft, in degrees True, as a 64-bit double floating point — for writing, not reading. See 3490 for reading. It is hoped that this can be written to directly affect the wind direction at the aircraft. Wind speed at the aircraft, in knots, as a 64-bit double floating point — for writing, not reading. See 3488 for reading. It is hoped that this can be written to directly affect the wind Byte 0: Byte 1: Byte 2: 2A00 2A08 2A10 2A18 2A20 2A28 2A30 2A38 2A48 2A50 2A70 2A78 2A80 2A88 2A90 2AAC 2AB0 2AB4 2AB8 2B00 2B08 2B1C 2C08 2C1C 2D08 2D1C 2DC6 8 8 8 8 8 8 8 8 8 8 8 8 8 4 4 4 4 4 4 8 8 8 8 8 8 8 2? It is hoped that this can be written to directly affect the visibility at the aircraft. Ambient in cloud … BOOLEAN new value found for FSX. Ambient precip state … new value found for FSX. Not sure what it is yet. Autopilot max bank … degrees. Works for the default FSX 737. Writing here uses the AP MAX BANK INC and DEC controls to try to approximate to the angle written. Hydraulics4 pressure psf Hydraulics4 reservoir pct CG percent laterally, as a double FLOAT64. Standby vacuum circuit on Elevator deflection, in radians, as a double FLOAT64. Up positive, down negative. Elevator trim deflection, in radians, as a double FLOAT64. Up positive, down negative. Aileron deflection, in radians, as a double FLOAT64. Right turn positive, left turn negative. This is the average of left and right Aileron trim deflection, in radians, as a double FLOAT64. Right turn positive, left turn negative. Rudder trim deflection, in radians, as a double FLOAT64. This is the aircraft body angle of attack AoA not the wing AoA. Note that it has been found that that FS disregards wing incidence and twist effects in the Aircraft. CFG file , so this value is actually the wing AofA as well. This is the side slip angle. Flight Director Active, control and indicator. Flight director pitch value, in degrees. Double floating point format, only when FD is active. Flight director bank value, in degrees. Double floating point format, right is negative, left positive. CG percent, as a double FLOAT64. Autopilot cruise speed hold? Double floating point format. Attitude indicator bank value, in degrees. Double floating point format. Panel autobrake switch Read to check setting, write to change it. Full range represents —10 to +10 degrees for a VOR, -2. Full range represents —0. HSI distance, as a double floating point. HSI CDI valid flag. HSI GSI valid flag. HSI bearing valid flag. The Application finds a free Hot Key slot, then sets it up to receive notification on menu access, and writes the text needed for the menu item to another location. When the menu item is selected, the flag in the hot key slot is set just as when a hot key is used. This way of accessing the menu has the advantage that it will also work when the application is running on another PC, via WideFS. Of course, any response to that menu selection will occur on whichever PC the application is running. To avoid having menu items relating to applications that have crashed or terminated without tidying up correctly, each menu item added is subjected to a time-out. Applications have to refresh a count in the Hot Key slot at regular intervals 10 seconds or less otherwise the menu item is deleted and the Hot Key slot freed. The time-out is suspended when FS is paused, and there is an option to have FS pause automatically when the menu entry is selected. Note that FS subjects the nuber of entries in the Add-Ons menu to a maximum of 16. FSUIPC is already using one for itself. If the maximum is already reached your entry will simply not appear. There is no error indication of this provided back to the Application, though a SimConnect exception may appear in the FSUIPC Log file if exception logging is enabled. This is the way this facility is used:? Find a free Hot Key slot i. Say slot I is the one found. Write 0x0000FFFF to the slot i. If you want FS to pause when the menu item is selected, write 0x0002FFFF instead. The 02 part is the flag indicating that a pause is required. Write the text for the menu entry required to offset 0x2FE0, with the first byte set to the slot number I. The string is limited to 31 characters, including the slot number at the beginning, plus a zero terminator. In other words the offset range is 0x2FE0—0x2FFF inclusive. The write to 0x2FE0 triggers FSUIPC into asking FS to add the menu entry to the Add-Ons main menu item, but this is dependent upon the slot it references being set with 0xFF in its first least significant byte. From the moment the slot is set with 0xFF there it is changed every 55 mSecs or so, unless FS is paused or in a dialogue. The change is a decrement of the next byte in the slot—the other one you also set to 0xFF. When this reaches zero, the menu entry is removed and the slot is cleared. This gives a maximum timeout of 255 x 55mSecs, or about 14 seconds. This means that if you want the menu entry to stay available you must write 0xFF or whatever to that byte i. The 4 second leeway allows some safety, but you may want more—very little FS overhead is caused by writing that one byte every 1 second if you need to, but this is really over the top. More overhead is caused by writes when running on another PC using WideFS, so I would suggest 5 seconds as a minimum. Just as with Hot Keys, you need to be looking for this at regular intervals, perhaps every 200 milliseconds or so. Frequent reads pose little overhead for WideFS use, but very frequent ones should really be avoided when you are running on the FS PC. Finally, if you opted for FS to pause when the menu item is selected you need to unpause FS so that it can continue. Write zero to the 16-bit value at offset 0x262. When you no longer need the menu entry, or just before terminating your program, you should write zero to the DWORD Hot Key slot. This will make FSUIPC remove the menu entry immediately. If your program does not tidy up the entry will be removed on the timeout. Remember the max is 55, there being 56 slots. Response value any non-zero value 1 - 255. This is merely a value for you to test so you know which submenu was selected. The zero-terminated string for the submenu entry. Byte 1: Bytes 2-31 There's a limit of 16 submenus per menu entry imposed by SimConnect , and there are no further sub-levels. Naturally you don't get notified when the main menu entry is selected when there are submenus. You can remove a submenu by doing the same as above but with a null string for the submenu entry i. Current loaded weight in lbs in double floating point format. This is in double floating point format FLOAT64. This is in double floating point format FLOAT64. For separate switches for separate fuel pumps see offset 3125. This is a bit-oriented control flag byte. These bits are allocated so far: Ok-SimC Ok-SimC Ok-SimC Ok-SimC? Controls the joystick connection to the main flight controls. In order to protect the user from a broken or crashed application, all the flags are cleared 10 seconds after they have been set, so applications will need to repeat the setting every few seconds. In this mode all throttles are driven from the main throttle or throttle 1 inputs, and other throttle inputs are discarded. The same option can also be used from an optional Hot Key. See also offset 3109 above, and also offsets 3328—3339, which provide the live axis values, post calibration. These would have been applied to FS if not prevented by the flags above. Controls the joystick connection to the slewing controls, and the other two separate throttle controls. See also offset 3109 above. This is really two 32-bit integers. The first contains the Control number normally 65536 upwards , as seen in my FS Controls lists. The second integer is used for the parameter, such as the scaled axis value, where this is appropriate. Always write all 8 bytes in one IPC block if a parameter is used, as FSUIPC will fire the control when you write to 3110. COM2 frequency, 4 digits in BCD format. A frequency of 123. The leading 1 is assumed. COM1 standby frequency, 4 digits in BCD format. A frequency of 123. The leading 1 is assumed. COM2 standby frequency, 4 digits in BCD format. A frequency of 123. The leading 1 is assumed. NAV1 standby frequency, 4 digits in BCD format. A frequency of 113. The leading 1 is assumed. NAV2 standby frequency, 4 digits in BCD format. A frequency of 113. The leading 1 is assumed. This is limited to a maximum of 12 characters, including a zero terminator. This is limited to a maximum of 12 characters, including a zero terminator. This is limited to a maximum of 24 characters, including a zero terminator. This is limited to a maximum of 24 characters, including a zero terminator. This is in double floating point format FLOAT64. Slew mode longitudinal axis i. I think this only applies when the aircraft is on the ground. Write 0—3 here to set pushback operation, as described for the status, above. Tug Heading control, for gliders I assume. The units appear to be the same as the aircraft heading units see offset 0580. Tug Speed control, for gliders I assume. These locations operate the FSUIPC facility to send keystrokes to FS. For this to operate correctly the PC must be using Windows 98, ME, 2000, XP or Vista. The facilities used just do not exist in Windows 95 or NT. Number of Hot Key slots available for Application Programs to use. Currently this is fixed at 56, representing the 56 DWORDs available in the following offsets: 56 DWORDs containing zero when free for use , or a Hot Key specification. See also 32FE below. Note that although up to 56 such hot keys can be specified, but this number is shared by all running applications. However, an extra key pressed before the main hotkey is released can be requested and supplied, multiplying the number of possibilities immensely without needing many slots. These will be zero initially, and zero if free. The application must search through to find an empty slot, then set this into it: Byte 0 bits 0-7 : Virtual Keycode see the list in my FS Controls documents or the FSUIPC Advanced Users Guide. If this bit is set then when the Hot Key is detected FSUIPC waits for the KEYUP or another key press first. The virtual keycode for that keypress is then returned in Byte 3, below. This was originally used to control the next option, but it was implemented incorrectly in FSUIPC, so now, to avoid problems, the bit is deliberately ignored. Byte 3 bits 24-31 : Flags or results from FSUIPC. This byte needs to be cleared by the application so that it can detect when the Hot Key occurs. There is no queuing. If the Hot Key alone is seen, this byte is set to 1. If bit 3 was set in Byte 1 above and another key was pressed before the hotkey was released, then the virtual keycode for the extra key 2—255 is provided here. Note 1: ALT key combinations are not a good idea, and cannot be stopped from passing to FS. You can get them, but FS will open the menu in any case. Note 2: If the same Hot key is listed more than once for instance by several applications , every copy for the same Hot Key will get the flag set, irrespective of the pass-through option. The option only applies to finally passing it to FS. If any one Hot Key user says that the key is not to be passed to FS i. Clear that byte to detect it again. If you register several Hot Keys it will be more efficient to only scan the slots themselves when a hot key actually occurs. To detect this, simply monitor the one byte at offset 32FE this can be paired with 32FF to scan for keys and buttons together. When it changes, read and check the flags in your slots. The count at 32FE may change without any of your keys occurring, of course, if other applications are trapping other hot keys. When finished, and certainly before exit, be sure to clear the whole DWORD to zero so other applications can use it. If you only want to use keystrokes for a certain part of the operation of your program, only set the entries there and clear them when done. Note that if several applications want the same keystroke, they will all get it. You might have to do that at intervals in case a clashing application is loaded after yours. This system will work through WideFS with no problems too. Add-Ons menu access for Applications: See offset 2FE0. Support in FSX not planned yet, and not assured. The 16-bit ID of the last menu command item accessed in FS. Not planned for FSX. FSUIPC selected technical option inhibits. Set bits here to turn off specific options and prevent the user turning them back on, for a limited time max 14 seconds. To keep options turned off you need to write this mask at regular intervals e. Note that this is not obeyed if the user has selected to option to disallow all external control of his options. If he has done this, you can detect it by reading this location back within the time limit. If it is zero, not the value written, then the user is preventing your control over his settings. Set individual bits for individual subsystems. This works, but the device will sometimes try to move, and this can be noticeable, especially for some reason with the flaps—the indicator gives a little jump and the noise briefly starts. Brakes being used flag. This is non-zero if the user has pressed the brakes left, right or both recently. It stays non-zero for a second after the last brake control or significant axis increase seen. It does not stay set for continued constant brake pressure via the axis inputs. It operates also for increasing values written to offset 0C00 or 0C01. Text display control word. You can display messages from an external program just like an Adventure. The time limit only applies when scrolling is off, otherwise the message simply expires when fully scrolled off the screen. AIR file change counter incremented by FSUIPC whenever the AIR file as defined at offset 3C00 changes. Hot Key change counter, incremented by FSUIPC whenever any of the Hot Keys defined in the table at offset 3210 occurs and therefore has its flag set by FSUIPC. Hot Button change counter, incremented by FSUIPC whenever any of the Hot Buttons defined in the table at offset 2910 changes state in the right way, and therefore has its flag set by FSUIPC. Additional radio and autopilot status indicators read only access. Allocation by bits which are set when true. None yet applicable for FSX. FSUIPC version number: The HIWORD i. Use this to check that the values in 3304-3308 are valid Note: the supplied LIB writes its version number here, but this has no effect and is only for assistance when viewing LOG files. This can be read without triggering the message box to users which tells them of an unaccredited access attempt. Note that on WideClient it will always be set, assuming WideServer is registered on the FS PC. Count of external IPC applications seen connecting since the session began. Keeps increasing till it gets to 255 then stays at that value. Reserved area for WideFS KeySend facility This word is used to activate a facility supported by WideFS to automatically shut down the PCs running WideServer i. The application performing the shut down action must write 0xABCD to this offset. No No Ok-Intl Ok-Intl This delay is to ensure the Clients get the message before the host dies, and the clearing to zero is done so that the survivors can continue. On all WideFS PCs with any form of shutdown allowed, this pattern closes only those applications loaded by WideFS and leaves WideClient running ready to reload them. On the Server, if it is allowed, it closes FS itself. A hot key facility is provided for this variant, too. WideServer version number, if enabled. Otherwise this is zero. This is a BCD value giving the version number x 1000, for example 0x5110 means version 5. See also offset 333C. This is the altimeter reading in feet or metres, if the user is running with the preference for altitudes in metres , as a 32-bit signed integer. Elevator Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 310A. Aileron Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 310A. Rudder Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 310A. Throttle Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 310A. This is the single throttle, applied to whichever engines are denoted by the bits in offset 0888. Throttle 1 Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 310A. Throttle 2 Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 310A. Throttle 3 Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 310A. Throttle 4 Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 310A. Elevator Trim Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 3322 2 Ok-Intl Ok-Intl 3324 4 Ok-SimC? This is normally 0 if no reverse is available, otherwise gives the reverse limit such as —4096 for 25%. So, FSUIPC can be used to program whatever actions the user wants. This is non-zero when FS is loading, or reloading a flight or aircraft or scenery, and becomes zero when flight mode is enabled even if the simulator is paused or in Slew mode. Note that in FSX it tends to only be set during initial loading. This byte is non-zero when FS is effectively paused because the user accessed the Menu, or is in a dialogue resulting from menu or other selection activity. Note that the 2 bit may flicker a little on exit from the dialogue, due to the way it is detected. In FSX these two states may be a little confused. Frame rate calling counter. This is simply a number that is incremented each time FSUIPC is entered from FS using the entry related to frame rates. Byte 336E is non-zero for Left Brake, byte 336F for Right Brake. It will only actually do so if it sees brake messages. It is updated on each FS chained call to FSUIPC. This is the millisecond timestamp value of the most recent line in the current FSUIPC Log. It is updated when each line is logged. Simply a number that is incremented every time FSUIPC receives a call or message from Flight Simulator. This can be used through WideFS to check if FS is still active, for example. Message text area: The text is truncated if longer than 127 characters, there always being a zero terminator provided. You can write messages to this area, always zero terminated, for display on the FS windshield or via ShowText or other applications. After placing the message text, you must write the 16-bit timer value to offset 32FA to make FSUIPC send the message see 32FA above. Note that these flags will be cleared only when the inhibit is removed or the relevant throttle input goes positive i. Spoiler Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 341A. Copy this to 0BD0 for normal spoiler action. Flaps Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 341A. Copy this to 0BDC for normal flaps action. Left Brake Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 341A. Copy this to 0BC4 for normal left brake action. Right Brake Axis input value, post calibration, just before being applied to the simulation if allowed to by the byte at offset 341A. Copy this to 0BC6 for normal right brake action. Controls the joystick connection for ancillary axis controls, currently Left and Right brake, flaps and spoiler axes. Programs can read the input axis values from offsets 3412—3418 above, and apply them, after appropriate modification, to the relevant FS axis offsets at 0BC4 and 0BC6 for Brakes, 0BDC for Flaps or 0BD0 for Spoiler. In order to protect the user from a broken or crashed application, the flags are cleared 10 seconds after they have been set, so applications will need to repeat the setting every few seconds. Upon reading it will always appear to contain zero. Sea level pressure QNH , double float Ambient temperature, double float Pressure Altitude metres , double float. This is the indicated altitude when the altimeter Kollsman setting is 1013. Standard ATM Temperature, degrees Rankine, double float. This is the expected temperature at the actual AMSL in the International Standard Atmosphere model. Sigma Sqare Root, double float. This is actually the square root of the Sigma value as provided at offset 28F0. This is the resultant velocity of the three X,Y,Z orthogonal velocities given in offsets 3178, 3180 and 3188. G force maximum G force minimum Engine1 max rpm Engine2 max rpm Engine3 max rpm Engine4 max rpm ATC aircraft model string for currently loaded user aircraft, as declared in the AIRCRAFT. This is limited to a maximum of 24 characters, including a zero terminator. Zero if no connections have been made, or if all connected clients have been version 6. This keeps the aircraft at the same latitude and longitude for as long as it is engaged. The altitude and attitude of the aircraft is free to change, and, in fact, the aircraft flies as normal except for not changing its position over the ground. This is apparently a very useful facility for training environments. For program control, write a non-zero values to this one byte offset. This acts as a timer. The freeze will last for as long as this byte is non-zero. It is used as a time, counting down 1 every timer tick of 55 mSecs or so. To retain the freeze for a good time, write 255 here and do so every 5—10 seconds. Allow for WideFS delays. Note that if FS is paused, then the freeze lasts until the pause is released and re-engaged. This value is maintained by FSUIPC using the pressure setting supplied in offset 3542. Horizon bars offset, as a percentage of maximum, in floating point double format. On the default Cessnas the maximum offset is 10 degrees. Airspeed Mach value, double float. Engine 4 cowl flap position, as a double float: 0. Can be used to handle position and set it. Reciprocating engine 4 brake power in ft-lbs, as a double FLOAT64. Divide by 550 for HP. Reciprocating engine 4 carburettor temperature, in degrees Rankine, as a double FLOAT64. On some aircraft this controls whether the supercharger is active or not. Reciprocating engine 4 emergency boost elapsed time in seconds, as a double FLOAT64. This counts how long the boost has been engaged, when it is made active by an FS control. FS turns it off when reaching 312. You can keep it going by occasionally writing 0 here. Reciprocating engine 4 fuel available flag 0 or 1. Engine 3 cowl flap position, as a double float: 0. Can be used to handle position and set it. Reciprocating engine 3 brake power in ft-lbs, as a double FLOAT64. Divide by 550 for HP. Reciprocating engine 3 carburettor temperature, in degrees Rankine, as a double FLOAT64. Reciprocating engine 3 starter torque Reciprocating engine 3 turbocharger failed Reciprocating engine 3 emergency boost active flag 32-bit BOOLEAN. On some aircraft this controls whether the supercharger is active or not. This counts how long the boost has been engaged, when it is made active by an FS control. FS turns it off when reaching 312. You can keep it going by occasionally writing 0 here. Reciprocating engine 3, fuel available flag 0 or 1. Engine 2 cowl flap position, as a double float: 0. Can be used to handle position and set it. Reciprocating engine 2 brake power in ft-lbs, as a double FLOAT64. Divide by 550 for HP. Reciprocating engine 2 carburettor temperature, in degrees Rankine, as a double FLOAT64. Reciprocating engine 2 starter torque Reciprocating engine 2 turbocharger failed Reciprocating engine 2 emergency boost active flag 32-bit BOOLEAN. On some aircraft this controls whether the supercharger is active or not. Reciprocating engine 2 emergency boost elapsed time in seconds, as a double FLOAT64. This counts how long the boost has been engaged, when it is made active by an FS control. FS turns it off when reaching 312. You can keep it going by occasionally writing 0 here. Reciprocating engine 2, fuel available flag 0 or 1. Engine 1 cowl flap position, as a double float: 0. Can be used to handle position and set it. Reciprocating engine 1 brake power in ft-lbs, as a double FLOAT64. Divide by 550 for HP. Reciprocating engine 1 carburettor temperature, in degrees Rankine, as a double FLOAT64. Reciprocating engine 1 starter torque Reciprocating engine 1 turbocharger failed Reciprocating engine 1 emergency boost active flag 32-bit BOOLEAN. On some aircraft this controls whether the supercharger is active or not. Reciprocating engine 1 emergency boost elapsed time in seconds, as a double FLOAT64. This counts how long the boost has been engaged, when it is made active by an FS control. FS turns it off when reaching 312. You can keep it going by occasionally writing 0 here. Reciprocating engine 1, fuel available flag 0 or 1. GENERAL ENGINE 4 DATA General engine 4 failure General engine 4 combustion General engine 4 throttle lever position, as a double FLOAT64. Divide by 144 for PSI. Reciprocating engine 4 oil leak percent General engine 4 EGT in degrees Rankine, as a double FLOAT64. Convert to Fahrenheit by Rankine — 459. FS default gauges show Centigrade. No Ok-SimE 3960 3964 3968 3970 3978 3980 39D8 39E0 4 4 8 8 8 8? Divide by 144 for PSI. Reciprocating engine 3 oil leak percent General engine 3 EGT in degrees Rankine, as a double FLOAT64. Convert to Fahrenheit by Rankine — 459. FS default gauges show Centigrade. Divide by 144 for PSI. Reciprocating engine 2 oil leak percent General engine 2 EGT in degrees Rankine, as a double FLOAT64. Convert to Fahrenheit by Rankine — 459. FS default gauges show Centigrade. Divide by 144 for PSI. Reciprocating engine 1 oil leak percent General engine 1 EGT in degrees Rankine, as a double FLOAT64. Convert to Fahrenheit by Rankine — 459. FS default gauges show Centigrade. Area used by PFC. DLL for axis input, for optional assignment and calibration in FSUIPC. When the PFC driver is not being used, other programs can make use of these offsets to input axis values directly to FSUIPC, which also can then be assigned in FSUIPC and thence calibrated. Note that by default FSUIPC assumes that the normal input here is in the range 0—127, and scales it accordingly. On the other hand, when the PFC driver is running, application programs or modules can access the raw PFC axis values at these offsets, which are assigned to the hardware as listed below. One 16-bit word is allowed for each although the PFC axes have a maximum range of 0 to 127. The axes are: 3BA8 0 Aileron 3BAA 1 Elevator 3BAC 2 Rudder 3BAE 3 Quadrant axis 5 3BB0 4 Quadrant axis 3 3BB2 5 Quadrant axis 1 3BB4 6 Left toe brake 3BB6 7 Quadrant axis 6 3BB8 8 Quadrant axis 4 3BBA 9 Quadrant axis 2 3BBC 10 Right toe brake 3BBE 11 Elevator trim 3BC0 12 Aileron trim 3BC2 13 Rudder trim 3BC4 14 Steering tiller 3BC6 15 not used There are control flags to disconnect these axes at offset 3BC8. Reserved This is a 16-bit counter that is incremented each time a FLT file is saved in FS. This applies to flights saved through FS Flights menu, the shortcut key ; , AutoSave, and via the FSUIPC flight saving facilities. The filenames of the saved flights can be read at offset 0400, or historically by using the path reading facility at offset 0FF0 and following. This is incremented each time FSUIPC4 succeeds in connecting or re-connecting to SimConnect. Number of flap positions not including flaps full up. The full range of flap movement is 0— 0x3FFF 16383. To obtain the number of détentes, divide this increment value into 16383 and add 1. For example 2047 0x7FF would be the increment for 9 positions. This is the aircraft weight plus the payload weight, minus fuel. This changes as the payload is adjusted. Note that this value fluctuates slightly. It is not clear whether this a bug, or an artefact of the physics simulation, but the empty weight 1330 and the payload data 1400 may be used to get a static value. This is zero padded to fill the 256 bytes available. If the PC is on a Network and WideFS is in use, then if possible the full UNC universal naming convention path is given. FLT you first set up the pathname and optional description at offset 3F04 below, then write here. If you are Loading a file, please allow time for the file to load before expecting any further meaningful response across the FSUIPC interface. FSUIPC will probably not be able to respond for several seconds even on the fastest machines. If FSUIPC4 re-initialises the SimConnect link at any time e. The value in offset 3BF6 also updates when SimConnect is re-initialised, so this may help distinguish the cause of the change. READ: Pathname of the currently loaded FLT file, excluding the FS main path see 3E00 if applicable, else the full path, in UNC format if WideFS is in use. This is zero padded to fill the 252 bytes available, or truncated if longer. WRITE: Write the file name for the FLT+WX file you wish to Load or Save. If you give a path for saving, it is discarded. There must be a zero terminator. If you are writing the file, a description can also be specified, following the pathname and its zero terminator. Obviously this is limited by the space available. It must also be terminated by a zero byte, and indicated in the value written to 3F00 above. See 3F00 above for details of actually Loading or Saving the Flight or Situation so identified. GPS: aircraft altitude, floating point double, in metres. GPS: magnetic variation at aircraft, floating point double, in radians add to magnetic for true, subtract from true for magnetic. GPS: aircraft ground speed, floating point double, metres per second. GPS: aircraft true heading, floating point double, in radians. GPS: aircraft magnetic track, floating point double, in radians. GPS: distance to next waypoint, floating point double, in metres. GPS: magnetic bearing to next waypoint, floating point double, in radians. GPS: cross track error, floating point double, in metres. GPS: required true heading, floating point double, in radians. GPS: track error, floating point double, in radians. GPS: previous waypoint aircraft altitude, floating point double, in metres. GPS: next waypoint aircraft altitude, floating point double, in metres. GPS: Next waypoint ETE as 32-bit integer, in seconds GPS: Next waypoint ETA as 32-bit integer in seconds, local time GPS: Distance to next waypoint, floating point double, in metres GPS: Distance between previous and next waypoints, floating point double, in metres GPS: Approach mode, as 32-bit integer GPS: Approach way point type, as 32-bit integer GPS: Approach segment type, as 32-bit integer GPS: Approach mode, flag indicating approach waypoint is the runway GPS: Course to set CTS , floating point double, in radians GPS: Flight Plan, total number of waypoints, as 32-bit integer GPS: Approach way point count, as 32-bit integer GPS: Flight plan destination airport ID GPS: Approach way point index, as 32-bit integer GPS: Approach name GPS: Approach transition index, as 32-bit integer. GPS: Approach transition name GPS: Approach is missed flag GPS: Approach type Ok-SimC Ok-SimC Ok-SimC Ok-SimC No No No No Ok-SimC Ok-SimC Ok-SimC Ok-SimC? Reserved Free for general use, for example in button or keys programming. Reserved FSUIPC message window title—up to 32 characters including a zero terminator. The message window title can be set by the program using it, but as only one such Window is supported only one title is available. The first program writing it and then a multiline message wins! This only needs doing once, immediately before any multiline messages are sent to 3380. Reserved Available for applications: apply for allocations to Pete Dowson Reserved Available for applications: apply for allocations to Pete Dowson Reserved Reserved for FSUIPC and WideFS internals Area in FS2002 and FS2004 reporting and controlling assorted views. Details of those values known follow. This information has been supplied by Matthias Neusinger. Byte value, the view mode: In FSX this appears to refer to the last view in which the view mode was changed. It does not necessarily refer to the currently selected view, i. Spot plane transition: gradual is 0, instant if 1. Read only, FS2004 only. Read only, FS2004 only. Available for applications: apply for allocations to Pete Dowson? The ICAO id of that station is returned in the ICAO field. This is also automatic for the AWI and FS98 interfaces. The other layers are obtained from the nearest Weather Station. Ok-SimC Needs testing only first area in any case Ok-SimC Mostly okay but needs more testing only third area in any case D000 1st use 20 Detecting runways in use This facility gives applications a better chance of detecting the runways in use at any selected airport in range i. The Weatherset2 program provided with FSUIPC makes use of this to show any runways currently assigned when AI traffic is active at a weather station selected by ICAO code. This is the interface for this: D000 D004 D008 D00C D010 32-bit signature see below 4 character ICAO of airport 32-bit timestamp 4 bytes giving up to 2 departure runways, format: Number 1 byte , Designator 1 byte 4 bytes giving up to 2 arrival runways, format: Number 1byte , Designator 1 byte Ok-Intl via SimC But needs proper testing! Write your signature value generated by your program, to prevent simultaneous access by others , and the ICAO at the same time. Read the ICAO, timestamp and 8 bytes of runway details until the timestamp changes or until you time-out. Then check that the ICAO you read is the one you want. If so, then the runway bytes are either zero if there aren't any known or they are filled in for you. Write zero to the signature to free the interface for others. If you don't do this, FSUIPC will clear it in any case within about 12-15 seconds of action 1 above. Notes: The runways are gleaned from the data in the tables at D040 and D840, described below, but FSUIPC is here looking through ALL the traffic, i. It is not restricted it by the user-set radius, nor the smaller ground limit. D000 2nd use 16 Reading full AI Traffic identity strings The offset area at D000 can also be used to read full AI aircraft data strings. To do this, proceed as follows: 1. Write the selected command, from list below, to D004 32bit DWORD Read the timestamp at D008 32-bit DWORD Write the AI id from the TCAS table, see earlier to D00C 32-bit DWORD Write a signature to D000 32-bit DWORD? The order isn't important except that you must write the signature last. If you want to do another within 14 seconds, use the same signature. Use a signature of zero to allow anyone to do the same thing at the same time, but then be aware that your data may not be what you asked for. Wait till the timestamp in D008 changes. Read string result up to 48 bytes including terminating zero from D010. Except for the last case where 3 digits are extracted deliberately in accordance with ATC practice , none of these strings are likely to be abbreviated, except perhaps any long Aircraft Titles. In other words don't expect the string read in command 2 to be the same as the 14 character version in the TCAS tables—though the beginning and end will be, of course. D040 1920 96 x 20 AI ground aircraft additional traffic data. An array of 96 x 20 byte structures as follows: TCAS DATA2 0 BYTE bGateName This is a numeric representation of the gate name, when one is assigned. Otherwise it is zero. Otherwise it is zero. You should check there first, before using any of this data. AI airborne aircraft additional traffic data same format as the entry for D040. The equivalent main TCAS tables start at F080. WORD the FSUIPC offset for the slot with the nearest ground aircraft to the user aircraft. For ground, this is the range when the user aircraft is airborne. Default is 3 nm. An aircraft is considered inactive if it is in states x80 or x81 initialising or sleeping. Normally most of these options will be as set by the user via the FSUIPC options dialogue or INI file. Applications can change them by writing to these bytes, independently for ground and airborne traffic the latter at F068. If an application wants to continue with changed settings it must re-write that changed setting at regular intervals. I would suggest using an interval of no more than 5 seconds in order to allow for delays when Networking is being used or FS is under other loads. E080 3840 96 x 40 AI ground aircraft traffic data. FSUIPC makes this negative to distinguish FS entries from user added ones. BYTE bState a status indication—see list below. Taking off Departing Enroute In the pattern Landing Rolling out Going around Taxiing in Shutting down Ok-Intl? WORD the FSUIPC offset for the slot with the nearest airborne aircraft to the user aircraft. F080 3840 Normally most of these options will be as set by the user via the FSUIPC options dialogue or INI file. Applications can change them by writing to these bytes, independently for ground and airborne traffic. If an application wants to continue with changed settings it must rewrite that changed setting at regular intervals. I would suggest using an interval of no more than 5 seconds in order to allow for delays when Networking is being used or FS is under other loads. Dowson, 11th March 2011.
Last updated