diff --git a/A320-200-CFM.xml b/A320-200-CFM.xml
index 7a2c7d03..967029f1 100644
--- a/A320-200-CFM.xml
+++ b/A320-200-CFM.xml
@@ -136,6 +136,7 @@ xsi:noNamespaceSchemaLocation="http://jsbsim.sourceforge.net/JSBSim.xsd">
 	<system file="fuel"/>
 	<system file="glass-effect1"/>
 	<system file="a320-fcs"/>
+	<system file="a320-adr"/>
 	<system file="a320-fwc"/>
 	<system file="a320-spoiler"/>
 	<system file="a320-electrical"/>
diff --git a/A320-main.xml b/A320-main.xml
index bf761eb0..cc18e63d 100644
--- a/A320-main.xml
+++ b/A320-main.xml
@@ -139,6 +139,7 @@
 			<autopilot n="12">
 				<path>Aircraft/A320-family/Systems/a320-lights-proprules.xml</path>
 			</autopilot>
+			<path>Aircraft/A320-family/Systems/pitot-static.xml</path>
 		</systems>
 		
 		<sound>
@@ -922,6 +923,22 @@
 			<green-psi>0</green-psi>
 			<yellow-psi>0</yellow-psi>
 		</hydraulic>
+		
+		<pitot n="1">
+            <serviceable>1</serviceable>
+		</pitot>
+		
+		<pitot n="2">
+            <serviceable>1</serviceable>
+		</pitot>
+		
+		<static n="1">
+            <serviceable>1</serviceable>
+		</static>
+		
+		<static n="2">
+            <serviceable>1</serviceable>
+		</static>
 	</systems>
 	
 	<options n="0">
@@ -936,6 +953,26 @@
 	</options>
 	
 	<instrumentation n="0">
+		<altimeter n="1">
+			<serviceable type="bool">true</serviceable>
+		</altimeter>
+		
+		<altimeter n="2">
+			<serviceable type="bool">true</serviceable>
+		</altimeter>
+		
+		<altimeter n="3">
+			<serviceable type="bool">true</serviceable>
+		</altimeter>
+		
+		<altimeter n="4">
+			<serviceable type="bool">true</serviceable>
+		</altimeter>
+		
+		<altimeter n="5">
+			<serviceable type="bool">true</serviceable>
+		</altimeter>
+		
 		<chrono n="0">
 			<started type="bool">0</started>
 			<paused type="bool">0</paused>
@@ -1605,6 +1642,7 @@
 			<file>Aircraft/A320-family/Nasal/fuel.nas</file>
 			<file>Aircraft/A320-family/Nasal/engines-common.nas</file>
 			<file>Aircraft/A320-family/Nasal/ADIRS.nas</file>
+			<file>Aircraft/A320-family/Nasal/ADIRS/ADR.nas</file>
 			<file>Aircraft/A320-family/Nasal/fire.nas</file>
 			<file>Aircraft/A320-family/Nasal/brakes.nas</file>
 			<file>Aircraft/A320-family/Nasal/ground_services.nas</file>
