ELECTRIC SYSTEM SETUP INFORMATION

On this page you can find additional information and parameters that are used when setting up the Electrical Systems for an aircraft.

 

 

Numeric Inputs

Previous iterations of electrical systems in FSX and Microsoft Flight Simulator 2020 used either a curve or a value as part of the input, and if you used a curve then it would be automatically interpolated based on the component properties (APU, engine generator, battery voltage, etc...). However this led to a certain inflexibility in the setup of the electrics, and as such the current system has removed these hard-coded dependencies as much as possible, meaning that any numeric input is now either a parameter constant or a curve.

 

The two types of parameter constants that can be used as numeric input are as follows:

  • SimVars: For example you can use the following to get the first engine RPM.

    [data.simvar(GENERAL ENG RPM:1, rpm)]

  

  • Global Variables: For example the following gets the global (user created) variable GLOBAL_VAR as a boolean.

    [data.globalvar(GLOBAL_VAR, bool)]

 

Here is a full example setting up a Generator where a constant parameter is being used, the SimVar GENERAL ENG PCT MAX RPM, along with a curve:

generator.1 = Name:LH_ACGenerator # Vrms:115 # PowerRating:90 # GovernedRPM:[data.simvar(GENERAL ENG RPM:1, rpm)] #ReferenceRPM:2000 #ReferenceFrequency:400

 

These different types of parameter constant can be used directly as an input for any hash-map parameter in any component in the electrical system.

 

It is worth noting that for curves you can supply an additional value to re-map the curve that has been given to be within a different range. The supplied value should be enclosed in () after the curve path, for example:

/* A curve */
curve.1 = Name:MyCurve #Points: 100:0, 500:27, 800:28
/* Using that curve to remap the aircraft ram air RPM to a voltage */
supplier.1 = (...) GovernedRPM:[curve.MyCurve([data.simvar(GENERAL ENG RPM:1, rpm)])]

If you are unsure what value to use then simply supply a 1 so no re-mapping is applied.

 

Finally, some commonly used real life values are exposed for your use as parameters, such as the chemical voltage of a cell given its current capacity for different compositions, eg: Lithium-Ion, NiCad, etc... You can find these built-in values from the links below:

 

 

Consumers/Suppliers And Inline Setup

It is important to be aware of the fact that all Supplier and Consumer data should be in one place, ie: it can be in either a supplier, or a consumer, but not in both. If a supplier/consumer is given to a component as part of the component defintion, then all other supplier/consumer parameters given directly in the item definition will be ignored. Essentially, supplier/consumer configurations have priority over "inline" configurations.

 

Consider the following consumer and circuit definitions:

consumer.6 = Name:ConsumerStarter #Voltage:24 #Wattage:3500
consumer.7 = Name:ConsumerFuelPump #Voltage:24 #Amperage:2
circuit.4 = Type:CIRCUIT_STARTER #ConsumerCfg:ConsumerStarter #Name:StarterB
circuit.5 = Type:CIRCUIT_PITOT_HEAT #Voltage:12 #Wattage:40 #Name:PitotHeat
circuit.6 = Type:CIRCUIT_FUEL_PUMP #ConsumerCfg:ConsumerFuelPump #Wattage:48 #Name:FuelPumpA #WearAndTearCollision:GlobalDamage

In the example above, circuits 4 and 5 are valid, but in circuit 6, the wattage will be ignored because a consumer configuration has already been given, and so the information from the consumer will be used.

 

 

Cell Types

The following built-in battery cell types are available for use in the Supplier component. These are simply easy to remember parameters that are used instead of hard-coding the underlying Curve values:

 

Parameter Description Curve
LithiumIon A lithium ion battery. 0:2.13, 0.12:3.3, 0.23:3.7, 0.34:3.75, 0.45:3.75, 0.56:3.75, 0.67:3.75, 0.78:3.75, 0.89:3.85, 1:4.3
NiZn A nickel-zinc battery. 0:1.3, 0.1:1.6, 0.2:1.64, 0.3:1.66, 0.4:1.69, 0.5:1.70, 0.7:1.71, 0.8:1.72, 0.9:1.76, 1:1.85
LeadAcid A lead-acid battery. 0:1.8, 0.2:1.92, 0.3:1.94, 0.4:1.97, 0.5:1.99, 0.6:2.02, 0.7:2.04, 0.8:2.06, 0.9:2.08, 1:2.1
NiCd A nickel-cadmium battery. 0:1.0, 0.1:1.15, 0.2:1.17, 0.3:1.18, 0.4:1.19, 0.6:1.2, 0.7:1.2, 0.8:1.2, 0.9:1.22, 1:1.3

 