diff --git a/Nasal/ADIRS/ADR.nas b/Nasal/ADIRS/ADR.nas
new file mode 100644
index 00000000..a8182c8c
--- /dev/null
+++ b/Nasal/ADIRS/ADR.nas
@@ -0,0 +1,140 @@
+# A3XX ADIRS System
+# Jonathan Redpath (legoboyvdlp)
+
+# Copyright (c) 2019 Jonathan Redpath (legoboyvdlp)
+
+var _NUMADIRU = 3;
+
+var ADR = {
+	outputDisc: 0, # 0 = disc, 1 = normal
+	mode: 0, # 0 = off, 1 = nav, 2 = att
+	energised: 0, # 0 = off, 1 = on
+	input: [],
+    new: func() {
+		var adr = { parents:[ADR] };
+		return adr;
+    },
+	updateEnergized: func(mode) {
+		me.energized = mode != 0 ? 1 : 0;
+	},
+};
+
+var IR = {
+	outputDisc: 0, # 0 = disc, 1 = normal
+	mode: 0, # 0 = off, 1 = nav, 2 = att
+	energised: 0, # 0 = off, 1 = on
+	input: [],
+    new: func() {
+		var ir = { parents:[IR] };
+		return ir;
+    },
+	updateEnergized: func(mode) {
+		me.energized = mode != 0 ? 1 : 0;
+	},
+};
+
+var ADIRSControlPanel = {
+	# local vars
+	_adrSwitchState: 0,
+	_irSwitchState: 0,
+	_irModeSwitchState: 0,
+	
+	# ADIRS Units
+	ADRunits: [nil, nil, nil],
+	IRunits: [nil, nil, nil],
+	
+	# PTS
+	Switches: {
+		adrSw: [props.globals.getNode("/controls/navigation/adirscp/switches/adr-1"), props.globals.getNode("/controls/navigation/adirscp/switches/adr-2"), props.globals.getNode("/controls/navigation/adirscp/switches/adr-3")],
+		irModeSw: [props.globals.getNode("/controls/navigation/adirscp/switches/ir-1-mode"), props.globals.getNode("/controls/navigation/adirscp/switches/ir-2-mode"), props.globals.getNode("/controls/navigation/adirscp/switches/ir-3-mode")],
+		irSw: [props.globals.getNode("/controls/navigation/adirscp/switches/ir-1"), props.globals.getNode("/controls/navigation/adirscp/switches/ir-2"), props.globals.getNode("/controls/navigation/adirscp/switches/ir-3")],
+	},
+	Lights: {
+		adrFault: [props.globals.getNode("/controls/navigation/adirscp/lights/adr-1-fault"), props.globals.getNode("/controls/navigation/adirscp/lights/adr-2-fault"), props.globals.getNode("/controls/navigation/adirscp/lights/adr-3-fault")],
+		adrOff: [props.globals.getNode("/controls/navigation/adirscp/lights/adr-1-off"), props.globals.getNode("/controls/navigation/adirscp/lights/adr-2-off"), props.globals.getNode("/controls/navigation/adirscp/lights/adr-3-off")],
+		irFault: [props.globals.getNode("/controls/navigation/adirscp/lights/ir-1-fault"), props.globals.getNode("/controls/navigation/adirscp/lights/ir-2-fault"), props.globals.getNode("/controls/navigation/adirscp/lights/ir-3-fault")],
+		irOff: [props.globals.getNode("/controls/navigation/adirscp/lights/ir-1-off"), props.globals.getNode("/controls/navigation/adirscp/lights/ir-2-off"), props.globals.getNode("/controls/navigation/adirscp/lights/ir-3-off")],
+		onBat: props.globals.getNode("/controls/navigation/adirscp/lights/on-bat"),
+	},
+	
+	# Methods
+	adrSw: func(n) { 
+		if (n < 0 or n > _NUMADIRU) { return; }
+		me._adrSwitchState = me.Switches.adrSw[n].getValue();
+		print("Switching adr unit " ~ n ~ " to " ~ !me._adrSwitchState);
+		me.Switches.adrSw[n].setValue(!me._adrSwitchState);
+		if (me.ADRunits[n] != nil) { 
+			me.ADRunits[n].outputDisc = !me._adrSwitchState;
+		}
+	},
+	adrSw: func(n) { 
+		if (n < 0 or n > _NUMADIRU) { return; }
+		me._irSwitchState = me.Switches.irSw[n].getValue();
+		print("Switching ir unit " ~ n ~ " to " ~ !me._irSwitchState);
+		me.Switches.irSw[n].setValue(!me._irSwitchState);
+		if (me.IRunits[n] != nil) { 
+			me.IRunits[n].outputDisc = !me._irSwitchState;
+		}
+	},
+	irModeSw: func(n, mode) {
+		if (mode < 0 or mode > 2) { return; }
+		me._irModeSwitchState = me.Switches.irModeSw[n].getValue();
+		print("Switching adirs " ~ n ~ " to mode " ~ mode);
+		if (me.ADRunits[n] != nil) { 
+			me.ADRunits[n].mode = mode;
+			me.ADRunits[n].updateEnergized(mode);
+		}
+		if (me.IRunits[n] != nil) { 
+			me.IRunits[n].mode = mode;
+			me.IRunits[n].updateEnergized(mode);
+		}
+	}
+};
+
+var SwitchingPanel = {
+	Switches: {
+		attHdg: props.globals.getNode("/controls/navigation/switching/att-hdg"),
+		airData: props.globals.getNode("/controls/navigation/switching/air-data"),
+	},
+};
+
+
+var ADIRSnew = {
+	_flapPos: nil,
+	_slatPos: nil,
+	overspeedVFE: props.globals.initNode("/systems/navigation/adr/computation/overspeed-vfe-spd", 0, "INT"),
+	init: func() {
+		for (i = 0; i < _NUMADIRU; i = i + 1) {
+			print("Creating new ADR unit " ~ i);
+			ADIRSControlPanel.ADRunits[i] = ADR.new();
+		}
+	}, 
+	update_items: [
+		props.UpdateManager.FromPropertyHashList(["/fdm/jsbsim/fcs/flap-pos-deg","/fdm/jsbsim/fcs/slat-pos-deg"], 0.1, func(notification)
+			{
+				me._flapPos = pts.JSBSIM.FCS.flapDeg.getValue();
+				me._slatPos = pts.JSBSIM.FCS.slatDeg.getValue();
+				
+				if (me._flapPos >= 23 and me._slatPos >= 25) {
+					ADIRSnew.overspeedVFE.setValue(181);
+				} elsif (me._flapPos >= 18) {
+					ADIRSnew.overspeedVFE.setValue(189);
+				} elsif (me._flapPos >= 13 or me._slatPos > 20) {
+					ADIRSnew.overspeedVFE.setValue(204);
+				} elsif (me._slatPos <= 20 and me._flapPos > 2) {
+					ADIRSnew.overspeedVFE.setValue(219);
+				} elsif (me._slatPos >= 2 and me._slatPos <= 20) {
+					ADIRSnew.overspeedVFE.setValue(234);
+				} else {
+					ADIRSnew.overspeedVFE.setValue(1024);
+				}
+			}
+		),
+	],
+	loop: func() {
+		notification = nil;
+		foreach (var update_item; me.update_items) {
+			update_item.update(notification);
+		}
+	},
+};
diff --git a/Nasal/ECAM/ECAM-controller.nas b/Nasal/ECAM/ECAM-controller.nas
index a5cdec2c..fec4767d 100644
--- a/Nasal/ECAM/ECAM-controller.nas
+++ b/Nasal/ECAM/ECAM-controller.nas
@@ -18,7 +18,7 @@ var overflow = props.globals.initNode("/ECAM/warnings/overflow", 0, "BOOL");
 var dc_ess = props.globals.getNode("/systems/electrical/bus/dc-ess", 1);
 
 var lights = [props.globals.initNode("/ECAM/warnings/master-warning-light", 0, "BOOL"), props.globals.initNode("/ECAM/warnings/master-caution-light", 0, "BOOL")]; 
-var aural = [props.globals.initNode("/sim/sound/warnings/crc", 0, "BOOL"), props.globals.initNode("/sim/sound/warnings/chime", 0, "BOOL")];
+var aural = [props.globals.initNode("/sim/sound/warnings/crc", 0, "BOOL"), props.globals.initNode("/sim/sound/warnings/chime", 0, "BOOL"), props.globals.initNode("/sim/sound/warnings/cricket", 0, "BOOL")];
 var warningFlash = props.globals.initNode("/ECAM/warnings/master-warning-flash", 0, "BOOL");
 
 var lineIndex = 0;
@@ -46,6 +46,7 @@ var warning = {
 		t.sdPage = sdPage;
 		t.isMemo = isMemo;
 		t.hasCalled = 0;
+		t.wasActive = 0;
 		
 		return t
 	},