You can see how this is used in the example below:

supplier.1 = Name:SupplierBatteryA #SType:Battery #BatteryType:NiCd
battery.1 = Name:MAIN_BATTERY #ConsumerCfg:ConsumerBatteryA #SupplierCfg:SupplierBatteryA

 

 

Trip Curves

A trip curve is used to define how much of an overload a Connection component can sustain before tripping the Breaker. The overload is based on IEC and IEEE formulas that give a duration before overload for a given load and design load. Within the simulation these have been transferred into built in parameters that you can use, following the format as outlined in the section on Numeric Inputs. For example:

breaker.1 = Name:A_Breaker # RatedCurrent:5 # TripCurveType:IEC_Vinv

The main trip-curves relating to both standards are built into the simulation as easy to remember parameters which can be used where necessary:

 

Parameter Description Curve Values Formula
IEC_Sinv Standard inverse trip curve. 0.14, 00.2

$$\frac{k}{(\frac{I}{I_S})^a - 1}$$

 

Curve values are (k, a)

IEC_Vinv

Very inverse trip curve.

13.5, 1
IEC_Einv

Extremely inverse trip curve.

80, 2
IEC_LTSinv

Long time standard inverse trip curve.

120, 1
IEEE_Vinv

Very inverse trip curve.

19.61, 0.491, 2

$$\frac{A}{(\frac{I}{I_S})^p - 1} + B$$

 

Curve values are (A, B, p)

IEEE_Minv Moderately inverse trip curve. 28.2, 0.1217, 2
IEEE_Einv Extremely inverse trip curve. 0.0515, 0.114, 0.02

 

 

Circuit Types

When defining any circuit.N for the electrical system, the first parameter of the hash-map is a variable that defines the type of circuit. The table below shows all the variables that correspond to each of the available types as well as a brief description of what that circuit controls.

 

Type Index Description
CIRCUIT_INVALID 0

Invalid circuit which has no direct impact on sim state.

CIRCUIT_XML 1

Generic circuit which has no direct impact on sim state, and is designed for use when creating your own custom behaviours logic.

CIRCUIT_GENERAL_PANEL 2

Circuit checked for general power availability.

CIRCUIT_FLAP_MOTOR 3

Circuit turned on when flaps are moving (if electrical).

CIRCUIT_GEAR_MOTOR 4

Circuit turned on when landing gears are moving (if electrical).

CIRCUIT_AUTOPILOT 5

Circuit checked for autopilot availability.

CIRCUIT_AVIONICS 6

Circuit checked for avionics availability.

CIRCUIT_PITOT_HEAT 7

Circuit controlling pitot heat state.

CIRCUIT_PROP_SYNC 8

Circuit controlling prop sync.

CIRCUIT_AUTO_FEATHER 9

Circuit controlling auto feathering.

NOTE: Please see the Note On Autofeathering for more information.

CIRCUIT_AUTO_BRAKES 10

Circuit controlling auto brakes.

CIRCUIT_STANDBY_VACUUM 11

Circuit controlling standby vacuum.

CIRCUIT_MARKER_BEACON 12

Circuit checked for beacon marker system availability.

CIRCUIT_GEAR_WARNING 13

Circuit checked for gear warning system availability.

CIRCUIT_HYDRAULIC_PUMP 14 Circuit controlling a [HYDRAULIC_SYSTEM_EX1] pump (one circuit per-pump only, you cannot control multiple pumps off a single circuit). See the section on Pump.N for more information.
CIRCUIT_HYDRAULIC_VALVE 15 Circuit controlling a [HYDRAULIC_SYSTEM_EX1] valve (one circuit per-valve only, you cannot control multiple valve off a single circuit). See the section on Valve.N for more information.
CIRCUIT_FUEL_PUMP 16

Circuit controlling a [FUEL_SYSTEM] electrical pump (one circuit per-pump only, you cannot control multiple pumps off a single circuit). See the section on Pump.N for more information.

CIRCUIT_FUEL_TRANSFER_PUMP 17

Circuit controlling electrical fuel transfer pumps.

CIRCUIT_PROP_DEICE 18

Circuit controlling prop deicing.

CIRCUIT_STARTER 19

Circuit controlling electrical starter state.

CIRCUIT_LIGHT_NAV 20

Circuit controlling navigation light state.

CIRCUIT_LIGHT_BEACON 21

Circuit controlling beacon light state.

CIRCUIT_LIGHT_LANDING 22

Circuit controlling landing light state.

CIRCUIT_LIGHT_TAXI 23

Circuit controlling taxi light state.

CIRCUIT_LIGHT_STROBE 24

Circuit controlling strobe light state.

CIRCUIT_LIGHT_PANEL 25

Circuit controlling panel light state.

CIRCUIT_LIGHT_RECOGNITION 26

Circuit controlling recognition light state.

CIRCUIT_LIGHT_WING 27

Circuit controlling wing light state.

CIRCUIT_LIGHT_LOGO 28

Circuit controlling logo light state.

CIRCUIT_LIGHT_CABIN 29

Circuit controlling cabin light state.

CIRCUIT_LIGHT_PEDESTAL 30

Circuit controlling pedestal light state.

CIRCUIT_LIGHT_GLARESHIELD 31

Circuit controlling glareshield light state.

CIRCUIT_DIRECTIONAL_GYRO 32

Circuit checked for directional gyro system availability.

CIRCUIT_DIRECTIONAL_GYRO_SLAVING 33

Circuit checked for directional gyro slaving system availability.

CIRCUIT_NAV 34

Circuit checked for NAV system availability.

CIRCUIT_COM 35

Circuit checked for COM system availability.

CIRCUIT_PFD 36

Circuit checked for PFD system availability.

Currently not used in the simulation, but can be used in custom behaviour logic.

CIRCUIT_MFD 37

Circuit checked for MFD system availability.

Currently not used in the simulation, but can be used in custom behaviour logic.

CIRCUIT_ADC_AHRS 38

Circuit checked for ADC and AHRS system availability.

Currently not used in the simulation, but can be used in custom behaviour logic.

CIRCUIT_FIS 39

Circuit checked for FIS system availability.

Currently not used in the simulation, but can be used in custom behaviour logic.

CIRCUIT_ADF_DME 40

Circuit checked for ADF and DME system availability.

Currently not used in the simulation, but can be used in custom behaviour logic.

CIRCUIT_XPNDR 41

Circuit checked for transponder system availability.

CIRCUIT_TURN_COORDINATOR 42

Circuit checked for turn coordinator system availability.

CIRCUIT_AUDIO 43

Circuit checked for audio system availability.

CIRCUIT_AVNFAN 44

Circuit checked for avionics fan system availability.

Currently not used in the simulation, but can be used in custom behaviour logic.

CIRCUIT_GPS 45

Circuit checked for avionics GPS system availability.

CIRCUIT_INST 46 Currently not used in the simulation, but can be used in custom behaviour logic.
CIRCUIT_INST_LIGHTS 47 Currently not used in the simulation, but can be used in custom behaviour logic.
CIRCUIT_ALTFLD 48 Currently not used in the simulation, but can be used in custom behaviour logic.
CIRCUIT_WARN 49 Currently not used in the simulation, but can be used in custom behaviour logic.
CIRCUIT_LTS_PWR 50 Currently not used in the simulation, but can be used in custom behaviour logic.
CIRCUIT_ATTITUDE_INDICATOR 51 Circuit checked for attitude indicator availability (if electrical).
CIRCUIT_STALL_WARNING 52

Circuit checked for stall warning availability (if electrical).

CIRCUIT_APU_STARTER 53

Circuit controlling APU starter state.