@@ -68,19 +69,29 @@ var warning = {
 		}
 	},
 	warnlight: func() {
-		if (me.light > 1 or me.noRepeat == 1 or me.active == 0) {return;}
-		lights[me.light].setBoolValue(1);
-		me.noRepeat = 1;
+		if (me.light > 1 or me.noRepeat == 1 or (me.active == 0 and me.wasActive == 0)) {return;}
+		if (me.active == 1) {
+			lights[me.light].setBoolValue(1);
+			me.noRepeat = 1;
+		} elsif (me.wasActive) {
+			lights[me.light].setBoolValue(0);
+			me.wasActive = 0;
+		}
 	},
 	sound: func() {
-        if (me.aural > 1 or me.noRepeat2 == 1 or me.active == 0) {return;}
-		if (me.aural != 0) {
+        if (me.aural > 2 or me.noRepeat2 == 1 or (me.active == 0 and me.wasActive == 0)) {return;}
+		if (me.active == 1) {
+			if (me.aural != 0) {
+				aural[me.aural].setBoolValue(0); 
+			}
+			me.noRepeat2 = 1;
+			settimer(func() {
+				aural[me.aural].setBoolValue(1);
+			}, 0.15);
+		} elsif (me.wasActive) {
 			aural[me.aural].setBoolValue(0); 
+			me.wasActive = 0;
 		}
-        me.noRepeat2 = 1;
-		settimer(func() {
-			aural[me.aural].setBoolValue(1);
-		}, 0.15);
     },
 	callPage: func() {
 		if (me.sdPage == "nil" or me.hasCalled == 1) { return; }
@@ -320,6 +331,9 @@ var ECAM_controller = {
 		warning.active = 0;
 		warning.noRepeat = 0;
 		warning.noRepeat2 = 0;
+		if (warning.aural == 2) {
+			aural[2].setValue(0);
+		}
 	},
 };
 
diff --git a/Nasal/ECAM/ECAM-logic.nas b/Nasal/ECAM/ECAM-logic.nas
index bf44e4c9..3f8f9260 100644
--- a/Nasal/ECAM/ECAM-logic.nas
+++ b/Nasal/ECAM/ECAM-logic.nas
@@ -22,6 +22,7 @@ var apu_bleedSw   = props.globals.getNode("/controls/pneumatic/switches/bleedapu
 var gear       = props.globals.getNode("/gear/gear-pos-norm", 1);
 var cutoff1    = props.globals.getNode("/controls/engines/engine[0]/cutoff-switch", 1);
 var cutoff2    = props.globals.getNode("/controls/engines/engine[1]/cutoff-switch", 1);
+var stallVoice = props.globals.initNode("/sim/sound/warnings/stall-voice", 0, "BOOL");
 var engOpt     = props.globals.getNode("/options/eng", 1);
 
 # local variables
@@ -29,11 +30,53 @@ var phaseVar = nil;
 var dualFailFACActive = 1;
 var emerConfigFACActive = 1;
 var gear_agl_cur = nil;
-
 var messages_priority_3 = func {
 	phaseVar = phaseNode.getValue();
 	
-	# FCTL
+	# Stall
+	# todo - altn law and emer cancel flipflops page 2440
+	if (phaseVar >= 5 and phaseVar <= 7 and (getprop("/fdm/jsbsim/fcs/slat-pos-deg") <= 15 and (getprop("/systems/navigation/adr/output/aoa-1") > 15 or getprop("/systems/navigation/adr/output/aoa-2") > 15 or getprop("/systems/navigation/adr/output/aoa-3") > 15)) or (getprop("/fdm/jsbsim/fcs/slat-pos-deg") > 15 and (getprop("/systems/navigation/adr/output/aoa-1") > 23 or getprop("/systems/navigation/adr/output/aoa-2") > 23 or getprop("/systems/navigation/adr/output/aoa-3") > 23))) {
+		stall.active = 1;
+	} else {
+		ECAM_controller.warningReset(stall);
+	}
+	
+	if (stall.active) {
+		stallVoice.setValue(1);
+	} else {
+		stallVoice.setValue(0);
+	}
+	
+	if ((phaseVar == 1 or (phaseVar >= 5 and phaseVar <= 7)) and getprop("/systems/navigation/adr/output/overspeed")) {
+		overspeed.active = 1;
+		if (getprop("/systems/navigation/adr/computation/overspeed-vmo") or getprop("/systems/navigation/adr/computation/overspeed-mmo")) {
+			overspeedVMO.active = 1;
+		} else {
+			ECAM_controller.warningReset(overspeedVMO);
+		}
+		
+		if (getprop("/systems/navigation/adr/computation/overspeed-vle")) {
+			overspeedGear.active = 1;
+		} else {
+			ECAM_controller.warningReset(overspeedGear);
+		}
+		
+		if (getprop("/systems/navigation/adr/computation/overspeed-vfe")) {
+			overspeedFlap.active = 1;
+			overspeedFlap.msg = "-VFE................" ~ (systems.ADIRSnew.overspeedVFE.getValue() - 4);
+		} else {
+			ECAM_controller.warningReset(overspeedGear);
+			overspeedFlap.msg = "-VFE................XXX";
+		}
+	} else {
+		ECAM_controller.warningReset(overspeed);
+		ECAM_controller.warningReset(overspeedVMO);
+		ECAM_controller.warningReset(overspeedGear);
+		ECAM_controller.warningReset(overspeedFlap);
+		overspeedFlap.msg = "-VFE................XXX";
+	}
+	
+	# FCTL FLAPS NOT ZERO
 	if ((flap_not_zero.clearFlag == 0) and phaseVar == 6 and getprop("/controls/flight/flap-lever") != 0 and getprop("/instrumentation/altimeter/indicated-altitude-ft") > 22000) {
 		flap_not_zero.active = 1;
 	} else {
diff --git a/Nasal/ECAM/ECAM-messages.nas b/Nasal/ECAM/ECAM-messages.nas
index 5f69f8cf..126ba6e6 100644
--- a/Nasal/ECAM/ECAM-messages.nas
+++ b/Nasal/ECAM/ECAM-messages.nas
@@ -10,8 +10,14 @@
 # Left E/WD
 
 var warnings				  = std.Vector.new([
+	var stall                 = warning.new(msg: "", aural: 2),
 	var flap_not_zero         = warning.new(msg: "F/CTL FLAP LVR NOT ZERO",   colour: "r", aural: 0, light: 0),
 	
+	var overspeed          = warning.new(msg: "OVER SPEED",                colour: "r", aural: 0, light: 0, hasSubmsg: 1),
+	var overspeedVMO       = warning.new(msg: "-VMO/MMO.......350 /.82",   colour: "r"),
+	var overspeedGear      = warning.new(msg: "-VLE...........280 /.67",   colour: "r"),
+	var overspeedFlap      = warning.new(msg: "-VFE................XXX",   colour: "r"),
+	
 	# DUAL ENG FAIL
 	var dualFail              = warning.new(msg: "ENG DUAL FAILURE",          colour: "r", aural: 0, light: 0, hasSubmsg: 1),
 	var dualFailModeSel       = warning.new(msg: " -ENG MODE SEL.......IGN",  colour: "c"),
diff --git a/Nasal/FMGC.nas b/Nasal/FMGC.nas
index 147478d6..8b983ef8 100644
--- a/Nasal/FMGC.nas
+++ b/Nasal/FMGC.nas
@@ -264,24 +264,24 @@ var masterFMGC = maketimer(0.2, func {
 		reset_FMGC();
 	}
 	
+	if (getprop("/systems/navigation/adr/computation/overspeed-vfe-spd") != 1024) {
+		setprop("/FMGC/internal/maxspeed", getprop("/systems/navigation/adr/computation/overspeed-vfe-spd") - 4);
+	} else {
+		setprop("/FMGC/internal/maxspeed", getprop("/it-fbw/speeds/vmo-mmo"));
+	}
+	
 	flap = getprop("/controls/flight/flap-pos");
 	if (flap == 0) { # 0
-		setprop("/FMGC/internal/maxspeed", getprop("/it-fbw/speeds/vmo-mmo"));
 		setprop("/FMGC/internal/minspeed", 202);
 	} else if (flap == 1) { # 1
-		setprop("/FMGC/internal/maxspeed", 230);
 		setprop("/FMGC/internal/minspeed", 184);
 	} else if (flap == 2) { # 1+F
-		setprop("/FMGC/internal/maxspeed", 215);
 		setprop("/FMGC/internal/minspeed", 171);
 	} else if (flap == 3) { # 2
-		setprop("/FMGC/internal/maxspeed", 200);
 		setprop("/FMGC/internal/minspeed", 156);
 	} else if (flap == 4) { # 3
-		setprop("/FMGC/internal/maxspeed", 185);
 		setprop("/FMGC/internal/minspeed", 147);
 	} else if (flap == 5) { # FULL
-		setprop("/FMGC/internal/maxspeed", 177);
 		setprop("/FMGC/internal/minspeed", 131);
 	}
 	
diff --git a/Nasal/libraries.nas b/Nasal/libraries.nas
index 9158ec43..b61a1f69 100644
--- a/Nasal/libraries.nas
+++ b/Nasal/libraries.nas
@@ -200,6 +200,7 @@ var systemsInit = func {
 	systems.HYD.init();
 	systems.FUEL.init();
 	systems.ADIRS.init();
+	systems.ADIRSnew.init();
 	systems.eng_init();
 	systems.fire_init();
 	systems.autobrake_init();
@@ -231,6 +232,7 @@ var systemsLoop = maketimer(0.1, func {
 	systems.HYD.loop();
 	systems.FUEL.loop();
 	systems.ADIRS.loop();
+	systems.ADIRSnew.loop();
 	libraries.ECAM.loop();
 	libraries.BUTTONS.update();
 	fadec.FADEC.loop();
diff --git a/Nasal/property-tree-setup.nas b/Nasal/property-tree-setup.nas
index bfd30e9c..4ee7b847 100644
--- a/Nasal/property-tree-setup.nas
+++ b/Nasal/property-tree-setup.nas
@@ -47,6 +47,13 @@ var Instrumentation = {
 	},
 };
 
+var JSBSIM = {
+	FCS: {
+		flapDeg: props.globals.getNode("/fdm/jsbsim/fcs/flap-pos-deg"),
+		slatDeg: props.globals.getNode("/fdm/jsbsim/fcs/slat-pos-deg"),
+	},
+};
+
 var Options = {
 	eng: props.globals.getNode("/options/eng"),
 };
diff --git a/Sounds/A320-common-sound.xml b/Sounds/A320-common-sound.xml
index c31ba0a2..53846b25 100644
--- a/Sounds/A320-common-sound.xml
+++ b/Sounds/A320-common-sound.xml
@@ -1581,14 +1581,32 @@
 			<max-dist>100</max-dist>
 		</crc>
 	
+		<cricket>
+			<name>Cricket</name>
+			<path>Aircraft/A320-family/Sounds/Cockpit/cricket.wav</path>
+			<mode>looped</mode>
+			<type>avionics</type>
+			<condition>
+				<property>/sim/sound/warnings/cricket</property>
+			</condition>
+			<volume>
+				<factor>0.2</factor>
+			</volume>
+			<reference-dist>10</reference-dist>
+			<max-dist>100</max-dist>
+		</cricket>
+		
 		<stall-voice>
 			<name>stall-voice</name>
 			<mode>looped</mode>
 			<path>Aircraft/A320-family/Sounds/Cockpit/stall_voice.wav</path>
 			<type>avionics</type>
 			<condition>
-				<property>warnings/stall/active</property>
+				<property>/sim/sound/warnings/stall-voice</property>
 			</condition>
+			<volume>
+				<factor>2.0</factor>
+			</volume>
 			<reference-dist>10</reference-dist>
 			<max-dist>100.0</max-dist>
 		</stall-voice>
diff --git a/Sounds/Cockpit/cricket.wav b/Sounds/Cockpit/cricket.wav
index 0e23005a..64f8b879 100644
Binary files a/Sounds/Cockpit/cricket.wav and b/Sounds/Cockpit/cricket.wav differ
diff --git a/Sounds/Cockpit/stall_voice.wav b/Sounds/Cockpit/stall_voice.wav
index ff066513..8d7ae005 100644
Binary files a/Sounds/Cockpit/stall_voice.wav and b/Sounds/Cockpit/stall_voice.wav differ
diff --git a/Systems/a320-adr.xml b/Systems/a320-adr.xml
new file mode 100644
index 00000000..809dce00
--- /dev/null
+++ b/Systems/a320-adr.xml
@@ -0,0 +1,809 @@
+<!-- Airbus A320 ADR -->
+
+<!-- Copyright (c) 2019 Jonathan Redpath -->
+
+<system name="A320: ADR">
+
+    <channel name="ADR Inputs">
+       
+		<sensor name="/systems/navigation/probes/pitot-1">
+			<input>/systems/pitot[0]/measured-total-pressure-inhg</input>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/pitot-2">
+			<input>/systems/pitot[1]/measured-total-pressure-inhg</input>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/pitot-3">
+			<input>/systems/pitot[2]/measured-total-pressure-inhg</input>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/static-1">
+			<input>/systems/static[0]/pressure-inhg</input>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/static-2">
+			<input>/systems/static[1]/pressure-inhg</input>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/static-3">
+			<input>/systems/static[2]/pressure-inhg</input>
+		</sensor>
+		
+		<fcs_function name="/systems/navigation/probes/tat-1/compute-tat">
+			<function>
+				<difference>
+					<product>
+						<sum>
+							<property>/environment/temperature-degc</property> <!-- SAT -->
+							<value>273.15</value>
+						</sum>
+						<sum>
+							<value>1</value>
+							<product>
+								<value>0.2</value> <!-- ratio of specific heats - 1 / 2 -->
+								<value>0.995</value> <!-- empirical recovery factor -->
+								<pow>
+									<property>velocities/mach</property> <!-- going to use the pure value of mach here and then calculate another value -->
+									<value>2</value>
+								</pow>
+							</product>
+						</sum>
+					</product>
+					<value>273.15</value>
+				</difference>
+			</function>
+		</fcs_function>
+		
+		<fcs_function name="/systems/navigation/probes/tat-2/compute-tat">
+			<function>
+				<difference>
+					<product>
+						<sum>
+							<property>/environment/temperature-degc</property> <!-- SAT -->
+							<value>273.15</value>
+						</sum>
+						<sum>
+							<value>1</value>
+							<product>
+								<value>0.2</value> <!-- ratio of specific heats - 1 / 2 -->
+								<value>0.996</value> <!-- empirical recovery factor -->
+								<pow>
+									<property>velocities/mach</property> <!-- going to use the pure value of mach here and then calculate another value -->
+									<value>2</value>
+								</pow>
+							</product>
+						</sum>
+					</product>
+					<value>273.15</value>
+				</difference>
+			</function>
+		</fcs_function>
+		
+		<sensor name="/systems/navigation/probes/tat-1/tat">
+			<input>/systems/navigation/probes/tat-1/compute-tat</input>
+			<quantization name="/systems/navigation/adr/output/tat-1">
+				<bits>11</bits>
+				<min>-256</min>
+				<max>256</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/tat-2/tat">
+			<input>/systems/navigation/probes/tat-2/compute-tat</input>
+			<quantization name="/systems/navigation/adr/output/tat-2">
+				<bits>11</bits>
+				<min>-256</min>
+				<max>256</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/aoa-1">
+			<input>aero/alpha-deg</input>
+			<quantization name="/systems/navigation/adr/output/aoa-1">
+				<bits>12</bits>
+				<min>-180</min>
+				<max>180</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/aoa-2">
+			<input>aero/alpha-deg</input>
+			<quantization name="/systems/navigation/adr/output/aoa-2">
+				<bits>12</bits>
+				<min>-180</min>
+				<max>180</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/probes/aoa-3">
+			<input>aero/alpha-deg</input>
+			<quantization name="/systems/navigation/adr/output/aoa-3">
+				<bits>12</bits>
+				<min>-180</min>
+				<max>180</max>
+			</quantization>
+		</sensor>
+		
+    </channel>
+	
+	<channel name="ADR Computation">
+	
+		<sensor name="/systems/navigation/adr/computation/baro-alt-1-capt">
+			<input>/instrumentation/altimeter[0]/pressure-alt-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-1-capt">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-2-capt">
+			<input>/instrumentation/altimeter[1]/pressure-alt-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-2-capt">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-3-capt">
+			<input>/instrumentation/altimeter[2]/pressure-alt-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-3-capt">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+	
+		<sensor name="/systems/navigation/adr/computation/baro-alt-1-fo">
+			<input>/instrumentation/altimeter[3]/pressure-alt-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-1-fo">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-2-fo">
+			<input>/instrumentation/altimeter[4]/pressure-alt-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-2-fo">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-3-fo">
+			<input>/instrumentation/altimeter[5]/pressure-alt-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-3-fo">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-1-capt">
+			<input>/instrumentation/altimeter[0]/indicated-altitude-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-corrected-1-capt">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-2-capt">
+			<input>/instrumentation/altimeter[1]/indicated-altitude-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-corrected-2-capt">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-3-capt">
+			<input>/instrumentation/altimeter[2]/indicated-altitude-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-corrected-3-capt">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-1-fo">
+			<input>/instrumentation/altimeter[3]/indicated-altitude-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-corrected-1-fo">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-2-fo">
+			<input>/instrumentation/altimeter[4]/indicated-altitude-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-corrected-2-fo">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-3-fo">
+			<input>/instrumentation/altimeter[5]/indicated-altitude-ft</input>
+			<quantization name="/systems/navigation/adr/output/baro-alt-corrected-3-fo">
+				<bits>17</bits>
+				<min>-65536</min>
+				<max>65536</max>
+			</quantization>
+		</sensor>
+		
+		<fcs_function name="/systems/navigation/adr/computation/cas-1-compute"> <!-- same as mach but with sea level pressure and multiplied by speed of sound at sea level -->
+			<function>
+				<product>
+					<value>661.47</value>
+					<pow>
+						<product>
+							<value>5</value>
+							<difference>
+								<pow>
+									<sum>
+										<quotient>
+											<difference>
+												<property>/systems/navigation/probes/pitot-1</property> <!-- impact pressure -->
+												<property>/systems/navigation/probes/static-1</property>
+											</difference>
+											<value>29.9212553</value> <!-- use standard outside pressure -->
+										</quotient>
+										<value>1</value>
+									</sum>
+									<quotient>
+										<value>2</value>
+										<value>7</value>
+									</quotient>
+								</pow>
+								<value>1</value>
+							</difference>
+						</product>
+						<value>0.5</value>
+					</pow>
+				</product>
+			</function>
+		</fcs_function>
+		
+		<fcs_function name="/systems/navigation/adr/computation/cas-2-compute">
+			<function>
+				<product>
+					<value>661.47</value>
+					<pow>
+						<product>
+							<value>5</value>
+							<difference>
+								<pow>
+									<sum>
+										<quotient>
+											<difference>
+												<property>/systems/navigation/probes/pitot-2</property>
+												<property>/systems/navigation/probes/static-2</property>
+											</difference>
+											<value>29.9212553</value>
+										</quotient>
+										<value>1</value>
+									</sum>
+									<quotient>
+										<value>2</value>
+										<value>7</value>
+									</quotient>
+								</pow>
+								<value>1</value>
+							</difference>
+						</product>
+						<value>0.5</value>
+					</pow>
+				</product>
+			</function>
+		</fcs_function>
+		<fcs_function name="/systems/navigation/adr/computation/cas-3-compute">
+			<function>
+				<product>
+					<value>661.47</value>
+					<pow>
+						<product>
+							<value>5</value>
+							<difference>
+								<pow>
+									<sum>
+										<quotient>
+											<difference>
+												<property>/systems/navigation/probes/pitot-3</property> <!-- impact pressure -->
+												<property>/systems/navigation/probes/static-3</property>
+											</difference>
+											<value>29.9212553</value> <!-- use standard outside pressure -->
+										</quotient>
+										<value>1</value>
+									</sum>
+									<quotient>
+										<value>2</value>
+										<value>7</value>
+									</quotient>
+								</pow>
+								<value>1</value>
+							</difference>
+						</product>
+						<value>0.5</value>
+					</pow>
+				</product>
+			</function>
+		</fcs_function>
+		
+		<sensor name="/systems/navigation/adr/computation/cas-1">
+			<input>/systems/navigation/adr/computation/cas-1-compute</input>
+			<quantization name="/systems/navigation/adr/computation/cas-1">
+				<bits>14</bits>
+				<min>0</min>
+				<max>1024</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/cas-2">
+			<input>/systems/navigation/adr/computation/cas-2-compute</input>
+			<quantization name="/systems/navigation/adr/computation/cas-2">
+				<bits>14</bits>
+				<min>0</min>
+				<max>1024</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/cas-3">
+			<input>/systems/navigation/adr/computation/cas-3-compute</input>
+			<quantization name="/systems/navigation/adr/computation/cas-3">
+				<bits>14</bits>
+				<min>0</min>
+				<max>1024</max>
+			</quantization>
+		</sensor>
+		
+		<fcs_function name="/systems/navigation/adr/computation/mach-1-compute">
+			<function>
+				<pow>
+					<product>
+						<value>5</value>  <!-- 2 / specific heat ratio - 1 -->
+						<difference>
+							<pow>
+								<sum>
+									<quotient>
+										<difference>
+											<property>/systems/navigation/probes/pitot-1</property>  <!-- dynamic pressure -->
+											<property>/systems/navigation/probes/static-1</property>
+										</difference>
+										<property>/systems/navigation/probes/static-1</property> <!-- static pressure -->
+									</quotient>
+									<value>1</value>
+								</sum>
+								<quotient>
+									<value>2</value>
+									<value>7</value>
+								</quotient>
+							</pow>
+							<value>1</value>
+						</difference>
+					</product>
+					<value>0.5</value>
+				</pow>
+			</function>
+		</fcs_function>
+		
+		<fcs_function name="/systems/navigation/adr/computation/mach-2-compute">
+			<function>
+				<pow>
+					<product>
+						<value>5</value>
+						<difference>
+							<pow>
+								<sum>
+									<quotient>
+										<difference>
+											<property>/systems/navigation/probes/pitot-2</property>
+											<property>/systems/navigation/probes/static-2</property>
+										</difference>
+										<property>/systems/navigation/probes/static-2</property>
+									</quotient>
+									<value>1</value>
+								</sum>
+								<quotient>
+									<value>2</value>
+									<value>7</value>
+								</quotient>
+							</pow>
+							<value>1</value>
+						</difference>
+					</product>
+					<value>0.5</value>
+				</pow>
+			</function>
+		</fcs_function>
+		
+		<fcs_function name="/systems/navigation/adr/computation/mach-3-compute">
+			<function>
+				<pow>
+					<product>
+						<value>5</value>
+						<difference>
+							<pow>
+								<sum>
+									<quotient>
+										<difference>
+											<property>/systems/navigation/probes/pitot-3</property>
+											<property>/systems/navigation/probes/static-3</property>
+										</difference>
+										<property>/systems/navigation/probes/static-3</property>
+									</quotient>
+									<value>1</value>
+								</sum>
+								<quotient>
+									<value>2</value>
+									<value>7</value>
+								</quotient>
+							</pow>
+							<value>1</value>
+						</difference>
+					</product>
+					<value>0.5</value>
+				</pow>
+			</function>
+		</fcs_function>
+		
+		<sensor name="/systems/navigation/adr/computation/mach-1">
+			<input>/systems/navigation/adr/computation/mach-1-compute</input>
+			<quantization name="/systems/navigation/adr/computation/mach-1">
+				<bits>16</bits>
+				<min>0</min>
+				<max>4.096</max> <!-- O_o -->
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/mach-2">
+			<input>/systems/navigation/adr/computation/mach-2-compute</input>
+			<quantization name="/systems/navigation/adr/computation/mach-2">
+				<bits>16</bits>
+				<min>0</min>
+				<max>4.096</max>
+			</quantization>
+		</sensor>
+	
+		<sensor name="/systems/navigation/adr/computation/mach-3">
+			<input>/systems/navigation/adr/computation/mach-3-compute</input>
+			<quantization name="/systems/navigation/adr/computation/mach-3">
+				<bits>16</bits>
+				<min>0</min>
+				<max>4.096</max>
+			</quantization>
+		</sensor>
+		
+		<fcs_function name="/systems/navigation/adr/computation/sat-1-compute">
+			<function>
+				<difference>
+					<property>/systems/navigation/probes/tat-1/tat</property>
+					<quotient>
+						<pow>
+							<property>/velocities/TAS</property>
+							<value>2</value>
+						</pow>
+						<value>7569</value>
+					</quotient>
+				</difference>
+			</function>
+		</fcs_function>
+		
+		<sensor name="/systems/navigation/adr/computation/sat-1">
+			<input>/environment/temperature-degc</input>
+			<quantization name="/systems/navigation/adr/computation/sat-1">
+				<bits>11</bits>
+				<min>-256</min>
+				<max>256</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/sat-2">
+			<input>/environment/temperature-degc</input>
+			<quantization name="/systems/navigation/adr/computation/sat-2">
+				<bits>11</bits>
+				<min>-256</min>
+				<max>256</max>
+			</quantization>
+		</sensor>
+		
+		<fcs_function name="/systems/navigation/adr/computation/tas-1-compute">
+			<function>
+				<product>
+					<value>661.47</value> <!-- speed of sound at SL -->
+					<property>/systems/navigation/adr/computation/mach-1</property>
+					<pow>
+						<quotient>
+							<sum>
+								<property>/systems/navigation/adr/computation/sat-1</property>
+								<value>273.15</value>
+							</sum>
+							<value>288.15</value> <!-- temperature at SL -->
+						</quotient>
+						<value>0.5</value>
+					</pow>
+				</product>
+			</function>
+		</fcs_function>
+		
+		<fcs_function name="/systems/navigation/adr/computation/tas-2-compute">
+			<function>
+				<product>
+					<value>661.47</value> <!-- speed of sound at SL -->
+					<property>/systems/navigation/adr/computation/mach-2</property>
+					<pow>
+						<quotient>
+							<sum>
+								<property>/systems/navigation/adr/computation/sat-2</property>
+								<value>273.15</value>
+							</sum>
+							<value>288.15</value> <!-- temperature at SL -->
+						</quotient>
+						<value>0.5</value>
+					</pow>
+				</product>
+			</function>
+		</fcs_function>
+		
+		<fcs_function name="/systems/navigation/adr/computation/tas-3-compute">
+			<function>
+				<product>
+					<value>661.47</value> <!-- speed of sound at SL -->
+					<property>/systems/navigation/adr/computation/mach-3</property>
+					<pow>
+						<quotient>
+							<sum>
+								<property>/systems/navigation/adr/computation/sat-1</property> <!-- use captain's probe -->
+								<value>273.15</value>
+							</sum>
+							<value>288.15</value> <!-- temperature at SL -->
+						</quotient>
+						<value>0.5</value>
+					</pow>
+				</product>
+			</function>
+		</fcs_function>
+		
+		<sensor name="/systems/navigation/adr/computation/tas-1">
+			<input>/systems/navigation/adr/computation/tas-1-compute</input>
+			<quantization name="/systems/navigation/adr/computation/tas-1">
+				<bits>15</bits>
+				<min>0</min>
+				<max>2048</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/tas-2">
+			<input>/systems/navigation/adr/computation/tas-2-compute</input>
+			<quantization name="/systems/navigation/adr/computation/tas-2">
+				<bits>15</bits>
+				<min>0</min>
+				<max>2048</max>
+			</quantization>
+		</sensor>
+		
+		<sensor name="/systems/navigation/adr/computation/tas-3">
+			<input>/systems/navigation/adr/computation/tas-3-compute</input>
+			<quantization name="/systems/navigation/adr/computation/tas-3">
+				<bits>15</bits>
+				<min>0</min>
+				<max>2048</max>
+			</quantization>
+		</sensor>
+		
+		<fcs_function name="/systems/navigation/adr/computation/overspeed-vmo">
+			<function>
+				<ifthen>
+					<gt>
+						<max>
+							<property>/systems/navigation/adr/output/cas-1</property>
+							<property>/systems/navigation/adr/output/cas-2</property>
+							<property>/systems/navigation/adr/output/cas-3</property>
+						</max>
+						<value>354</value>
+					</gt>
+					<value>1</value>
+					<value>0</value>
+				</ifthen>
+			</function>
+		</fcs_function>
+		
+		<fcs_function name="/systems/navigation/adr/computation/overspeed-mmo">
+			<function>
+				<ifthen>
+					<gt>
+						<max>
+							<property>/systems/navigation/adr/output/mach-1</property>
+							<property>/systems/navigation/adr/output/mach-2</property>
+							<property>/systems/navigation/adr/output/mach-3</property>
+						</max>
+						<value>0.826</value>
+					</gt>
+					<value>1</value>
+					<value>0</value>
+				</ifthen>
+			</function>
+		</fcs_function>
+		
+		<switch name="/systems/navigation/adr/computation/overspeed-vle">
+			<default value="0"/>
+			<test logic="AND" value="1">
+				/systems/navigation/adr/computation/overspeed-vle-speed eq 1
+				<test logic="OR">
+					/ECAM/Lower/door-left ne 0
+					/ECAM/Lower/door-right ne 0
+					/ECAM/Lower/door-nose-left ne 0
+					/ECAM/Lower/door-nose-right ne 0
+					/gear/gear[0]/position-norm ne 0
+					/gear/gear[1]/position-norm ne 0
+					/gear/gear[2]/position-norm ne 0
+				</test>
+			</test>
+		</switch>
+		
+		<fcs_function name="/systems/navigation/adr/computation/overspeed-vle-speed">
+			<function>
+				<ifthen>
+					<gt>
+						<max>
+							<property>/systems/navigation/adr/output/cas-1</property>
+							<property>/systems/navigation/adr/output/cas-2</property>
+							<property>/systems/navigation/adr/output/cas-3</property>
+						</max>
+						<value>284</value>
+					</gt>
+					<value>1</value>
+					<value>0</value>
+				</ifthen>
+			</function>
+		</fcs_function>
+		
+		<fcs_function name="/systems/navigation/adr/computation/overspeed-vfe">
+			<function>
+				<ifthen>
+					<gt>
+						<max>
+							<property>/systems/navigation/adr/output/cas-1</property>
+							<property>/systems/navigation/adr/output/cas-2</property>
+							<property>/systems/navigation/adr/output/cas-3</property>
+						</max>
+						<property>/systems/navigation/adr/computation/overspeed-vfe-spd</property>
+					</gt>
+					<value>1</value>
+					<value>0</value>
+				</ifthen>
+			</function>
+		</fcs_function>
+		
+	</channel>
+	
+	<channel name="ADR Output"> <!-- todo - need lowpass? -->
+	
+		<pure_gain name="/systems/navigation/adr/output/aoa-1">
+			<input>/systems/navigation/probes/aoa-1</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/aoa-2">
+			<input>/systems/navigation/probes/aoa-2</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/aoa-3">
+			<input>/systems/navigation/probes/aoa-3</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/baro-alt-1-capt">
+			<input>/systems/navigation/adr/computation/baro-alt-1-capt</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/baro-alt-2-capt">
+			<input>/systems/navigation/adr/computation/baro-alt-2-capt</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/baro-alt-3-capt">
+			<input>/systems/navigation/adr/computation/baro-alt-3-capt</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/baro-alt-1-fo">
+			<input>/systems/navigation/adr/computation/baro-alt-1-fo</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/baro-alt-2-capt">
+			<input>/systems/navigation/adr/computation/baro-alt-2-fo</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/baro-alt-3-fo">
+			<input>/systems/navigation/adr/computation/baro-alt-3-fo</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/cas-1">
+			<input>/systems/navigation/adr/computation/cas-1</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/cas-2">
+			<input>/systems/navigation/adr/computation/cas-2</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/cas-3">
+			<input>/systems/navigation/adr/computation/cas-3</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/mach-1">
+			<input>/systems/navigation/adr/computation/mach-1</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/mach-2">
+			<input>/systems/navigation/adr/computation/mach-2</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/mach-3">
+			<input>/systems/navigation/adr/computation/mach-3</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/sat-1">
+			<input>/systems/navigation/adr/computation/sat-1</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/sat-2">
+			<input>/systems/navigation/adr/computation/sat-2</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/tas-1">
+			<input>/systems/navigation/adr/computation/tas-1</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/tas-2">
+			<input>/systems/navigation/adr/computation/tas-2</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/tas-3">
+			<input>/systems/navigation/adr/computation/tas-3</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/tat-1">
+			<input>/systems/navigation/probes/tat-1/tat</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<pure_gain name="/systems/navigation/adr/output/tat-2">
+			<input>/systems/navigation/probes/tat-2/tat</input>
+			<gain>1</gain>
+		</pure_gain>
+		
+		<fcs_function name="/systems/navigation/adr/output/overspeed">
+			<function>
+				<max>
+					<property>/systems/navigation/adr/computation/overspeed-vmo</property>
+					<property>/systems/navigation/adr/computation/overspeed-mmo</property>
+					<property>/systems/navigation/adr/computation/overspeed-vle</property>
+					<property>/systems/navigation/adr/computation/overspeed-vfe</property>
+				</max>
+			</function>
+		</fcs_function>
+	</channel>
+
+</system>
diff --git a/Systems/instrumentation.xml b/Systems/instrumentation.xml
index 4ec00124..0b817e04 100644
--- a/Systems/instrumentation.xml
+++ b/Systems/instrumentation.xml
@@ -26,9 +26,59 @@
 	<altimeter>
 		<name>altimeter</name>
 		<number>0</number>
-		<static-pressure>/systems/static/pressure-inhg</static-pressure>
-		<quantum>0</quantum>
-		<tau>0</tau>
+		<static-pressure>/systems/static[0]/pressure-inhg</static-pressure>
+		<quantum>1</quantum>
+		<tau>0.1</tau>
+		<encode-mode-c>1</encode-mode-c>
+		<encode-mode-s>1</encode-mode-s>
+	</altimeter>
+	
+	<altimeter>
+		<name>altimeter</name>
+		<number>1</number>
+		<static-pressure>/systems/static[1]/pressure-inhg</static-pressure>
+		<quantum>1</quantum>
+		<tau>0.1</tau>
+		<encode-mode-c>1</encode-mode-c>
+		<encode-mode-s>1</encode-mode-s>
+	</altimeter>
+	
+	<altimeter>
+		<name>altimeter</name>
+		<number>2</number>
+		<static-pressure>/systems/static[2]/pressure-inhg</static-pressure>
+		<quantum>1</quantum>
+		<tau>0.1</tau>
+		<encode-mode-c>1</encode-mode-c>
+		<encode-mode-s>1</encode-mode-s>
+	</altimeter>
+	
+	<altimeter>
+		<name>altimeter</name>
+		<number>3</number>
+		<static-pressure>/systems/static[0]/pressure-inhg</static-pressure>
+		<quantum>1</quantum>
+		<tau>0.1</tau>
+		<encode-mode-c>1</encode-mode-c>
+		<encode-mode-s>1</encode-mode-s>
+	</altimeter>
+	
+	<altimeter>
+		<name>altimeter</name>
+		<number>4</number>
+		<static-pressure>/systems/static[1]/pressure-inhg</static-pressure>
+		<quantum>1</quantum>
+		<tau>0.1</tau>
+		<encode-mode-c>1</encode-mode-c>
+		<encode-mode-s>1</encode-mode-s>
+	</altimeter>
+	
+	<altimeter>
+		<name>altimeter</name>
+		<number>5</number>
+		<static-pressure>/systems/static[2]/pressure-inhg</static-pressure>
+		<quantum>1</quantum>
+		<tau>0.1</tau>
 		<encode-mode-c>1</encode-mode-c>
 		<encode-mode-s>1</encode-mode-s>
 	</altimeter>
diff --git a/Systems/pitot-static.xml b/Systems/pitot-static.xml
new file mode 100644
index 00000000..8ef146ee
--- /dev/null
+++ b/Systems/pitot-static.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+
+<PropertyList>
+  <pitot>
+    <name>pitot</name>
+    <number>0</number>
+  </pitot>
+  
+  <pitot>
+    <name>pitot</name>
+    <number>1</number>
+  </pitot>
+  
+  <pitot>
+    <name>pitot</name>
+    <number>2</number>
+  </pitot>
+
+  <static>
+    <name>static</name>
+    <number>0</number>
+    <tau>0.7</tau>
+	<type>1</type>
+    <error-factor>0.43</error-factor>
+  </static>
+
+  <static>
+    <name>static</name>
+    <number>1</number>
+    <tau>0.7</tau>
+	<type>1</type>
+    <error-factor>0.42</error-factor>
+  </static>
+
+  <static>
+    <name>static</name>
+    <number>2</number>
+    <tau>0.7</tau>
+	<type>1</type>
+    <error-factor>0.45</error-factor>
+  </static>
+
+  <vacuum> <!-- todo get property based on elec -->
+    <name>vacuum</name>
+    <number>0</number>
+    <rpm>/engines/engine[0]/rpm</rpm>
+    <scale>1.0</scale>
+  </vacuum>
+
+  <vacuum>
+    <name>vacuum</name>
+    <number>1</number>
+    <rpm>/engines/engine[1]/rpm</rpm>
+    <scale>1.0</scale>
+  </vacuum>
+
+</PropertyList>