CIRCUIT_FUEL_VALVE 54 Circuit controlling a [FUEL_SYSTEM] valve (one circuit per-valve only, you cannot control multiple valves off a single circuit). See the section on Valve.N for more information.
CIRCUIT_WING_FOLD 55 Circuit controlling the wing folding system (if available).
CIRCUIT_ELECTRIC_ENGINE 56 Circuit controlling the electric engine (if available).
CIRCUIT_PNEUMATICS_VALVE 57 Circuit controlling a [PNEUMATIC_SYSTEM_EX1] valve (one circuit per-valve only, you cannot control multiple valves off a single circuit). See the section on Valve.N for more information.
CIRCUIT_PNEUMATICS_PACK 58 Circuit controlling a [PNEUMATIC_SYSTEM_EX1] pack (one circuit per-pack only, you cannot control multiple packs off a single circuit). See the section on Pack.N for more information.
CIRCUIT_CABIN_SIGNAL_GO 59 Circuit controlling the "go" light of the inside cabin (for skydiving and other activities).
CIRCUIT_CABIN_SIGNAL_STANDBY 60 Circuit controlling the "standby" light of the inside cabin (for skydiving and other activities).
CIRCUIT_CABIN_SIGNAL_STOP 61 Circuit controlling the "stop" light of the inside cabin (for skydiving and other activities).
CIRCUIT_LIQUID_DROPPING_DOOR 62

Circuit controlling a [Liquid Dropping System] door. See the section on Door.N for more information.

CIRCUIT_LIQUID_DROPPING_SCOOP 63

Circuit controlling a [Liquid Dropping System] scoop. See the section on Scoop.N for more information.

Currently not used in the simulation, but can be used in custom behaviour logic.

CIRCUIT_ROTOR_BRAKE 64 Circuit controlling the rotor brake (helicopters only).
CIRCUIT_HOIST 65 Circuit controlling the hoist, if available.
CIRCUIT_SLING 66 Circuit controlling the sling, if available.
CIRCUIT_PNEUMATICS_FAN 67 Circuit controlling a [PNEUMATIC_SYSTEM_EX1] fan. See the section on Fan.N for more information.
CIRCUIT_ROTOR_CLUTCH 68 Currently not used in the simulation, but can be used in custom behaviour logic.
CIRCUIT_INTERACTIVE_POINT 69 Currently not used in the simulation, but can be used in custom behaviour logic.
CIRCUIT_DEICE 70 Circuit controlling the DEICE_SYSTEM when this is set to structural deice type 4 (electrical). Note that only the first circuit defined of this type will actually control the structural deicing system, and so it will only run when this circuit is on.

 

 

Key Events

The table below shows the different key event IDs that can be used to modify things within the electrical system of an aircraft. These are often used along with the Aircraft Electrics Variables to control the electrical systems with the aircraft. For more details on how to use these events, please see here: Event ID's As Key Events.

 

Key Event ID Key Event ID
ALL_LIGHTS_TOGGLE ELECTRICAL_EXTERNAL_POWER_BREAKER_TOGGLE
ALTERNATOR_OFF ELECTRICAL_LINE_BREAKER_SET
ALTERNATOR_ON ELECTRICAL_LINE_BREAKER_TOGGLE
ALTERNATOR_SET ELECTRICAL_LINE_CONNECTION_SET
AVIONICS_MASTER_1_OFF ELECTRICAL_LINE_CONNECTION_TOGGLE
AVIONICS_MASTER_1_ON FUEL_TRANSFER_CUSTOM_INDEX_TOGGLE
AVIONICS_MASTER_1_SET GLARESHIELD_LIGHTS_OFF
AVIONICS_MASTER_2_OFF GLARESHIELD_LIGHTS_ON
AVIONICS_MASTER_2_ON GLARESHIELD_LIGHTS_POWER_SETTING_SET
AVIONICS_MASTER_2_SET GLARESHIELD_LIGHTS_SET
AVIONICS_MASTER_SET GLARESHIELD_LIGHTS_TOGGLE
BATTERY1_SET LANDING_LIGHTS_OFF
BATTERY2_SET LANDING_LIGHTS_ON
BATTERY3_SET LANDING_LIGHTS_SET
BATTERY4_SET LANDING_LIGHTS_TOGGLE
BEACON_LIGHTS_OFF LANDING_LIGHT_DOWN
BEACON_LIGHTS_ON LANDING_LIGHT_HOME
BEACON_LIGHTS_SET LANDING_LIGHT_LEFT
BREAKER_ADF_SET LANDING_LIGHT_RIGHT
BREAKER_ADF_TOGGLE LANDING_LIGHT_UP
BREAKER_ALTFLD_SET LOGO_LIGHTS_SET
BREAKER_ALTFLD_TOGGLE MASTER_BATTERY_OFF
BREAKER_AUTOPILOT_SET MASTER_BATTERY_ON
BREAKER_AUTOPILOT_TOGGLE MASTER_BATTERY_SET
BREAKER_AVNBUS1_SET NAV_LIGHTS_OFF
BREAKER_AVNBUS1_TOGGLE NAV_LIGHTS_ON
BREAKER_AVNBUS2_SET NAV_LIGHTS_SET
BREAKER_AVNBUS2_TOGGLE PANEL_LIGHTS_OFF
BREAKER_AVNFAN_SET PANEL_LIGHTS_ON
BREAKER_AVNFAN_TOGGLE PANEL_LIGHTS_POWER_SETTING_SET
BREAKER_FLAP_SET PANEL_LIGHTS_SET
BREAKER_FLAP_TOGGLE PANEL_LIGHTS_TOGGLE
BREAKER_GPS_SET PEDESTRAL_LIGHTS_OFF
BREAKER_GPS_TOGGLE PEDESTRAL_LIGHTS_ON
BREAKER_INSTLTS_SET PEDESTRAL_LIGHTS_POWER_SETTING_SET
BREAKER_INSTLTS_TOGGLE PEDESTRAL_LIGHTS_SET
BREAKER_INST_SET PEDESTRAL_LIGHTS_TOGGLE
BREAKER_INST_TOGGLE RECOGNITION_LIGHTS_SET
BREAKER_NAVCOM1_SET SET_EXTERNAL_POWER
BREAKER_NAVCOM1_TOGGLE STROBES_OFF
BREAKER_NAVCOM2_SET STROBES_ON
BREAKER_NAVCOM2_TOGGLE STROBES_SET
BREAKER_NAVCOM3_SET STROBES_TOGGLE
BREAKER_NAVCOM3_TOGGLE TAXI_LIGHTS_OFF
BREAKER_TURNCOORD_SET TAXI_LIGHTS_ON
BREAKER_TURNCOORD_TOGGLE TAXI_LIGHTS_SET
BREAKER_WARN_SET TOGGLE_ALTERNATOR1
BREAKER_WARN_TOGGLE TOGGLE_ALTERNATOR2
BREAKER_XPNDR_SET TOGGLE_ALTERNATOR3
BREAKER_XPNDR_TOGGLE TOGGLE_ALTERNATOR4
CABIN_LIGHTS_OFF TOGGLE_AVIONICS_MASTER
CABIN_LIGHTS_ON TOGGLE_BEACON_LIGHTS
CABIN_LIGHTS_POWER_SETTING_SET TOGGLE_CABIN_LIGHTS
CABIN_LIGHTS_SET TOGGLE_ELECTRICAL_FAILURE
ELECTRICAL_ALTERNATOR_BREAKER_TOGGLE TOGGLE_EXTERNAL_POWER
ELECTRICAL_BATTERY_BREAKER_TOGGLE TOGGLE_LOGO_LIGHTS
ELECTRICAL_BUS_BREAKER_TOGGLE TOGGLE_MASTER_ALTERNATOR
ELECTRICAL_BUS_TO_ALTERNATOR_CONNECTION_TOGGLE TOGGLE_MASTER_BATTERY
ELECTRICAL_BUS_TO_BATTERY_CONNECTION_TOGGLE TOGGLE_MASTER_BATTERY_ALTERNATOR
ELECTRICAL_BUS_TO_BUS_CONNECTION_TOGGLE TOGGLE_NAV_LIGHTS
ELECTRICAL_BUS_TO_CIRCUIT_CONNECTION_TOGGLE TOGGLE_RECOGNITION_LIGHTS
ELECTRICAL_BUS_TO_EXTERNAL_POWER_CONNECTION_TOGGLE TOGGLE_TAXI_LIGHTS
ELECTRICAL_CIRCUIT_BREAKER_TOGGLE TOGGLE_WING_LIGHTS
ELECTRICAL_CIRCUIT_POWER_SETTING_SET WING_LIGHTS_OFF
ELECTRICAL_CIRCUIT_TOGGLE WING_LIGHTS_ON
ELECTRICAL_EXECUTE_PROCEDURE WING_LIGHTS_SET