usb format.doc · web viewswitch_hydraulic_pump_a is now switch_n1_set_select....

654
Precision Flight Controls, Inc. USB Message Format Jeffrey J. Nonken 15 May 2018 revision 1.22.00

Upload: trandang

Post on 29-Mar-2018

224 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Precision Flight Controls, Inc. USB Message FormatJeffrey J. Nonken

15 May 2018revision 1.22.00

Copyright © 2018 Precision Flight Controls, Inc. All rights reserved worldwide.

Page 2: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Table of ContentsRevisions...................................................................................................................................................... 311 Introduction......................................................................................................................................41

1.1 Purpose..................................................................................................................................... 411.2 Scope.......................................................................................................................................... 411.3 Reference Documents.........................................................................................................41

2 Message Formats............................................................................................................................ 422.1 Joystick controls....................................................................................................................422.2 Messages...................................................................................................................................42

2.2.1 All Messages.......................................................................................................................422.2.1.1 Device Class..............................................................................................................422.2.1.2 Fill Bytes.....................................................................................................................432.2.1.3 Endianity....................................................................................................................432.2.1.4 General Message Format....................................................................................43

2.2.1.4.1 Device Class.......................................................................................................432.2.1.4.2 Selector................................................................................................................442.2.1.4.3 Message Index..................................................................................................45

2.2.2 HID Report 2 (HWC to PC)...........................................................................................462.2.2.1 Analog Controls.......................................................................................................46

2.2.2.1.1 Device Class.......................................................................................................462.2.2.1.2 Selector................................................................................................................462.2.2.1.3 Message Index..................................................................................................462.2.2.1.4 Analog Value.....................................................................................................462.2.2.1.5 Analog Format..................................................................................................472.2.2.1.6 Calibration Data...............................................................................................482.2.2.1.7 Special Bit...........................................................................................................502.2.2.1.8 Reserved.............................................................................................................54

2.2.2.2 Digital Controls.......................................................................................................552.2.2.2.1 Device Class.......................................................................................................552.2.2.2.2 Selector................................................................................................................552.2.2.2.3 Message Index..................................................................................................552.2.2.2.4 Digital Value......................................................................................................552.2.2.2.5 Reserved.............................................................................................................562.2.2.2.6 Modifiers.............................................................................................................562.2.2.2.7 Row.......................................................................................................................562.2.2.2.8 Column................................................................................................................562.2.2.2.9 Cluster..................................................................................................................562.2.2.2.10 Reserved..........................................................................................................56

2.2.2.3 Digital Encoders......................................................................................................572.2.2.3.1 Device Class.......................................................................................................572.2.2.3.2 Selector................................................................................................................572.2.2.3.3 Message Index..................................................................................................572.2.2.3.4 Step....................................................................................................................... 572.2.2.3.5 Modifiers.............................................................................................................572.2.2.3.6 Row.......................................................................................................................582.2.2.3.7 Column................................................................................................................58

Page 3: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

2.2.2.3.8 Cluster..................................................................................................................582.2.2.3.9 Reserved.............................................................................................................58

2.2.2.4 Analog Senders........................................................................................................592.2.2.4.1 Device Class.......................................................................................................592.2.2.4.2 Selector................................................................................................................592.2.2.4.3 Message Index..................................................................................................592.2.2.4.4 Analog Value.....................................................................................................592.2.2.4.5 Analog Format..................................................................................................602.2.2.4.6 Reserved.............................................................................................................60

2.2.2.5 Digital Senders........................................................................................................612.2.2.5.1 Device Class.......................................................................................................612.2.2.5.2 Selector................................................................................................................612.2.2.5.3 Message Index..................................................................................................612.2.2.5.4 Digital Value......................................................................................................612.2.2.5.5 Reserved.............................................................................................................61

2.2.2.6 Alphanumeric Inputs............................................................................................622.2.2.6.1 Device Class.......................................................................................................622.2.2.6.2 General Selector..............................................................................................622.2.2.6.3 Message Index..................................................................................................622.2.2.6.4 Reserved/Panel Selector.............................................................................622.2.2.6.5 Format.................................................................................................................62

2.2.3 HID Report 3 (PC to HWC)...........................................................................................662.2.3.1 Annunciators............................................................................................................66

2.2.3.1.1 Device Class.......................................................................................................662.2.3.1.2 Selector................................................................................................................662.2.3.1.3 Message Index..................................................................................................662.2.3.1.4 Digital Value......................................................................................................662.2.3.1.5 Reserved.............................................................................................................66

2.2.3.2 Indicators...................................................................................................................672.2.3.2.1 Device Class.......................................................................................................672.2.3.2.2 Selector................................................................................................................672.2.3.2.3 Message Index..................................................................................................672.2.3.2.4 Digital Value......................................................................................................672.2.3.2.5 Reserved.............................................................................................................67

2.2.3.3 Illuminators & Mode Control............................................................................682.2.3.3.1 Device Class.......................................................................................................682.2.3.3.2 Selector................................................................................................................682.2.3.3.3 Message Index..................................................................................................682.2.3.3.4 Digital Value......................................................................................................682.2.3.3.5 Reserved.............................................................................................................69

2.2.3.4 Actuators....................................................................................................................702.2.3.4.1 Device Class.......................................................................................................702.2.3.4.2 Selector................................................................................................................702.2.3.4.3 Message Index..................................................................................................702.2.3.4.4 Value.....................................................................................................................702.2.3.4.5 Reserved.............................................................................................................70

Page 4: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

2.2.3.5 Analog Displays.......................................................................................................712.2.3.5.1 Device Class.......................................................................................................712.2.3.5.2 Selector................................................................................................................712.2.3.5.3 Message Index..................................................................................................712.2.3.5.4 Analog Value.....................................................................................................712.2.3.5.5 Reserved.............................................................................................................71

2.2.3.6 Digital Displays.......................................................................................................722.2.3.6.1 Device Class.......................................................................................................722.2.3.6.2 Selector................................................................................................................722.2.3.6.3 Message Index..................................................................................................722.2.3.6.4 Decimal Point, Sign, Half-digit...................................................................722.2.3.6.5 Packed Binary-coded Digits.......................................................................73

2.2.4 Bi-directional Classes.....................................................................................................742.2.4.1 Circuit Breakers......................................................................................................74

2.2.4.1.1 Device Class.......................................................................................................742.2.4.1.2 Selector................................................................................................................742.2.4.1.3 Message Index..................................................................................................742.2.4.1.4 Value (command)...........................................................................................752.2.4.1.5 Value (response).............................................................................................752.2.4.1.6 Modifiers.............................................................................................................752.2.4.1.7 Row.......................................................................................................................752.2.4.1.8 Column................................................................................................................752.2.4.1.9 Cluster..................................................................................................................762.2.4.1.10 Reserved..........................................................................................................76

2.2.4.2 Calibration.................................................................................................................772.2.4.2.1 Device Class.......................................................................................................772.2.4.2.2 Selector................................................................................................................772.2.4.2.3 Message Index..................................................................................................772.2.4.2.4 Calibration Messages....................................................................................77

2.2.4.3 Metadata Messages...............................................................................................782.2.4.3.1 Device Class.......................................................................................................782.2.4.3.2 Message Index..................................................................................................782.2.4.3.3 Metadata Messages........................................................................................78

3 Messages.............................................................................................................................................793.1 Analog Controls.....................................................................................................................79

3.1.1 Messages..............................................................................................................................803.1.1.1 CONTROLS_NONE (0)..........................................................................................803.1.1.2 CONTROLS_ELEVATOR_TRIM (1)..................................................................803.1.1.3 CONTROLS_AILERON_TRIM (2)......................................................................81

3.1.1.3.1 Bit 5=0, Default Curve...................................................................................823.1.1.3.2 Raw Data.............................................................................................................823.1.1.3.3 Exponential Curve..........................................................................................823.1.1.3.4 Limits...................................................................................................................833.1.1.3.5 Limits+Center...................................................................................................833.1.1.3.6 Limits+Null........................................................................................................83

3.1.1.4 CONTROLS_RUDDER_TRIM (3).......................................................................83

Page 5: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.1.1.4.1 Bit 5=0, Default Curve...................................................................................843.1.1.4.2 Raw Data.............................................................................................................853.1.1.4.3 Exponential Curve..........................................................................................853.1.1.4.4 Limits...................................................................................................................853.1.1.4.5 Limits+Center...................................................................................................853.1.1.4.6 Limits+Null........................................................................................................85

3.1.1.5 CONTROLS_AP_PITCH_TRIM (4).....................................................................863.1.1.6 CONTROLS_AP_ROLL_TRIM (5).......................................................................863.1.1.7 CONTROLS_COWL_FLAPS (6)...........................................................................863.1.1.8 CONTROLS_FLAPS (7)..........................................................................................863.1.1.9 CONTROLS_CABIN_ALT (8)...............................................................................873.1.1.10 CONTROLS_THROTTLE_QUADRANT (9)................................................873.1.1.11 CONTROLS_AUTOPILOT_TURN (10)........................................................883.1.1.12 CONTROLS_RUDDER (11).............................................................................893.1.1.13 CONTROLS_TOE_BRAKES (12)...................................................................893.1.1.14 CONTROLS_THROTTLES (13).....................................................................903.1.1.15 CONTROLS_TURBO_THROTTLES (14)....................................................903.1.1.16 CONTROLS_PROP_PITCH (15)....................................................................903.1.1.17 CONTROLS_MIX (16).......................................................................................913.1.1.18 CONTROLS_AILERONS (17).........................................................................913.1.1.19 CONTROLS_ELEVATORS (18)......................................................................923.1.1.20 CONTROLS_TILLER (19)................................................................................923.1.1.21 CONTROLS_BACKLIGHT (20)......................................................................92

3.1.1.21.1 Value..................................................................................................................923.1.1.21.2 Selector.............................................................................................................93

3.1.1.22 CONTROLS_CABIN_CLIMB_RATE (21)....................................................943.1.1.23 CONTROLS_THROTTLE_W_FUEL_CUTOFF (22).................................943.1.1.24 CONTROLS_COLLECTIVE (23)....................................................................943.1.1.25 CONTROLS_ROTOR_BRAKE (24)...............................................................943.1.1.26 CONTROLS_CARB_HEAT (25)......................................................................953.1.1.27 CONTROLS_COUNT..........................................................................................95

3.2 Digital Controls......................................................................................................................963.2.1 Messages..............................................................................................................................98

3.2.1.1 SWITCH_NONE (0)................................................................................................983.2.1.2 SWITCH_PROP_SYNC (1)....................................................................................983.2.1.3 SWITCH_AVIONICS_MASTER (2)....................................................................983.2.1.4 SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED (3)............................983.2.1.5 SWITCH_LANDING_GEAR (4)...........................................................................993.2.1.6 SWITCH_NAV (5).................................................................................................1003.2.1.7 SWITCH_STROBE (6).........................................................................................1003.2.1.8 SWITCH_BEACON (7)........................................................................................1003.2.1.9 EVENT_MOTOR_STOPPED_UNEXPECTEDLY (8)..................................1003.2.1.10 BUTTON_SIM_PAUSE (9)............................................................................1003.2.1.11 SWITCH_ENGINE_MASTER (10)..............................................................1013.2.1.12 SWITCH_FLAPS (11).....................................................................................1013.2.1.13 SWITCH_PARKING_BRAKE (12)..............................................................101

Page 6: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.14 SWITCH_ALT_AIR (13).................................................................................1023.2.1.15 SWITCH_PITOT_HEAT (14).......................................................................1023.2.1.16 SWITCH_ANTI_ICE (15)...............................................................................1023.2.1.17 SWITCH_PROP_DEICE (16)........................................................................1033.2.1.18 SWITCH_FUEL_CROSS (17)........................................................................1033.2.1.19 SWITCH_LANDING_LIGHT (18)...............................................................1033.2.1.20 SWITCH_TAXI_LIGHT (19).........................................................................1033.2.1.21 SWITCH_BATTERY_MASTER_BUS_TIE (20).......................................1043.2.1.22 BUTTON_STARTER_DISENGAGE (21)..................................................1043.2.1.23 SWITCH_IGNITION (22)..............................................................................1043.2.1.24 SWITCH_WING_DEICE (23).......................................................................1053.2.1.25 SWITCH_WINDOW_DEICE (24)...............................................................1053.2.1.26 SWITCH_PITCH_TRIM (25)........................................................................1053.2.1.27 BUTTON_AP_DISCONNECT (26)..............................................................1073.2.1.28 BUTTON_CWS (27)........................................................................................1073.2.1.29 SWITCH_INVERTER (28)............................................................................1073.2.1.30 SWITCH_AUTO_FEATHER (29)................................................................1073.2.1.31 BUTTON_STANDARD_DAY (30)...............................................................1083.2.1.32 BUTTON_PUSH_TO_TALK (31).................................................................1083.2.1.33 SWITCH_EMERGENCY_GEAR_EXTEND (32)......................................1083.2.1.34 BUTTON_HSI_SELECT_ROSE_ARC (33)................................................1083.2.1.35 SWITCH_FUEL_BOOST (34).......................................................................1093.2.1.36 SWITCH_COWL_FLAPS (35)......................................................................1093.2.1.37 SWITCH_FUEL_SELECT (36).....................................................................1103.2.1.38 SWITCH_AUX_FUEL_BOOST (37)............................................................1103.2.1.39 SWITCH_CESSNA_1X2_AVI_1 (38)..........................................................1113.2.1.40 SWITCH_CESSNA_1X2_AVI_2 (39)..........................................................1113.2.1.41 SWITCH_BATTERY_MASTER (40)..........................................................1113.2.1.42 SWITCH_ALTERNATOR (41).....................................................................1123.2.1.43 BUTTON_ENGINE_START (42).................................................................1123.2.1.44 SWITCH_MAGNETO (43)............................................................................1123.2.1.45 SWITCH_ENGINE_DEICE (44)...................................................................1123.2.1.46 SWITCH_AUTO_IGNITION (45)................................................................1133.2.1.47 SWITCH_ICE_VANE (46)..............................................................................1133.2.1.48 SWITCH_AP_ON (47).....................................................................................1133.2.1.49 BUTTON_AP_ALTITUDE (48)....................................................................1143.2.1.50 BUTTON_AP_ALT_SELECT (49)...............................................................1143.2.1.51 BUTTON_AP_APR (50).................................................................................1143.2.1.52 BUTTON_AP_BANK_LIMIT (51)...............................................................1143.2.1.53 BUTTON_AP_BC (52)....................................................................................1153.2.1.54 BUTTON_AP_HDG (53)................................................................................1153.2.1.55 BUTTON_AP_IAS (54)...................................................................................1153.2.1.56 SWITCH_AP_NAV_SOURCE_SELECT (55)............................................1153.2.1.57 BUTTON_AP_NAV (56).................................................................................1163.2.1.58 BUTTON_AP_ENGAGE (57)........................................................................1163.2.1.59 BUTTON_AP_SOFT_RIDE (58)..................................................................116

Page 7: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.60 SWITCH_AP_TRIM (59)................................................................................1173.2.1.61 BUTTON_AP_VORAPR (60)........................................................................1173.2.1.62 BUTTON_AP_VS (61).....................................................................................1173.2.1.63 BUTTON_AP_YAW_DAMPER (62)...........................................................1183.2.1.64 BUTTON_AP_FD (63)....................................................................................1183.2.1.65 BUTTON_AP_TEST (64)...............................................................................1183.2.1.66 BUTTON_AP_AUTO_THROTTLE (65)....................................................1183.2.1.67 BUTTON_AP_SBY (66)..................................................................................1193.2.1.68 SWITCH_AUTO_BRAKE (67)......................................................................1193.2.1.69 BUTTON_AUTO_BRAKE_ENG (68)..........................................................1193.2.1.70 BUTTON_AUTO_BRAKE_SYS (69)...........................................................1193.2.1.71 SWITCH_EICAS (70)......................................................................................1193.2.1.72 BUTTON_GO_AROUND (71).......................................................................1203.2.1.73 SWITCH_ENGINE_ANTI_ICE (72)............................................................1203.2.1.74 SWITCH_WING_ANTI_ICE (73).................................................................1203.2.1.75 SWITCH_WING_ANTI_ICE_TEST (74)....................................................1203.2.1.76 SWITCH_STALL_WARNING_ANTI_ICE (75)........................................1203.2.1.77 SWITCH_CARB_HEATER (76)...................................................................1203.2.1.78 BUTTON_COM1_ON (77).............................................................................1213.2.1.79 BUTTON_COM1_ACTIVE_STANDBY (78).............................................1213.2.1.80 BUTTON_COM1_SPEAKER (79)...............................................................1213.2.1.81 BUTTON_COM2_ON (80).............................................................................1213.2.1.82 BUTTON_COM2_ACTIVE_STANDBY (81).............................................1213.2.1.83 BUTTON_COM2_SPEAKER (82)...............................................................1223.2.1.84 BUTTON_NAV1_RADIAL (83)...................................................................1223.2.1.85 BUTTON_NAV1_ACTIVE_STANDBY (84).............................................1223.2.1.86 BUTTON_NAV1_IDENT (85)......................................................................1223.2.1.87 BUTTON_NAV2_RADIAL (86)...................................................................1223.2.1.88 BUTTON_NAV2_ACTIVE_STANDBY (87).............................................1223.2.1.89 BUTTON_NAV2_IDENT (88)......................................................................1233.2.1.90 SWITCH_DME_MODE1 (89).......................................................................1233.2.1.91 SWITCH_DME_MODE2 (90).......................................................................1233.2.1.92 BUTTON_MAST_WARN (91)......................................................................1233.2.1.93 SWITCH_DME_RMI (92)..............................................................................1243.2.1.94 BUTTON_ADF_ADF (93)..............................................................................1243.2.1.95 BUTTON_ADF_ACTIVE_STANDBY (94)................................................1243.2.1.96 BUTTON_ADF_IDENT (95).........................................................................1243.2.1.97 BUTTON_ADF_ANTENNA_MODE (96)..................................................1243.2.1.98 BUTTON_ADF_BFO (97)..............................................................................1253.2.1.99 BUTTON_ADF_FLT (98)...............................................................................1253.2.1.100 BUTTON_ADF_SET (99)...............................................................................1253.2.1.101 SWITCH_TRANSPONDER_MODE (100)................................................1253.2.1.102 BUTTON_TRANSPONDER_IDENT (101)..............................................1253.2.1.103 BUTTON_GPS_ON (102)..............................................................................1263.2.1.104 BUTTON_GPS_NAV_GPS (103)..................................................................1263.2.1.105 BUTTON_GPS_NAV (104)............................................................................126

Page 8: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.106 BUTTON_GPS_WPT (105)...........................................................................1263.2.1.107 BUTTON_GPS_FPL (106).............................................................................1263.2.1.108 BUTTON_GPS_CALC (107)..........................................................................1273.2.1.109 BUTTON_GPS_AUX (108)............................................................................1273.2.1.110 BUTTON_GPS_DIR_TO (109).....................................................................1273.2.1.111 BUTTON_GPS_MSG (110)............................................................................1273.2.1.112 BUTTON_GPS_ENT (111)............................................................................1273.2.1.113 BUTTON_GPS_APT_VOR (112).................................................................1273.2.1.114 BUTTON_ALT_PRESELECT_ENG (113).................................................1283.2.1.115 BUTTON_ALT_PRESELECT_ARM (114)................................................1283.2.1.116 SWITCH_ALT_PRESELECT_ALT_VS (115)...........................................1283.2.1.117 BUTTON_PITCH_TRIM_UP (116).............................................................1283.2.1.118 BUTTON_PITCH_TRIM_DN (117)............................................................1303.2.1.119 SWITCH_ANTI_COLLISION (118)............................................................1313.2.1.120 SWITCH_STANDBY_BATTERY (119).....................................................1313.2.1.121 BUTTON_BELOW_GS_P_INHIBIT (120)................................................1313.2.1.122 BUTTON_AP_PRST (121)............................................................................1323.2.1.123 BUTTON_AT_PRST (122)............................................................................1323.2.1.124 BUTTON_FMC_PRST (123).........................................................................1323.2.1.125 SWITCH_N1_SET_SELECT (124)..............................................................1323.2.1.126 SWITCH_SPEED_REF_SELECT (125).....................................................1333.2.1.127 SWITCH_ANN_TEST (126).........................................................................1333.2.1.128 SWITCH_MAIN_PANEL_DISPLAY_UNITS (127)................................1333.2.1.129 SWITCH_LOWER_PANEL_DISPLAY_UNITS (128)............................1343.2.1.130 SWITCH_FUEL_CUTOFF (129)..................................................................1343.2.1.131 BUTTON_STAB_OUT_OF_TRIM (130)....................................................1343.2.1.132 SWITCH_ARTEX_ELT (131).......................................................................1343.2.1.133 SWITCH_DME_SELECTOR (132)..............................................................1353.2.1.134 SWITCH_TWO_LANDING_LIGHTS (133)..............................................1353.2.1.135 SWITCH_TURN_IND (134)..........................................................................1353.2.1.136 SWITCH_AUX_POWER (135).....................................................................1353.2.1.137 SWITCH_IGNITION_LIGHT (136)............................................................1363.2.1.138 BUTTON_LANDING_GEAR_HORN_CUTOUT (137)..........................1363.2.1.139 SWITCH_FUEL_FLOW (138)......................................................................1363.2.1.140 BUTTON_GPWS_SYSTEM_TEST (139)..................................................1363.2.1.141 SWITCH_FLAP_INHIBIT (140)..................................................................1363.2.1.142 SWITCH_GEAR_INHIBIT (141).................................................................1373.2.1.143 SWITCH_GENERATOR (142).....................................................................1373.2.1.144 BUTTON_GOVERNOR_RPM_UP (143)...................................................1373.2.1.145 BUTTON_GOVERNOR_RPM_DN (144)..................................................1373.2.1.146 SWITCH_RECIRC_FAN (145).....................................................................1383.2.1.147 SWITCH_CABIN_POWER (146)................................................................1383.2.1.148 SWITCH_HYDRAULIC_SYSTEM (147)...................................................1383.2.1.149 SWITCH_ENGINE_BLEED_AIR (148).....................................................1383.2.1.150 SWITCH_HYDRAULIC_BOOST (149)......................................................1393.2.1.151 SWITCH_GOV_CONT (150).........................................................................139

Page 9: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.152 SWITCH_DG_AND_ATT_IND (151)..........................................................1393.2.1.153 BUTTON_ENG_FIRE_LEFT (152).............................................................1393.2.1.154 BUTTON_ENG_FIRE_RIGHT (153)..........................................................1403.2.1.155 SWITCH_CRS_NAV_SOURCE_SELECTOR (154).................................1403.2.1.156 BUTTON_CRS_NAV_SOURCE_CYCLE (155).........................................1403.2.1.157 BUTTON_RMI_1 (156)..................................................................................1413.2.1.158 BUTTON_RMI_2 (157)..................................................................................1423.2.1.159 BUTTON_BOTTLE_ARMED_LEFT (158)...............................................1433.2.1.160 BUTTON_BOTTLE_ARMED_RIGHT (159)............................................1433.2.1.161 BUTTON_TOT_LT_TEST (160)..................................................................1433.2.1.162 SWITCH_CABIN_AC (161)...........................................................................1443.2.1.163 SWITCH_CABIN_AC_BLOWER (162)......................................................1443.2.1.164 SWITCH_CABIN_HEATER (163)..............................................................1443.2.1.165 SWITCH_CABIN_HEAT (164)....................................................................1443.2.1.166 SWITCH_CABIN_OUTFLOW_VALVE (165)..........................................1453.2.1.167 BUTTON_AT_DISC (166).............................................................................1453.2.1.168 SWITCH_STALL_WARNING_TEST (167)..............................................1453.2.1.169 BUTTON_PROP_GOVERNOR_TEST (168)............................................1453.2.1.170 BUTTON_SIM_RESET (169).......................................................................1453.2.1.171 SWITCH_DEFROST (170)............................................................................1463.2.1.172 BUTTON_SIM_FREEZE (171)....................................................................1463.2.1.173 SWITCH_PILOT_AIR (172).........................................................................1463.2.1.174 SWITCH_FLOOD_LIGHTS (173)...............................................................1463.2.1.175 SWITCH_PANEL_LIGHTS (174)................................................................1473.2.1.176 SWITCH_TANK_SELECT (175).................................................................1473.2.1.177 BUTTON_AUD_MKR_MUTE (176)...........................................................1473.2.1.178 BUTTON_AUD_COM1 (177).......................................................................1483.2.1.179 BUTTON_AUD_COM2 (178).......................................................................1483.2.1.180 BUTTON_AUD_NAV1 (179)........................................................................1483.2.1.181 BUTTON_AUD_NAV2 (180)........................................................................1483.2.1.182 BUTTON_AUD_DME (181)..........................................................................1483.2.1.183 BUTTON_AUD_ADF (182)...........................................................................1483.2.1.184 BUTTON_AUD_TEST (183).........................................................................1493.2.1.185 BUTTON_AUD_SENS (184).........................................................................1493.2.1.186 BUTTON_AUD_COM1_MIC (185).............................................................1493.2.1.187 BUTTON_AUD_COM2_MIC (186).............................................................1493.2.1.188 BUTTON_AUD_COM1_COM2_SPLIT (187)..........................................1493.2.1.189 BUTTON_AUD_SPKR (188)........................................................................1503.2.1.190 BUTTON_AUD_PILOT (189).......................................................................1503.2.1.191 BUTTON_AUD_COPILOT (190).................................................................1503.2.1.192 BUTTON_AUD_TEST_ALL (191)...............................................................1503.2.1.193 BUTTON_GROUP_AUD_START.................................................................1513.2.1.194 BUTTON_GROUP_AUD_END......................................................................1513.2.1.195 SWITCH_ELEVATOR_TRIM_ONOFF (192)..........................................1513.2.1.196 BUTTON_MAST_CAUT (193).....................................................................1513.2.1.197 BUTTON_ELEVATOR_TRIM_DISCONNECT (194)............................151

Page 10: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.198 SWITCH_RUDDER_BOOST (195).............................................................1523.2.1.199 SWITCH_CABIN_PRESSURE_DUMP (196)...........................................1523.2.1.200 SWITCH_FLAPS_3WAY_KINGAIR (197)...............................................1523.2.1.201 SWITCH_ICE_LIGHTS (198).......................................................................1533.2.1.202 SWITCH_ENGINE_IGNITION_AND_START (199).............................1533.2.1.203 SWITCH_ENGINE_FIRE_WARN_TEST (200).......................................1533.2.1.204 SWITCH_FIREWALL_SHUTOFF (201)...................................................1543.2.1.205 SWITCH_VOLT_METER_BUS_SELECTOR (202)................................1543.2.1.206 SWITCH_RMI_1 (203)...................................................................................1543.2.1.207 SWITCH_RMI_2 (204)...................................................................................1553.2.1.208 SWITCH_MOMENTARY_FUEL_QTY (205)...........................................1563.2.1.209 BUTTON_430_530_PUSH_SQUELCH (206).........................................1563.2.1.210 BUTTON_430_530_PUSH_IDENT (207)................................................1573.2.1.211 BUTTON_430_530_PUSH_CV (208)........................................................1573.2.1.212 BUTTON_430_530_PUSH_CURSOR (209)............................................1573.2.1.213 BUTTON_430_530_COM_FLIP (210)......................................................1573.2.1.214 BUTTON_430_530_NAV_FLIP (211)......................................................1573.2.1.215 BUTTON_430_530_RANGE_UP (212)....................................................1583.2.1.216 BUTTON_430_530_RANGE_DN (213)...................................................1583.2.1.217 BUTTON_430_530_DIRECT_TO (214)...................................................1583.2.1.218 BUTTON_430_530_MENU (215)..............................................................1583.2.1.219 BUTTON_430_530_CLEAR (216).............................................................1583.2.1.220 BUTTON_430_530_ENTER (217)............................................................1593.2.1.221 BUTTON_430_530_CDI (218)....................................................................1593.2.1.222 BUTTON_430_530_OBS (219)..................................................................1593.2.1.223 BUTTON_430_530_MESSAGE (220).......................................................1593.2.1.224 BUTTON_430_530_FLIGHT_PLAN (221).............................................1603.2.1.225 BUTTON_430_530_PROCEDURES (222)..............................................1603.2.1.226 BUTTON_530_VERTICAL_NAV (223)....................................................1603.2.1.227 BUTTON_GROUP_430_530_START.........................................................1603.2.1.228 BUTTON_GROUP_430_530_END..............................................................1603.2.1.229 STATUS_ELECTRIC_TRIM_AVAILABLE (224)...................................1613.2.1.230 STATUS_430_ALT_PRESELECT_AVAILABLE (225).........................1613.2.1.231 BUTTON_ECU_TEST (226).........................................................................1613.2.1.232 SWITCH_ECU_SWAP (227).........................................................................1613.2.1.233 BUTTON_GEAR_HORN_TEST (228).......................................................1613.2.1.234 BUTTON_G1000_AP_ENG (229)...............................................................1623.2.1.235 BUTTON_G1000_YD (230).........................................................................1623.2.1.236 BUTTON_G1000_FD (231).........................................................................1633.2.1.237 BUTTON_G1000_HDG (232)......................................................................1633.2.1.238 BUTTON_G1000_NAV (233)......................................................................1643.2.1.239 BUTTON_G1000_APR (234)......................................................................1643.2.1.240 BUTTON_G1000_VS (235)..........................................................................1653.2.1.241 BUTTON_G1000_FLC (236).......................................................................1653.2.1.242 BUTTON_G1000_TRIM (237)....................................................................1663.2.1.243 BUTTON_G1000_ALT (238).......................................................................167

Page 11: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.244 BUTTON_G1000_VNAV (239)...................................................................1673.2.1.245 BUTTON_G1000_BC (240)..........................................................................1683.2.1.246 BUTTON_G1000_DIRECT_TO (241).......................................................1683.2.1.247 BUTTON_G1000_MENU (242)..................................................................1693.2.1.248 BUTTON_G1000_FPL (243).......................................................................1693.2.1.249 BUTTON_G1000_PROC (244)....................................................................1693.2.1.250 BUTTON_G1000_CLR (245).......................................................................1703.2.1.251 BUTTON_G1000_ENT (246)......................................................................1703.2.1.252 BUTTON_G1000_SOFT_KEY_1 (247).....................................................1703.2.1.253 BUTTON_G1000_SOFT_KEY_2 (248).....................................................1703.2.1.254 BUTTON_G1000_SOFT_KEY_3 (249).....................................................1713.2.1.255 BUTTON_G1000_SOFT_KEY_4 (250).....................................................1713.2.1.256 BUTTON_G1000_SOFT_KEY_5 (251).....................................................1713.2.1.257 BUTTON_G1000_SOFT_KEY_6 (252).....................................................1723.2.1.258 BUTTON_G1000_SOFT_KEY_7 (253).....................................................1723.2.1.259 BUTTON_G1000_SOFT_KEY_8 (254).....................................................1723.2.1.260 BUTTON_G1000_SOFT_KEY_9 (255).....................................................1723.2.1.261 BUTTON_G1000_SOFT_KEY_10 (256)..................................................1733.2.1.262 BUTTON_G1000_SOFT_KEY_11 (257)..................................................1733.2.1.263 BUTTON_G1000_SOFT_KEY_12 (258)..................................................1733.2.1.264 BUTTON_G1000_PUSH_ID (259).............................................................1743.2.1.265 BUTTON_G1000_NAV_1_2 (260).............................................................1743.2.1.266 BUTTON_G1000_NAV_FLIP (261)...........................................................1743.2.1.267 BUTTON_G1000_HDG_SYNC (262).........................................................1743.2.1.268 BUTTON_G1000_ALT_PB (263)...............................................................1753.2.1.269 BUTTON_G1000_COM_FLIP (264)..........................................................1753.2.1.270 BUTTON_G1000_SQUELCH (265)...........................................................1753.2.1.271 BUTTON_G1000_COM_1_2 (266)............................................................1753.2.1.272 BUTTON_G1000_JOY_UP (267)................................................................1763.2.1.273 BUTTON_G1000_JOY_DOWN (268)........................................................1763.2.1.274 BUTTON_G1000_JOY_LEFT (269)...........................................................1763.2.1.275 BUTTON_G1000_JOY_RIGHT (270)........................................................1773.2.1.276 BUTTON_G1000_JOY_UP_LEFT (271)...................................................1773.2.1.277 BUTTON_G1000_JOY_UP_RIGHT (272)................................................1773.2.1.278 BUTTON_G1000_JOY_DOWN_LEFT (273)...........................................1783.2.1.279 BUTTON_G1000_JOY_DOWN_RIGHT (274)........................................1783.2.1.280 BUTTON_G1000_JOY_PUSH_BUTTON (275)......................................1783.2.1.281 BUTTON_G1000_CRS_CTR_CDI (276)...................................................1793.2.1.282 BUTTON_G1000_CRSR (277)....................................................................1793.2.1.283 SWITCH_G1000_DISPLAY_BACKUP (278)..........................................1793.2.1.284 BUTTON_G1000_TRIM_UP (279)............................................................1793.2.1.285 BUTTON_G1000_TRIM_DN (280)...........................................................1803.2.1.286 BUTTON_G1000_DISPLAY_BACKUP (281).........................................1813.2.1.287 BUTTON_G1000_RESERVED_4 (282)....................................................1813.2.1.288 BUTTON_G1000_RESERVED_5 (283)....................................................1813.2.1.289 BUTTON_G1000_RESERVED_6 (284)....................................................181

Page 12: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.290 BUTTON_GROUP_G1000_START.............................................................1823.2.1.291 BUTTON_GROUP_G1000_END..................................................................1823.2.1.292 BUTTON_HDG_SYNC (285)........................................................................1823.2.1.293 BUTTON_AUD_PLAY (286)........................................................................1823.2.1.294 BUTTON_AUD_AUX (287)...........................................................................1823.2.1.295 BUTTON_AUD_MAN_SQ (288)..................................................................1833.2.1.296 BUTTON_AUD_VOL_SQ_TOGGLE (289)................................................1833.2.1.297 BUTTON_AUD_COM3_MIC (290).............................................................1833.2.1.298 BUTTON_AUD_COM3 (291).......................................................................1833.2.1.299 BUTTON_AUD_TEL (292)...........................................................................1843.2.1.300 BUTTON_AUD_PA (293)..............................................................................1843.2.1.301 BUTTON_AUD_RESERVED_1 (294)........................................................1843.2.1.302 BUTTON_AUD_RESERVED_2 (295)........................................................1843.2.1.303 BUTTON_AUD_RESERVED_3 (296)........................................................1843.2.1.304 BUTTON_AUD_RESERVED_4 (297)........................................................1843.2.1.305 BUTTON_AUD_RESERVED_5 (298)........................................................1843.2.1.306 BUTTON_GROUP_AUD2_START...............................................................1843.2.1.307 BUTTON_GROUP_AUD2_END....................................................................1853.2.1.308 BUTTON_G500_HDG (299)........................................................................1853.2.1.309 BUTTON_G500_CRS (300)..........................................................................1853.2.1.310 SWITCH_G500_ALT (301)..........................................................................1853.2.1.311 BUTTON_G500_VS (302).............................................................................1863.2.1.312 BUTTON_G500_BARO (303)......................................................................1863.2.1.313 BUTTON_G500_PFD_PB (304)..................................................................1863.2.1.314 BUTTON_G500_UP (305)............................................................................1873.2.1.315 BUTTON_G500_DN (306)...........................................................................1873.2.1.316 BUTTON_G500_MENU (307).....................................................................1873.2.1.317 BUTTON_G500_CLR (308)..........................................................................1873.2.1.318 BUTTON_G500_ENT (309).........................................................................1883.2.1.319 BUTTON_G500_MFD_PB (310).................................................................1883.2.1.320 BUTTON_G500_SOFT_KEY_1 (311)........................................................1883.2.1.321 BUTTON_G500_SOFT_KEY_2 (312)........................................................1883.2.1.322 BUTTON_G500_SOFT_KEY_3 (313)........................................................1893.2.1.323 BUTTON_G500_SOFT_KEY_4 (314)........................................................1893.2.1.324 BUTTON_G500_SOFT_KEY_5 (315)........................................................1893.2.1.325 BUTTON_G500_SOFT_KEY_6 (316)........................................................1893.2.1.326 BUTTON_G500_SOFT_KEY_7 (317)........................................................1903.2.1.327 BUTTON_G500_SOFT_KEY_8 (318)........................................................1903.2.1.328 BUTTON_G500_SOFT_KEY_9 (319)........................................................1903.2.1.329 BUTTON_G500_SOFT_KEY_10 (320).....................................................1903.2.1.330 BUTTON_G500_RESERVED_1 (321)......................................................1913.2.1.331 BUTTON_G500_RESERVED_2 (322)......................................................1913.2.1.332 BUTTON_G500_RESERVED_3 (323)......................................................1913.2.1.333 BUTTON_GROUP_G500_START................................................................1913.2.1.334 BUTTON_GROUP_G500_END.....................................................................1913.2.1.335 SWITCH_ROTOR_BRAKE (324)................................................................191

Page 13: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.336 SWITCH_AVI_BUS_TIE (325).....................................................................1913.2.1.337 SWITCH_AVI_STBY_PWR (326)...............................................................1923.2.1.338 SWITCH_EXTERNAL_POWER (327)......................................................1923.2.1.339 SWITCH_GND_AIR (328).............................................................................1933.2.1.340 SWITCH_UNFEATHER (329).....................................................................1933.2.1.341 SWITCH_STBY_ALT_PWR (330)..............................................................1933.2.1.342 SWITCH_GENERATOR_START (331).....................................................1943.2.1.343 SWITCH_FUEL_VALVE (332)....................................................................1943.2.1.344 SWITCH_STARTER_MODE (333).............................................................1943.2.1.345 SWITCH_STARTER (334)............................................................................1953.2.1.346 STATUS_CARAVAN_MASTER_AVAIL (335)........................................1953.2.1.347 SWITCH_CABIN_LIGHTS (336).................................................................1963.2.1.348 SWITCH_AUX_BUS (337).............................................................................1963.2.1.349 SWITCH_OXYGEN (338)..............................................................................1963.2.1.350 SWITCH_FRESH_AIR (339)........................................................................1973.2.1.351 SWITCH_AILERON_TRIM (340)...............................................................1973.2.1.352 SWITCH_RUDDER_TRIM (341)................................................................1973.2.1.353 SWITCH_S_TEC_AP_ON (342)...................................................................1973.2.1.354 BUTTON_S_TEC_AP_HDG (343)...............................................................1973.2.1.355 BUTTON_S_TEC_AP_NAV (344)...............................................................1983.2.1.356 BUTTON_S_TEC_AP_APR (345)................................................................1983.2.1.357 BUTTON_S_TEC_AP_REV (346)................................................................1983.2.1.358 BUTTON_S_TEC_AP_ALT (347)................................................................1983.2.1.359 BUTTON_S_TEC_AP_VS (348)...................................................................1983.2.1.360 BUTTON_GMC7XX_HDG (349)..................................................................1993.2.1.361 BUTTON_GMC7XX_APR (350)..................................................................1993.2.1.362 BUTTON_GMC7XX_NAV (351)..................................................................1993.2.1.363 BUTTON_GMC7XX_BC (352).....................................................................1993.2.1.364 BUTTON_GMC7XX_AP (353).....................................................................1993.2.1.365 BUTTON_GMC7XX_FD (354).....................................................................2003.2.1.366 BUTTON_GMC7XX_ALT (355)...................................................................2003.2.1.367 BUTTON_GMC7XX_VS (356)......................................................................2003.2.1.368 BUTTON_GMC7XX_VNV (357)..................................................................2003.2.1.369 BUTTON_GMC7XX_FLC (358)...................................................................2003.2.1.370 BUTTON_GMC7XX_YD (359).....................................................................2013.2.1.371 BUTTON_GMC7XX_BANK (360)...............................................................2013.2.1.372 BUTTON_GMC7XX_XFR (361)...................................................................2013.2.1.373 BUTTON_GMC7XX_SPD (362)...................................................................2013.2.1.374 BUTTON_GMC7XX_HDG_SYNC (363)....................................................2013.2.1.375 BUTTON_GMC7XX_ALT_SEL_PB (364).................................................2023.2.1.376 BUTTON_GMC7XX_CRS1_DIR (365).......................................................2023.2.1.377 BUTTON_GMC7XX_CRS2_DIR (366).......................................................2023.2.1.378 BUTTON_GMC7XX_LVL (367)...................................................................2023.2.1.379 BUTTON_GMC7XX_IAS (368)....................................................................2023.2.1.380 BUTTON_GMC7XX_ALT (369)...................................................................2033.2.1.381 BUTTON_GCU_ASCII (370).........................................................................203

Page 14: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.382 BUTTON_GCU_DIRECT_TO (371)............................................................2033.2.1.383 BUTTON_GCU_MENU (372).......................................................................2033.2.1.384 BUTTON_GCU_FPL (373)............................................................................2033.2.1.385 BUTTON_GCU_PROC (374).........................................................................2043.2.1.386 BUTTON_GCU_CLR (375)............................................................................2043.2.1.387 BUTTON_GCU_ENT (376)...........................................................................2043.2.1.388 BUTTON_GCU_SOFT_LEFT (377)............................................................2043.2.1.389 BUTTON_GCU_SOFT_RIGHT (378).........................................................2043.2.1.390 BUTTON_GCU_SOFT_SELECT (379).......................................................2053.2.1.391 BUTTON_GCU_JOY_UP (380).....................................................................2053.2.1.392 BUTTON_GCU_JOY_DOWN (381).............................................................2053.2.1.393 BUTTON_GCU_JOY_LEFT (382)................................................................2053.2.1.394 BUTTON_GCU_JOY_RIGHT (383).............................................................2053.2.1.395 BUTTON_GCU_JOY_UP_LEFT (384)........................................................2063.2.1.396 BUTTON_GCU_JOY_UP_RIGHT (385).....................................................2063.2.1.397 BUTTON_GCU_JOY_DOWN_LEFT (386)................................................2063.2.1.398 BUTTON_GCU_JOY_DOWN_RIGHT (387).............................................2063.2.1.399 BUTTON_GCU_JOY_PUSH_BUTTON (388)...........................................2063.2.1.400 BUTTON_GCU_CRSR (389).........................................................................2073.2.1.401 BUTTON_GCU_BKSP (390).........................................................................2073.2.1.402 BUTTON_650_750_HOME (391)..............................................................2073.2.1.403 BUTTON_650_750_DIRECT_TO (392)...................................................2073.2.1.404 SWITCH_COUNT..............................................................................................207

3.3 Encoders................................................................................................................................ 2083.3.1 Messages........................................................................................................................... 209

3.3.1.1 ENCODER_NONE (0)..........................................................................................2093.3.1.2 ENCODER_N1_SET (1).......................................................................................2093.3.1.3 ENCODER_ADF_RA (2)......................................................................................2093.3.1.4 ENCODER_CRS_DG (3)......................................................................................2103.3.1.5 ENCODER_HDG (4).............................................................................................2103.3.1.6 ENCODER_ALT (5)..............................................................................................2103.3.1.7 ENCODER_OBS_1 (6)..........................................................................................2103.3.1.8 ENCODER_OBS_2 (7)..........................................................................................2113.3.1.9 ENCODER_SPEED_REF (8)..............................................................................2113.3.1.10 ENCODER_COM1_COARSE_FREQUENCY (9)......................................2113.3.1.11 ENCODER_COM1_FINE_FREQUENCY (10)..........................................2113.3.1.12 ENCODER_COM2_COARSE_FREQUENCY (11)...................................2113.3.1.13 ENCODER_COM2_FINE_FREQUENCY (12)..........................................2123.3.1.14 ENCODER_NAV1_COARSE_FREQUENCY (13)....................................2123.3.1.15 ENCODER_NAV1_FINE_FREQUENCY (14)..........................................2123.3.1.16 ENCODER_NAV2_COARSE_FREQUENCY (15)....................................2123.3.1.17 ENCODER_NAV2_FINE_FREQUENCY (16)..........................................2123.3.1.18 ENCODER_DME_COARSE_FREQUENCY (17)......................................2133.3.1.19 ENCODER_DME_FINE_FREQUENCY (18)............................................2133.3.1.20 ENCODER_ADF_COARSE_FREQUENCY (19).......................................2133.3.1.21 ENCODER_ADF_FINE_FREQUENCY (20)..............................................213

Page 15: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.3.1.22 ENCODER_TRANSPONDER_DIGIT_1 (21)...........................................2133.3.1.23 ENCODER_TRANSPONDER_DIGIT_2 (22)...........................................2143.3.1.24 ENCODER_TRANSPONDER_DIGIT_3 (23)...........................................2143.3.1.25 ENCODER_TRANSPONDER_DIGIT_4 (24)...........................................2143.3.1.26 ENCODER_GPS_COARSE (25)....................................................................2143.3.1.27 ENCODER_GPS_FINE (26)...........................................................................2143.3.1.28 ENCODER_ALT_PRESELECT_SET_VS (27)..........................................2153.3.1.29 ENCODER_ALT_PRESELECT_SET_ALT (28).......................................2153.3.1.30 ENCODER_CABIN_CLIMB_RATE (29)....................................................2153.3.1.31 ENCODER_430_530_COARSE_FREQUENCY (30).............................2153.3.1.32 ENCODER_430_530_FINE_FREQUENCY (31)....................................2153.3.1.33 ENCODER_430_530_COARSE_SELECT (32)........................................2163.3.1.34 ENCODER_430_530_FINE_SELECT (33)...............................................2163.3.1.35 ENCODER_430_530_COM_VOLUME (34).............................................2163.3.1.36 ENCODER_430_530_VLOC_VOLUME (35)...........................................2163.3.1.37 ENCODER_ALT_PRESELECT_SET_VS_COARSE (36).......................2173.3.1.38 ENCODER_ALT_PRESELECT_SET_ALT_COARSE (37)....................2173.3.1.39 ENCODER_ADF (38)......................................................................................2173.3.1.40 ENCODER_CRS (39).......................................................................................2173.3.1.41 ENCODER_RA (40).........................................................................................2173.3.1.42 ENCODER_DG (41).........................................................................................2183.3.1.43 ENCODER_AIRSPEED (42).........................................................................2183.3.1.44 ENCODER_ATTITUDE_REFERENCE (43).............................................2183.3.1.45 ENCODER_G1000_NAV_COARSE_FREQUENCY (44).......................2183.3.1.46 ENCODER_G1000_NAV_FINE_FREQUENCY (45).............................2193.3.1.47 ENCODER_G1000_NAV_VOLUME (46).................................................2193.3.1.48 ENCODER_G1000_HDG (47)......................................................................2193.3.1.49 ENCODER_G1000_ALT_COARSE (48)....................................................2193.3.1.50 ENCODER_G1000_ALT_FINE (49)...........................................................2203.3.1.51 ENCODER_G1000_COM_COARSE_FREQUENCY (50)......................2203.3.1.52 ENCODER_G1000_COM_FINE_FREQUENCY (51).............................2203.3.1.53 ENCODER_G1000_COM_VOLUME (52).................................................2203.3.1.54 ENCODER_G1000_CRS (53).......................................................................2213.3.1.55 ENCODER_G1000_BARO (54)...................................................................2213.3.1.56 ENCODER_G1000_FMS_COARSE (55)...................................................2213.3.1.57 ENCODER_G1000_FMS_FINE (56)..........................................................2223.3.1.58 ENCODER_G1000_RANGE (57)................................................................2223.3.1.59 ENCODER_AUD_PILOT (58).......................................................................2223.3.1.60 ENCODER_AUD_PASSENGER (59)..........................................................2233.3.1.61 ENCODER_CABIN_ALT (60).......................................................................2233.3.1.62 ENCODER_G500_PFD (61).........................................................................2233.3.1.63 ENCODER_G500_MFD_SM (62)................................................................2233.3.1.64 ENCODER_G500_MFD_LG (63).................................................................2243.3.1.65 ENCODER_S_TEC_VS_FINE (64)...............................................................2243.3.1.66 ENCODER_GMC7XX_TRIM (65)................................................................2243.3.1.67 ENCODER_GMC7XX_ALT_SEL (66).........................................................224

Page 16: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.3.1.68 ENCODER_GMC7XX_CRS1 (67)................................................................2253.3.1.69 ENCODER_GMC7XX_CRS2 (68)................................................................2263.3.1.70 ENCODER_GMC7XX_HDG (69)..................................................................2263.3.1.71 ENCODER_AUD_VOL (70)...........................................................................2263.3.1.72 ENCODER_AUD_CRSR (71)........................................................................2263.3.1.73 ENCODER_GCU_FMS_COARSE (72)........................................................2263.3.1.74 ENCODER_GCU_FMS_FINE (73)...............................................................2273.3.1.75 ENCODER_GCU_RANGE (74).....................................................................2273.3.1.76 ENCODER_GCU_650_750_VOL (75)........................................................2273.3.1.77 ENCODER_GCU_650_750_SM (76)..........................................................2273.3.1.78 ENCODER_GCU_650_750_LG (77)...........................................................2273.3.1.79 ENCODER_COUNT..........................................................................................228

3.4 Analog Senders................................................................................................................... 2293.5 Digital Senders.................................................................................................................... 2303.6 Annunciators........................................................................................................................231

3.6.1 Annunciator Panels......................................................................................................2313.6.1.1 B200 20-Annunciator Panel...........................................................................2313.6.1.2 B200 36-Annunciator Panel...........................................................................231

3.6.2 Messages........................................................................................................................... 2323.6.2.1 ANN_NONE (0).....................................................................................................2323.6.2.2 ANN_AP_DISCONNECT (1)..............................................................................2323.6.2.3 ANN_AP_TRIM_FAIL (2)...................................................................................2323.6.2.4 ANN_BLEEDAIR_FAIL (3)................................................................................2333.6.2.5 ANN_CABIN_ALT_12500 (4)...........................................................................2333.6.2.6 ANN_CABIN_DOOR_OPEN (5)........................................................................2333.6.2.7 ANN_CHIP_DETECT (6)....................................................................................2333.6.2.8 ANN_ENGINE_FIRE (7).....................................................................................2343.6.2.9 ANN_FUEL_PRESS_LO (8)................................................................................2343.6.2.10 ANN_INVERTER_OFF (9)............................................................................2343.6.2.11 ANN_MAST_CAUT (10)................................................................................2343.6.2.12 ANN_MAST_WARN (11)..............................................................................2353.6.2.13 ANN_OIL_PRESS_LOW (12)........................................................................2353.6.2.14 ANN_GROUP_B200_20_START.................................................................2353.6.2.15 ANN_GROUP_B200_20_END......................................................................2363.6.2.16 ANN_BOTTLE_ARMED_LEFT (13)..........................................................2363.6.2.17 ANN_BOTTLE_ARMED_RIGHT (14).......................................................2363.6.2.18 ANN_ENGINE_FIRE_LEFT (15).................................................................2373.6.2.19 ANN_ENGINE_FIRE_LEFT (16).................................................................2373.6.2.20 ANN_AP_FAIL (20).........................................................................................2373.6.2.21 ANN_BAGGAGE_DOOR (21).......................................................................2373.6.2.22 ANN_ENGINE_DEICE (22)...........................................................................2373.6.2.23 ANN_ENGINE_DEICE_FAIL (23)...............................................................2383.6.2.24 ANN_PITOT_HEAT (24)...............................................................................2383.6.2.25 ANN_MAN_TIES_CLOSED (25)..................................................................2383.6.2.26 ANN_BATTERY_TIE_OPEN (26)...............................................................2393.6.2.27 ANN_GENERATOR_TIE_OPEN (27)........................................................239

Page 17: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.6.2.28 ANN_HYDRAULIC_PRESSURE (28).........................................................2393.6.2.29 ANN_BELOW_GS_P_INHIBIT (30)...........................................................2393.6.2.30 ANN_AP_PRST (31)........................................................................................2393.6.2.31 ANN_AT_PRST (32)........................................................................................2403.6.2.32 ANN_FMC_PRST (33)....................................................................................2403.6.2.33 ANN_STAB_OUT_OF_TRIM (34)...............................................................2403.6.2.34 ANN_AUTO_FEATHER_ARM (50)............................................................2403.6.2.35 ANN_AUTO_IGNITION_ON (51)...............................................................2403.6.2.36 ANN_BATTERY_CHARGE_HIGH (52).....................................................2413.6.2.37 ANN_BLEEDAIR_OFF (53)..........................................................................2413.6.2.38 ANN_BRAKE_DEICE_ON (54)....................................................................2413.6.2.39 ANN_CROSSFEED_ON (55).........................................................................2413.6.2.40 ANN_DUCT_OVERTEMP (56)....................................................................2423.6.2.41 ANN_ELEC_TRIM_OFF (57)........................................................................2423.6.2.42 ANN_EXT_POWER_ON (58).......................................................................2423.6.2.43 ANN_GENERATOR_OFF (59).....................................................................2423.6.2.44 ANN_ICE_VANE_EXT (60)...........................................................................2423.6.2.45 ANN_ICE_VANE_FAIL (61)..........................................................................2433.6.2.46 ANN_LAND_TAXI_LIGHT (62)...................................................................2433.6.2.47 ANN_N1_LOW (63)........................................................................................2433.6.2.48 ANN_PASSENGER_OXYGEN_ON (64).....................................................2433.6.2.49 ANN_RVS_NOT_READY (65)......................................................................2443.6.2.50 ANN_FUEL_NO_TRANSFER (66)..............................................................2443.6.2.51 ANN_GROUP_B200_36_START.................................................................2443.6.2.52 ANN_GROUP_B200_36_END......................................................................2443.6.2.53 ANN_H_PITOT_HEAT (86)..........................................................................2443.6.2.54 ANN_H_FUEL_LOW (87)..............................................................................2453.6.2.55 ANN_H_GEN_FAIL (88)................................................................................2453.6.2.56 ANN_H_AF_FUEL_FILTER (89).................................................................2453.6.2.57 ANN_H_FUEL_PUMP (90)............................................................................2453.6.2.58 ANN_H_FUEL_FILTER (91).........................................................................2453.6.2.59 ANN_H_T_R_CHIP (92).................................................................................2463.6.2.60 ANN_H_ENGINE_CHIP (93)........................................................................2463.6.2.61 ANN_H_TRANS_CHIP (94)..........................................................................2463.6.2.62 ANN_H_BATTERY_TEMP (95)...................................................................2463.6.2.63 ANN_H_BATTERY_HOT (96)......................................................................2463.6.2.64 ANN_H_ENGINE_OUT (97).........................................................................2473.6.2.65 ANN_H_LOW_ROTOR_RPM (98)..............................................................2473.6.2.66 ANN_H_BAGGAGE_DOOR (99)..................................................................2473.6.2.67 ANN_H_TRANS_OIL_PRESS (100)...........................................................2473.6.2.68 ANN_H_TRANS_OIL_TEMP (101)............................................................2473.6.2.69 ANN_H_FIRE (102).........................................................................................2483.6.2.70 ANN_H_SC_FAIL (103)..................................................................................2483.6.2.71 ANN_H_LOW_INLET_PRESSURE (104).................................................2483.6.2.72 ANN_H_LITTER_DOOR_OPEN (105)......................................................2483.6.2.73 ANN_H_FLOAT_ARM (106)........................................................................248

Page 18: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.6.2.74 ANN_H_FLOAT_TEST (107).......................................................................2493.6.2.75 ANN_H_DUCT_HIGH_TEMP (108)...........................................................2493.6.2.76 ANN_H_BATTERY_RLY (109)....................................................................2493.6.2.77 ANN_GROUP_ BELL_206_START..............................................................2493.6.2.78 ANN_GROUP_BELL_206_END....................................................................2493.6.2.79 ANN_COUNT.....................................................................................................250

3.7 Indicator Messages............................................................................................................2513.7.1 Messages........................................................................................................................... 251

3.7.1.1 INDICATOR_NONE (0)......................................................................................2513.7.1.2 INDICATOR_LANDING_GEAR_STATUS (1)...............................................2513.7.1.3 INDICATOR_ELEVATOR_TRIM (2)..............................................................2523.7.1.4 INDICATOR_MARKER_BEACON_STATUS (3).........................................2523.7.1.5 INDICATOR_AUTOPILOT_AP (4)..................................................................2533.7.1.6 INDICATOR_AUTOPILOT_FD (5)..................................................................2533.7.1.7 INDICATOR_AUTOPILOT_ALT (6)...............................................................2533.7.1.8 INDICATOR_AUTOPILOT_HDG (7)..............................................................2533.7.1.9 INDICATOR_AUTOPILOT_BC (8)..................................................................2533.7.1.10 INDICATOR_AUTOPILOT_GS (9)..............................................................2543.7.1.11 INDICATOR_AUTOPILOT_NAV (10).......................................................2543.7.1.12 INDICATOR_AUTOPILOT_APR (11).......................................................2543.7.1.13 INDICATOR_GROUP_AP_START...............................................................2543.7.1.14 INDICATOR_GROUP_AP_END....................................................................2543.7.1.15 INDICATOR_LOLLYPOP (12).....................................................................2553.7.1.16 INDICATOR_SPEEDBRAKE_ARMED (13).............................................2553.7.1.17 INDICATOR_SPEEDBRAKE_DO_NOT_ARM (14)...............................2553.7.1.18 INDICATOR_SPEEDBRAKE_EXTENDED (15).....................................2553.7.1.19 INDICATOR_AUTO_BRAKE_DISARM (16)...........................................2553.7.1.20 INDICATOR_ANTI_SKID_INOP (17)........................................................2563.7.1.21 INDICATOR_APU_DET_INOP (18)...........................................................2563.7.1.22 INDICATOR_FAULT (19).............................................................................2563.7.1.23 INDICATOR_APU_BOTTLE_DISCH (20)................................................2563.7.1.24 INDICATOR_ENGINE_BOTTLE_DISCH (21)........................................2563.7.1.25 INDICATOR_WHEEL_WELL (22).............................................................2573.7.1.26 INDICATOR_DME_NM (23)........................................................................2573.7.1.27 INDICATOR_DME_KT (24)..........................................................................2573.7.1.28 INDICATOR_DME_MHZ (25)......................................................................2573.7.1.29 INDICATOR_DME_MIN (26).......................................................................2573.7.1.30 INDICATOR_GROUP_DME_START...........................................................2583.7.1.31 INDICATOR_GROUP_DME_END................................................................2583.7.1.32 INDICATOR_ADF_ADF (27)........................................................................2583.7.1.33 INDICATOR_ADF_ANT (28)........................................................................2583.7.1.34 INDICATOR_ADF_BFO (29)........................................................................2583.7.1.35 INDICATOR_GROUP_ADF_START............................................................2583.7.1.36 INDICATOR_GROUP_ADF_END.................................................................2593.7.1.37 INDICATOR_TRANSPONDER_IDENT (30)...........................................2593.7.1.38 INDICATOR_ALT_VS (31)............................................................................259

Page 19: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.7.1.39 INDICATOR_ALT_ALERT (32)...................................................................2593.7.1.40 INDICATOR_ALT_ARM (33).......................................................................2593.7.1.41 INDICATOR_ALT_CAPT (34)......................................................................2603.7.1.42 INDICATOR_ALT_FT_PER_MIN (35)......................................................2603.7.1.43 INDICATOR_ALT_UP_ARROW (36).........................................................2603.7.1.44 INDICATOR_ALT_DN_ARROW (37)........................................................2603.7.1.45 INDICATOR_GROUP_ALT_START............................................................2613.7.1.46 INDICATOR_GROUP_ALT_END.................................................................2613.7.1.47 INDICATOR_AUD_MKR_MUTE (38).......................................................2613.7.1.48 INDICATOR_AUD_COM1 (39)....................................................................2613.7.1.49 INDICATOR_AUD_COM2 (40)....................................................................2613.7.1.50 INDICATOR_AUD_NAV1 (41)....................................................................2613.7.1.51 INDICATOR_AUD_NAV2 (42)....................................................................2623.7.1.52 INDICATOR_AUD_DME (43)......................................................................2623.7.1.53 INDICATOR_AUD_ADF (44).......................................................................2623.7.1.54 INDICATOR_AUD_TEST (45).....................................................................2623.7.1.55 INDICATOR_AUD_SENS (46).....................................................................2623.7.1.56 INDICATOR_AUD_COM1_MIC (47).........................................................2633.7.1.57 INDICATOR_AUD_COM2_MIC (48).........................................................2633.7.1.58 INDICATOR_AUD_COM1_COM2_SPLIT (49).......................................2633.7.1.59 INDICATOR_AUD_SPKR (50).....................................................................2633.7.1.60 INDICATOR_AUD_PILOT (51)...................................................................2643.7.1.61 INDICATOR_AUD_COPILOT (52).............................................................2643.7.1.62 INDICATOR_AUD_TEST_ALL (53)...........................................................2643.7.1.63 INDICATOR_AUD_HI (54)...........................................................................2643.7.1.64 INDICATOR_AUD_LO (55)..........................................................................2643.7.1.65 INDICATOR_GROUP_AUD_START...........................................................2653.7.1.66 INDICATOR_GROUP_AUD_END................................................................2653.7.1.67 INDICATOR_AUTOPILOT_VORAPR (56)..............................................2653.7.1.68 INDICATOR_AUTOPILOT_ALTSEL (57)................................................2653.7.1.69 INDICATOR_AUTOPILOT_VS (58)...........................................................2653.7.1.70 INDICATOR_AUTOPILOT_IAS (59).........................................................2653.7.1.71 INDICATOR_AUTOPILOT_TRIM (60).....................................................2663.7.1.72 INDICATOR_AUTOPILOT_SBY (61)........................................................2663.7.1.73 INDICATOR_AUTOPILOT_BANK_LIMIT (62).....................................2663.7.1.74 INDICATOR_AUTOPILOT_SOFT_RIDE (63).........................................2663.7.1.75 INDICATOR_AUTOPILOT_NAV_SOURCE (64)....................................2663.7.1.76 INDICATOR_AUTOPILOT_YD (65)..........................................................2673.7.1.77 INDICATOR_AUTOPILOT_PITCH_ASCEND (66)...............................2673.7.1.78 INDICATOR_AUTOPILOT_PITCH_DESCEND (67)............................2673.7.1.79 INDICATOR_GROUP_APB200_START....................................................2673.7.1.80 INDICATOR_GROUP_APB200_END.........................................................2673.7.1.81 INDICATOR_FLAPS_STATUS (68)...........................................................268

3.7.1.81.1 Value............................................................................................................... 2683.7.1.82 INDICATOR_AUD_PLAY (69).....................................................................2683.7.1.83 INDICATOR_AUD_AUX (70).......................................................................268

Page 20: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.7.1.84 INDICATOR_AUD_MAN_SQ (71)..............................................................2683.7.1.85 INDICATOR_AUD_COM3_MIC (72).........................................................2693.7.1.86 INDICATOR_AUD_COM3 (73)....................................................................2693.7.1.87 INDICATOR_AUD_TEL (74)........................................................................2693.7.1.88 INDICATOR_AUD_PA (75)..........................................................................2693.7.1.89 INDICATOR_AUD_VOLSQ_VOL (76).......................................................2693.7.1.90 INDICATOR_AUD_VOLSQ_SQ (77)..........................................................2703.7.1.91 INDICATOR_GROUP_AUD2_START........................................................2703.7.1.92 INDICATOR_GROUP_AUD2_END.............................................................2703.7.1.93 INDICATOR_STANDBY_BATTERY (78)................................................2703.7.1.94 INDICATOR_ENGINE_STARTING (79)...................................................2703.7.1.95 INDICATOR_IGNITION_CONTINUOUS (80)........................................2713.7.1.96 INDICATOR_TRANSPONDER_SPI (81)..................................................2713.7.1.97 INDICATOR_PRECISE_FLIGHT_O2 (82)................................................2713.7.1.98 INDICATOR_ELT_ON (83)...........................................................................2723.7.1.99 INDICATOR_COUNT......................................................................................272

3.8 Illuminator and Mode Control Messages.................................................................2733.8.1 Messages........................................................................................................................... 273

3.8.1.1 ILLUMINATOR_NONE (0)................................................................................2733.8.1.2 ILLUMINATOR_BACKLIGHT (1)...................................................................273

3.8.1.2.1 Value..................................................................................................................2743.8.1.2.2 Selector.............................................................................................................274

3.8.1.3 ILLUMINATOR_POWER (2)............................................................................2753.8.1.4 ILLUMINATOR_AVI_MASTER (3).................................................................2763.8.1.5 ILLUMINATOR_SIMULATOR_POWER (4).................................................2763.8.1.6 MODE_ALT_PRESELECT_ALT_VS (5)..........................................................2763.8.1.7 MODE_ENABLE_PITCH_TRIM_MOTOR (6)..............................................2773.8.1.8 MODE_SIMULATOR (7).....................................................................................2773.8.1.9 ILLUMINATOR_G1000_POWER (8).............................................................2783.8.1.10 MODE_DIGITAL_CONTROL_OPERATED (9).......................................278

3.8.1.10.1 Example.........................................................................................................2793.8.1.11 ILLUMINATOR _COUNT...............................................................................280

3.9 Actuator Messages.............................................................................................................2813.9.1 Messages........................................................................................................................... 281

3.9.1.1 ACTUATOR_NONE (0).......................................................................................2813.9.1.2 ACTUATOR_PITCH_TRIM_CONTROL (1)..................................................281

3.9.1.2.1 Value..................................................................................................................2813.9.1.3 ACTUATOR_PITCH_TRIM_SERVO (2).........................................................2813.9.1.4 ACTUATOR_HOBBS (3).....................................................................................2823.9.1.5 ACTUATOR_GEAR_LOCK (4)..........................................................................2823.9.1.6 ACTUATOR_PITCH (5)......................................................................................2823.9.1.7 ACTUATOR_ROLL (6)........................................................................................2823.9.1.8 ACTUATOR_YAW (7).........................................................................................2833.9.1.9 ACTUATOR_PFD (8)...........................................................................................2833.9.1.10 ACTUATOR_MFD (9).....................................................................................2833.9.1.11 ACTUATOR_YAW_TRIM_SERVO (10)....................................................283

Page 21: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.9.1.12 ACTUATOR_ROLL_TRIM_SERVO (11)...................................................2843.9.1.13 ACTUATOR_YAW_TRIM_CONTROL (12)..............................................284

3.9.1.13.1 Value............................................................................................................... 2843.9.1.14 ACTUATOR_ROLL_TRIM_CONTROL (13)............................................285

3.9.1.14.1 Value............................................................................................................... 2853.9.1.15 ACTUATOR_CLOCK (14)..............................................................................2853.9.1.16 ACTUATOR_STICK_SHAKER (15)............................................................2853.9.1.17 ACTUATOR_COUNT.......................................................................................285

3.10 Circuit Breaker Messages...............................................................................................2863.10.1 Messages...................................................................................................................... 286

3.10.1.1.1 Clear the Breaker.......................................................................................2873.10.1.1.2 Trip the Breaker........................................................................................2873.10.1.1.3 Reset the Breaker......................................................................................287

3.10.1.2 CB_NONE (0).....................................................................................................2883.10.1.3 CB_EBUS1 (1)...................................................................................................2883.10.1.4 CB_EBUS2 (2)...................................................................................................2883.10.1.5 CB_EBUS3 (3)...................................................................................................2883.10.1.6 CB_EBUS4 (4)...................................................................................................2883.10.1.7 CB_ELEC_FLAP_MOTOR (5).......................................................................2883.10.1.8 CB_ELEC_FLAP_CONTROL (6)..................................................................2883.10.1.9 CB_ELEC_GEN_CONTROL (7)....................................................................2893.10.1.10 CB_INST_ENG_TORQUE (8)........................................................................2893.10.1.11 CB_N1 (9)...........................................................................................................2893.10.1.12 CB_OIL_P (10)..................................................................................................2893.10.1.13 CB_STALL_WARN (11).................................................................................2893.10.1.14 CB_TRIM_ELV (12).........................................................................................2903.10.1.15 CB_WARNS_LANDING_GEAR_IND (13)................................................2903.10.1.16 CB_WARNS_LANDING_GEAR_POWER (14)........................................2903.10.1.17 CB_AUTO_SERVO (15)..................................................................................2903.10.1.18 CB_GROUP_B200_24_START.....................................................................2903.10.1.19 CB_GROUP_B200_24_END..........................................................................2903.10.1.20 CB_PROP_DEICE (16)....................................................................................2913.10.1.21 CB_AVIONICS_MASTER (17)......................................................................2913.10.1.22 CB_COM_1 (18)................................................................................................2913.10.1.23 CB_GPS_NAV_1 (19).......................................................................................2913.10.1.24 CB_XPNDR (20)...............................................................................................2923.10.1.25 CB_GPS_NAV_2 (21).......................................................................................2923.10.1.26 CB_COM_2 (22)................................................................................................2923.10.1.27 CB_AUDIO_PANEL (23)................................................................................2923.10.1.28 CB_AUTO_PILOT (24)...................................................................................2933.10.1.29 CB_ALT_2 (25).................................................................................................2933.10.1.30 CB_FLAPS_POS_IND (26).............................................................................2933.10.1.31 CB_FLAPS (27).................................................................................................2933.10.1.32 CB_LDG_GEAR (28)........................................................................................2943.10.1.33 CB_LDG_GR_POS_LTS (29)..........................................................................2943.10.1.34 CB_FUEL_PUMP_L (30)................................................................................294

Page 22: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.10.1.35 CB_FUEL_PUMP_R (31)................................................................................2943.10.1.36 CB_ANTI_ICE (32)...........................................................................................2953.10.1.37 CB_MFD_STALL_WARN (33).....................................................................2953.10.1.38 CB_BATT_1 (34)..............................................................................................2953.10.1.39 CB_PITOT_HEAT (35)...................................................................................2953.10.1.40 CB_NAV_LTS (36)...........................................................................................2963.10.1.41 CB_TAXI_LTS (37)..........................................................................................2963.10.1.42 CB_LDG_LTS (38)............................................................................................2963.10.1.43 CB_STROBE_LTS (39)...................................................................................2963.10.1.44 CB_PANEL_LTS (40)......................................................................................2973.10.1.45 CB_LDG_TAXI_LTS (41)................................................................................2973.10.1.46 CB_ALT_1 (42).................................................................................................2973.10.1.47 CB_BATT_2 (43)..............................................................................................2973.10.1.48 CB_AUDIO_MARKER (44)...........................................................................2983.10.1.49 CB_STBY_HORIZ (45)....................................................................................2983.10.1.50 CB_HOUR_METER (46)................................................................................2983.10.1.51 CB_STBY_BATT (47)......................................................................................2983.10.1.52 CB_LDG_WARN (48)......................................................................................2993.10.1.53 CB_CLOCK (49)................................................................................................2993.10.1.54 CB_BLANK (50)...............................................................................................2993.10.1.55 CB_GROUP_MFD_PANEL_START.............................................................2993.10.1.56 CB_GROUP_MFD_PANEL_END..................................................................2993.10.1.57 CB_PFD (51)......................................................................................................3003.10.1.58 CB_MFD (52).....................................................................................................3003.10.1.59 CB_LDG_GEAR_RELAY (53)........................................................................3003.10.1.60 CB_COM1_NAV1_GPS (54)..........................................................................3003.10.1.61 CB_COM2_NAV2_GPS (55)..........................................................................3013.10.1.62 CB_ENG_PROP_SYNC (56)...........................................................................3013.10.1.63 CB_ALT_FIELD (57).......................................................................................3013.10.1.64 CB_WARN_STALL_AP_ELT (58)...............................................................3013.10.1.65 CB_NAV1 (59)..................................................................................................3013.10.1.66 CB_NAV2 (60)..................................................................................................3023.10.1.67 CB_BEACON_LTS (61)...................................................................................3023.10.1.68 CB_CABIN_LTS_PWR (62)...........................................................................3023.10.1.69 CB_BUS_AVN_1 (63)......................................................................................3023.10.1.70 CB_BUS_AVN_2 (64)......................................................................................3023.10.1.71 CB_ADC_AHRS_ESS (65)..............................................................................3033.10.1.72 CB_PFD_ESS (66)............................................................................................3033.10.1.73 CB_NAV1_ESS (67).........................................................................................3033.10.1.74 CB_ADC_AHRS (68)........................................................................................3033.10.1.75 CB_STDBY_IND_LTS (69)............................................................................3043.10.1.76 CB_FIS (70)........................................................................................................3043.10.1.77 CB_ADF (71)......................................................................................................3043.10.1.78 CB_GPS (88)......................................................................................................3043.10.1.79 CB_DC_500 (89)...............................................................................................3053.10.1.80 CB_SAS (90).......................................................................................................305

Page 23: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.10.1.81 CB_INST_LTS (91)..........................................................................................3053.10.1.82 CB_COCKPIT_LTS (92)..................................................................................3053.10.1.83 CB_TOT_IND (93)............................................................................................3053.10.1.84 CB_IGN_ENG (94)............................................................................................3063.10.1.85 CB_START_ENG (95).....................................................................................3063.10.1.86 CB_ENG_HEAT (96).......................................................................................3063.10.1.87 CB_CAUTION_LTS (97).................................................................................3063.10.1.88 CB_ICS_PHONES (98)....................................................................................3073.10.1.89 CB_GEN_FIELD (99).......................................................................................3073.10.1.90 CB_GEN_RESET (100)...................................................................................3073.10.1.91 CB_NIGHTSCANNER_CONT (101)...........................................................3073.10.1.92 CB_NIGHTSCANNER_PWR (102).............................................................3083.10.1.93 CB_STEREO (103)...........................................................................................3083.10.1.94 CB_CEL_TEL (104).........................................................................................3083.10.1.95 CB_COM2_NAV2 (105).................................................................................3083.10.1.96 CB_ADC (106)...................................................................................................3083.10.1.97 CB_ALT_FIELD (107)....................................................................................3093.10.1.98 CB_STALL_HEAT (108)................................................................................3093.10.1.99 CB_PITOT_HEAT_R (109)............................................................................3093.10.1.100 CB_PFD_2 (110).............................................................................................3093.10.1.101 CB_ICE_VANE (111).....................................................................................3093.10.1.102 CB_ENG_AFM_INST (112).........................................................................3093.10.1.103 CB_ENG_GAUGES (113).............................................................................3103.10.1.104 CB_ICE_INSP_LIGHTS (114).....................................................................3103.10.1.105 CB_AUDIO_2 (115).......................................................................................3103.10.1.106 CB_ELT (116).................................................................................................3103.10.1.107 CB_TRIM_RDR (117)...................................................................................3103.10.1.108 CB_TRIM_AIL (118).....................................................................................3103.10.1.109 CB_YAW_DAMP (119).................................................................................3113.10.1.110 CB_OVERSPEED_GOV (120).....................................................................3113.10.1.111 CB_LOW_FUEL_WARN (121)...................................................................3113.10.1.112 CB_AUX_FUEL_PUMP (122).....................................................................3113.10.1.113 CB_COUNT.......................................................................................................311

3.11 Analog Displays...................................................................................................................3123.11.1 Supported Reports..................................................................................................3123.11.2 Messages...................................................................................................................... 312

3.11.2.1 ANALOG_DISPLAY_NONE (0)....................................................................3133.11.2.2 ANALOG_DISPLAY_FLAPS_GAUGE (1)..................................................3133.11.2.3 ANALOG_DISPLAY_VSI (2).........................................................................3133.11.2.4 ANALOG_DISPLAY_AUD_VOL_GAUGE (3)...........................................3143.11.2.5 ANALOG_DISPLAY_COUNT.........................................................................314

3.12 Digital Displays................................................................................................................... 3153.12.1 Messages...................................................................................................................... 315

3.12.1.1 DIGITAL_DISPLAY_NONE (0)....................................................................3153.12.1.2 DIGITAL_DISPLAY_COM1_LEFT (1).......................................................3153.12.1.3 DIGITAL_DISPLAY_COM1_RIGHT (2)....................................................315

Page 24: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.12.1.4 DIGITAL_DISPLAY_COM2_LEFT (3).......................................................3153.12.1.5 DIGITAL_DISPLAY_COM2_RIGHT (4)....................................................3163.12.1.6 DIGITAL_DISPLAY_NAV1_LEFT (5)........................................................3163.12.1.7 DIGITAL_DISPLAY_NAV1_RIGHT (6).....................................................3163.12.1.8 DIGITAL_DISPLAY_NAV2_LEFT (7)........................................................3163.12.1.9 DIGITAL_DISPLAY_NAV2_RIGHT (8).....................................................3163.12.1.10 DIGITAL_DISPLAY_DME_LEFT (9)..........................................................3173.12.1.11 DIGITAL_DISPLAY_DME_RIGHT (10)....................................................3173.12.1.12 DIGITAL_DISPLAY_ADF_LEFT (11)........................................................3173.12.1.13 DIGITAL_DISPLAY_ADF_RIGHT (12).....................................................3173.12.1.14 DIGITAL_DISPLAY_TRANSPONDER (13).............................................3173.12.1.15 DIGITAL_DISPLAY_ALTITUDE or DIGITAL_DISPLAY_ALT_VS_COMBO (14).....................................................................3183.12.1.16 DIGITAL_DISPLAY_ADF_LEFT_5 (15)....................................................3183.12.1.17 DIGITAL_DISPLAY_ALT (16).....................................................................3193.12.1.18 DIGITAL_DISPLAY_VS (17).........................................................................3193.12.1.19 DIGITAL_DISPLAY_PRESS_ALT (18)......................................................3193.12.1.20 DIGITAL_DISPLAY_FLIGHT_TIME (19).................................................3203.12.1.21 DIGITAL_DISPLAY_COUNT.........................................................................320

3.13 Alphanumeric Input Messages.....................................................................................3213.13.1 Messages...................................................................................................................... 321

3.13.1.1 ALPHAMERIC_INPUT_NONE (0)..............................................................3213.13.1.2 ALPHAMERIC_INPUT_COM1 (1)..............................................................321

3.13.1.2.1 Panel Selector (Sel)..................................................................................3213.13.1.2.2 Encoding (Enc)...........................................................................................3213.13.1.2.3 Base................................................................................................................. 3213.13.1.2.4 Function (Func).........................................................................................3213.13.1.2.5 Reserved (res)............................................................................................3213.13.1.2.6 Active, Standby...........................................................................................321

3.13.1.3 ALPHAMERIC_INPUT_COM2 (2)..............................................................3223.13.1.3.1 Panel Selector (Sel)..................................................................................3223.13.1.3.2 Encoding (Enc)...........................................................................................3223.13.1.3.3 Base................................................................................................................. 3223.13.1.3.4 Function (Func).........................................................................................3223.13.1.3.5 Reserved (res)............................................................................................3223.13.1.3.6 Active, Standby...........................................................................................322

3.13.1.4 ALPHAMERIC_INPUT_NAV1 (3)..............................................................3223.13.1.4.1 Panel Selector (Sel)..................................................................................3223.13.1.4.2 Encoding (Enc)...........................................................................................3223.13.1.4.3 Base................................................................................................................. 3233.13.1.4.4 Function (Func).........................................................................................3233.13.1.4.5 Reserved (res)............................................................................................3233.13.1.4.6 Active, Standby...........................................................................................323

3.13.1.5 ALPHAMERIC_INPUT_NAV2 (4)..............................................................3233.13.1.5.1 Panel Selector (Sel)..................................................................................3233.13.1.5.2 Encoding (Enc)...........................................................................................323

Page 25: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.13.1.5.3 Base................................................................................................................. 3233.13.1.5.4 Function (Func).........................................................................................3233.13.1.5.5 Reserved (res)............................................................................................3233.13.1.5.6 Active, Standby...........................................................................................324

3.13.1.6 ALPHAMERIC_INPUT_TRANSPONDER (5).........................................3243.13.1.6.1 Panel Selector (Sel)..................................................................................3243.13.1.6.2 Encoding (Enc)...........................................................................................3243.13.1.6.3 Base................................................................................................................. 3243.13.1.6.4 Function (Func).........................................................................................3243.13.1.6.5 Reserved (res)............................................................................................3243.13.1.6.6 Digit Count (Count)..................................................................................3243.13.1.6.7 Active..............................................................................................................324

3.13.1.7 ALPHAMERIC_INPUT_COUNT..................................................................3243.14 Calibration Messages........................................................................................................325

3.14.1 Message Index........................................................................................................... 3263.14.1.1 CALIBRATE_NONE (0).................................................................................3273.14.1.2 CALIBRATE_REPORT_LIST (1).................................................................3273.14.1.3 CALIBRATE_MODE (2).................................................................................3273.14.1.4 CALIBRATE_BAD (3).....................................................................................3283.14.1.5 CALIBRATE_RESPONSE (4).......................................................................328

3.14.1.5.1 Error Class: Error......................................................................................3283.14.1.5.2 Flash Report................................................................................................329

3.14.1.6 CALIBRATE_EQUIPMENT_PRESENT (5)..............................................3293.14.1.7 CALIBRATE_TQ_IS_JOYSTICK (6)............................................................3293.14.1.8 CALIBRATE_AILERON_TRIM_PRESENT (7).......................................3303.14.1.9 CALIBRATE_COWL_FLAPS_PRESENT (8)............................................3303.14.1.10 CALIBRATE_LEGACY_NON_CARB_HEAT (9)......................................3313.14.1.11 CALIBRATE_MFD_OPTIONS (10)............................................................3313.14.1.12 CALIBRATE_RIC_TWO_PILOTS (11)......................................................3333.14.1.13 CALIBRATE_TWO_PILOTS (12)...............................................................3343.14.1.14 CALIBRATE_JOYSTICK_REPORTS (13).................................................3353.14.1.15 CALIBRATE_FLAPS_INVERTED (14).....................................................3353.14.1.16 CALIBRATE_FUEL_SWITCH_4WAY (15)..............................................3363.14.1.17 CALIBRATE_SET_SELECTOR (16)...........................................................3373.14.1.18 CALIBRATE_YOKE_DISABLED (17)........................................................3373.14.1.19 CALIBRATE_FACTORY_DEFAULTS (18)..............................................3383.14.1.20 CALIBRATE_DISPLAY_BACKUP_MODE (19)......................................3383.14.1.21 Further Commands........................................................................................3403.14.1.22 CALIBRATE_COMMANDS_COUNT..........................................................3403.14.1.23 CALIBRATE_input (command).................................................................3403.14.1.24 CALIBRATE_input (response)...................................................................340

3.14.1.24.1 CALIBRATE_input response..............................................................3413.14.1.24.2 Selector Count..........................................................................................3413.14.1.24.3 Calibration Type......................................................................................3413.14.1.24.4 Number of Points....................................................................................3413.14.1.24.5 Range Value...............................................................................................342

Page 26: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.14.1.24.6 Selector Bit Mask....................................................................................3423.14.2 Example “Request Calibrations” Exchange...................................................3433.14.3 Example Calibration Sequence...........................................................................343

3.14.3.1 CALIBRATE_ELEV_TRIM (50)...................................................................3443.14.3.1.1 Command......................................................................................................3443.14.3.1.2 Response.......................................................................................................344

3.14.3.2 CALIBRATE_AILERON_TRIM (51)..........................................................3453.14.3.2.1 Command......................................................................................................3453.14.3.2.2 Response.......................................................................................................345

3.14.3.3 CALIBRATE_RUDDER_TRIM (52)............................................................3453.14.3.3.1 Command......................................................................................................3453.14.3.3.2 Response.......................................................................................................346

3.14.3.4 CALIBRATE_BREAKERS (53)....................................................................3463.14.3.4.1 Command......................................................................................................3463.14.3.4.2 Response.......................................................................................................347

3.14.3.5 CALIBRATE_COWL_FLAPS (54)...............................................................3483.14.3.5.1 Command......................................................................................................3483.14.3.5.2 Response.......................................................................................................348

3.14.3.6 CALIBRATE_TILLER (55)............................................................................3493.14.3.7 CALIBRATE_AP_ROLL (56)........................................................................349

3.14.3.7.1 Command......................................................................................................3493.14.3.7.2 Response.......................................................................................................349

3.14.3.8 CALIBRATE_CABIN_ALT (57)...................................................................3503.14.3.9 CALIBRATE_TURBO_THROTTLE (58)...................................................350

3.14.3.9.1 Command......................................................................................................3503.14.3.9.2 Response.......................................................................................................350

3.14.3.10 CALIBRATE_RUDDER (59).........................................................................3513.14.3.10.1 Response....................................................................................................351

3.14.3.11 CALIBRATE_TOE_BRAKES (60)...............................................................3513.14.3.11.1 Command...................................................................................................3513.14.3.11.2 Response....................................................................................................352

3.14.3.12 CALIBRATE_THROTTLE (61)....................................................................3523.14.3.12.1 Response....................................................................................................352

3.14.3.13 CALIBRATE_PROP_PITCH (62)................................................................3533.14.3.13.1 Response....................................................................................................353

3.14.3.14 CALIBRATE_MIX (63)...................................................................................3543.14.3.14.1 Response....................................................................................................354

3.14.3.15 CALIBRATE_THROTTLE_QUADRANT (64).........................................3543.14.3.15.1 Response....................................................................................................355

3.14.3.16 CALIBRATE_AILERONS (65).....................................................................3553.14.3.16.1 Response....................................................................................................356

3.14.3.17 CALIBRATE_ELEVATORS (66)..................................................................3563.14.3.17.1 Response....................................................................................................356

3.14.3.18 CALIBRATE_BACKLIGHT_SCALING (67).............................................3573.14.3.18.1 Response....................................................................................................357

3.14.3.19 CALIBRATE_FLAPS (68)..............................................................................359

Page 27: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.14.3.19.1 Response....................................................................................................3593.14.3.20 CALIBRATE_COLLECTIVE (69)................................................................361

3.14.3.20.1 Response....................................................................................................3613.14.3.21 CALIBRATE_THROTTLE_W_FUEL_CUTOFF (70).............................361

3.14.3.21.1 Response....................................................................................................3623.14.3.22 CALIBRATE_TRIM_PARAMETERS (71)................................................362

3.14.3.22.1 Command...................................................................................................3623.14.3.22.2 Response....................................................................................................3633.14.3.22.3 Use.................................................................................................................3633.14.3.22.4 Assigned Selectors.................................................................................364

3.14.3.23 CALIBRATE_COUNT......................................................................................3653.14.4 Calibration Text Override.....................................................................................365

3.14.4.1 Configuration Text Overrides...................................................................3663.14.4.1.1 The Message Being Overridden..........................................................3673.14.4.1.2 Number of Choices....................................................................................3673.14.4.1.3 Title Text.......................................................................................................3683.14.4.1.4 Label Text.....................................................................................................3693.14.4.1.5 Examples.......................................................................................................370

3.14.4.2 Calibration Text Overrides.........................................................................3743.15 Metadata Messages...........................................................................................................376

3.15.1 Messages...................................................................................................................... 3763.15.1.1 METADATA_NONE (0).................................................................................3763.15.1.2 METADATA_FORMAT_VERSION (1)......................................................3763.15.1.3 METADATA_REQUEST_FULL_REPORT (2).........................................3763.15.1.4 METADATA_ELEVATOR_TRIM_PRESET (3).......................................3773.15.1.5 METADATA_TRIM_CONTROL_PRESET (3).........................................3783.15.1.6 METADATA_ELEVATOR_TRIM_LIMITS (4)........................................3783.15.1.7 METADATA_TRIM_CONTROL_LIMITS (4)...........................................3783.15.1.8 METADATA_FLOW_CONTROL (5)..........................................................379

3.15.1.8.1 Control........................................................................................................... 3793.15.1.9 METADATA_DEBUG (6)...............................................................................3793.15.1.10 METADATA_BLANK_DEVICE (7).............................................................380

3.15.1.10.1 Device ID....................................................................................................3803.15.1.11 METADATA_RE_INITIALIZE (8)...............................................................3803.15.1.12 METADATA_FIRMWARE_DATE (9).......................................................381

3.15.1.12.1 Device ID....................................................................................................3813.15.1.13 METADATA_FIRMWARE_VERSION (10).............................................3843.15.1.14 METADATA_UNKNOWN_COMMAND (11)..........................................3843.15.1.15 METADATA_TEST_DEVICE (12)..............................................................3843.15.1.16 METADATA_REPORT_SUPPORTED (13).............................................385

3.15.1.16.1 Format.........................................................................................................3863.15.1.17 METADATA_EQUIP_ADDED_REMOVED (14)....................................388

3.15.1.17.1 Device Type...............................................................................................3883.15.1.17.2 Status........................................................................................................... 388

3.15.1.18 METADATA_INVOKE_BOOTLOADER (15)..........................................3893.15.1.18.1 Command...................................................................................................389

Page 28: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.15.1.18.2 Response....................................................................................................3893.15.1.19 METADATA_PING (16).................................................................................3893.15.1.20 METADATA_ELEVATOR_TRIM_SPEED (17).......................................3903.15.1.21 METADATA_TRIM_CONTROL_TIME (17)............................................3903.15.1.22 METADATA_ELEVATOR_TRIM_SENSITIVITY (18).........................3913.15.1.23 METADATA_TRIM_CONTROL_SENSITIVITY (18)............................3913.15.1.24 METADATA_ELEVATOR_TAKEOFF_RANGE (19).............................3923.15.1.25 METADATA_DEVICE_SELECTOR (20)...................................................3923.15.1.26 METADATA_MONITOR_TOGGLE_ONOFF (21)..................................3933.15.1.27 METADATA_MONITOR_TOGGLE_SOURCE_SELECT (22)......................3933.15.1.28 METADATA_MONITOR_MENU_SELECT (23).....................................3933.15.1.29 METADATA_MONITOR_UP_OR_LT (24)...............................................3943.15.1.30 METADATA_MONITOR_DN_OR_RT (25)..............................................3943.15.1.31 METADATA_REFLECT_COMMANDS (26)............................................394

3.15.1.31.1 Command...................................................................................................3943.15.1.31.2 Response....................................................................................................395

3.15.1.32 METADATA_VENDOR_NAME (27)..........................................................3953.15.1.32.1 Text...............................................................................................................3953.15.1.32.2 Index.............................................................................................................3963.15.1.32.3 reserved......................................................................................................396

3.15.1.33 METADATA_MONITOR_UP (28)..............................................................3963.15.1.34 METADATA_MONITOR_DN (29)..............................................................3963.15.1.35 METADATA_MONITOR_LT (30)...............................................................3973.15.1.36 METADATA_MONITOR_RT (31)..............................................................3973.15.1.37 METADATA_LAMP_TEST (32)..................................................................3973.15.1.38 METADATA_COUNT......................................................................................398

4 Systems............................................................................................................................................ 3994.1 Electric Elevator Trim......................................................................................................399

4.1.1 General...............................................................................................................................3994.1.1.1 CONTROLS_ELEVATOR_TRIM and ENCODER_ELEV_TRIM..............399

4.1.1.1.1 Potentiometer Sensors: the real analog control.............................4004.1.1.1.2 Relative Encoder sensors: virtual analog controls........................400

4.1.2 Cirrus II..............................................................................................................................4014.1.2.1 Present Model.......................................................................................................4014.1.2.2 New Model (in planning as of June, 2010)...............................................402

4.1.3 MFD Electric Trim (prior to April, 2010)...........................................................4024.1.3.1 Responses Sent During Full Report and Normal Operation.............403

4.1.3.1.1 CONTROLS_ELEVATOR_TRIM................................................................4034.1.3.1.2 SWITCH_PITCH_TRIM................................................................................4044.1.3.1.3 METADATA_ELEVATOR_TRIM_LIMITS.............................................404

4.1.3.2 Commands Sent at Initialization and During Normal Operation...4044.1.3.2.1 ACTUATOR_PITCH_TRIM_CONTROL..................................................4054.1.3.2.2 ACTUATOR_PITCH_TRIM_SERVO.........................................................4054.1.3.2.3 METADATA_ELEVATOR_TRIM_LIMITS.............................................4054.1.3.2.4 METADATA_ELEVATOR_TRIM_PRESET............................................406

4.1.4 B200 MFD Electric Trim (to date).........................................................................406

Page 29: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.1.4.1 Responses Sent During Full Report and Normal Operation.............4074.1.4.1.1 CONTROLS_ELEVATOR_TRIM................................................................4074.1.4.1.2 SWITCH_PITCH_TRIM................................................................................4074.1.4.1.3 SWITCH_ELEVATOR_TRIM_ONOFF.....................................................4084.1.4.1.4 BUTTON_ELEVATOR_TRIM_DISCONNECT.......................................4084.1.4.1.5 STATUS_ELECTRIC_TRIM_AVAILABLE..............................................4084.1.4.1.6 CB_TRIM_ELV.................................................................................................4094.1.4.1.7 METADATA_ELEVATOR_TRIM_LIMITS.............................................409

4.1.4.2 Commands Sent at Initialization and During Normal Operation...4094.1.4.2.1 ACTUATOR_PITCH_TRIM_CONTROL..................................................4104.1.4.2.2 ACTUATOR_PITCH_TRIM_SERVO.........................................................4104.1.4.2.3 CB_TRIM_ELV.................................................................................................4104.1.4.2.4 METADATA_ELEVATOR_TRIM_LIMITS.............................................4114.1.4.2.5 METADATA_ELEVATOR_TRIM_PRESET............................................411

4.1.5 C2Pro Electric Trim (prior to June, 2010).........................................................4114.1.5.1 Responses Sent During Full Report and Normal Operation.............412

4.1.5.1.1 CONTROLS_ELEVATOR_TRIM................................................................4124.1.5.1.2 SWITCH_PITCH_TRIM................................................................................4134.1.5.1.3 METADATA_ELEVATOR_TRIM_LIMITS.............................................4134.1.5.1.4 METADATA_ELEVATOR_TRIM_SPEED..............................................413

4.1.5.2 Commands Sent at Initialization and During Normal Operation...4144.1.5.2.1 ACTUATOR_PITCH_TRIM_CONTROL..................................................4144.1.5.2.2 ACTUATOR_PITCH_TRIM_SERVO.........................................................4144.1.5.2.3 METADATA_ELEVATOR_TRIM_LIMITS.............................................4154.1.5.2.4 METADATA_ELEVATOR_TRIM_PRESET............................................4154.1.5.2.5 METADATA_ELEVATOR_TRIM_SPEED..............................................4154.1.5.2.6 METADATA_ELEVATOR_TRIM_SENSITIVITY.................................416

4.1.6 C2Pro and MFD Electric Trim..................................................................................4174.1.6.1 Responses Sent During Full Report and Normal Operation.............417

4.1.6.1.1 CONTROLS_ELEVATOR_TRIM................................................................4184.1.6.1.2 SWITCH_PITCH_TRIM................................................................................4184.1.6.1.3 METADATA_ELEVATOR_TRIM_LIMITS.............................................4194.1.6.1.4 METADATA_ELEVATOR_TRIM_SPEED..............................................4194.1.6.1.5 EVENT_MOTOR_STOPPED_UNEXPECTEDLY..................................419

4.1.6.2 Commands Sent at Initialization and During Normal Operation...4194.1.6.2.1 ACTUATOR_PITCH_TRIM_CONTROL..................................................4204.1.6.2.2 ACTUATOR_PITCH_TRIM_SERVO.........................................................4204.1.6.2.3 METADATA_ELEVATOR_TRIM_LIMITS.............................................4204.1.6.2.4 METADATA_ELEVATOR_TRIM_PRESET............................................4214.1.6.2.5 METADATA_ELEVATOR_TRIM_SPEED..............................................4214.1.6.2.6 METADATA_ELEVATOR_TRIM_SENSITIVITY.................................4224.1.6.2.7 METADATA_ELEVATOR_TAKEOFF_RANGE....................................423

4.1.7 Sequences and Support..............................................................................................4234.1.7.1 Discovery and Setup..........................................................................................4234.1.7.2 Normal Operation...............................................................................................425

4.1.7.2.1 Autopilot Off...................................................................................................425

Page 30: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.1.7.2.2 Autopilot On...................................................................................................4264.2 Anti-Ice/De-Ice Systems.................................................................................................427

Page 31: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

1 Revisions1.22 15 May 2018 Jeffrey J. Nonken

Corrected the description of INDICATOR_LOLLYPOP. Added:

BUTTON_TEST_FLOAT, BUTTON_TEST_FIRE, BUTTON_TEST_PEDAL_STOP, BUTTON_TEST_FADEC_OVSPD, BUTTON_TEST_FUEL_QTY, BUTTON_FADEC_MODE, BUTTON_GCU_PLUS_OR_MINUS, BUTTON_RPM_WARN_MUTE, BUTTON_IBF, BUTTON_ELT, SWITCH_CABIN_PASS_LIGHTS, SWITCH_FWD_BLOWER, SWITCH_AFT_BLOWER, SWITCH_FLIGHT_INSTR_DG, SWITCH_FLIGHT_INSTR_ATT, SWITCH_FLIGHT_INSTR_TURN, SWITCH_FUEL_BOOST_XFR, SWITCH_FORCE_TRIM, SWITCH_POS_LT, SWITCH_PART_SEP, BUTTON_GCU_PFD, BUTTON_GCU_MFD, BUTTON_GCU_XFER, BUTTON_GCU_NAV, BUTTON_GCU_COM, BUTTON_GCU_FMS, BUTTON_GCU_XPDR, BUTTON_GCU_IDENT, BUTTON_GCU_NAV_SEL, BUTTON_GCU_COM_SEL, BUTTON_GCU_ALT_SYNC, BUTTON_GMA_INTR_COM, BUTTON_GMA_REC, BUTTON_GMA_CABIN;

ENCODER_GCU_HDG, ENCODER_GCU_CRS, ENCODER_GCU_ALT_SEL, ENCODER_GMA_ICS_KNOB, ENCODER_GMA_MSTR_KNOB;

INDICATOR_ELT_BUTTON, INDICATOR_RPM, INDICATOR_FADEC, INDICATOR_IBF, INDICATOR_AUD_TEL_MUSIC, INDICATOR_AUD_PASS, INDICATOR_AUD_MUSIC, INDICATOR_AUD_MUSIC_2, INDICATOR_AUTOPILOT_XFR_1, INDICATOR_AUTOPILOT_XFR_2, INDICATOR_AUTOPILOT_VNV, INDICATOR_AUTOPILOT_FLC, INDICATOR_GCU_PFD, INDICATOR_GCU_MFD, INDICATOR_GCU_NAV, INDICATOR_GCU_COM, INDICATOR_GCU_FMS, INDICATOR_GCU_XPDR, INDICATOR_GCU_COM1, INDICATOR_GCU_COM2, INDICATOR_GCU_NAV1, INDICATOR_GCU_NAV2, INDICATOR_GMA_INTR_COM, INDICATOR_GMA_REC, INDICATOR_GMA_CABIN;

CB_ALT_ENCODING, CB_ICS_SPKR, CB_LDG_LTS_CONT, CB_FLOATS, CB_CARGO_HOOK, CB_HYD_SYSTEM, CB_ENG_IGNITOR, CB_INST_ENG_OIL_PRESS, CB_INST_ENG_OIL_TEMP, CB_INSTR_DAT_V, CB_INSTR_AMPS, CB_IBF, CB_FADEC, CB_PEDAL_STOP, CB_INST_ENG_NG, CB_INST_ENG_NP, CB_INST_ENG_NR, CB_FUEL_VALVE, CB_FUEL_INSTR_QTY, CB_FUEL_INSTR_PRESS, CB_INST_XMSN_OIL_TEMP, CB_INST_XMSN_OIL_PRESS;

ANALOG_DISPLAY_GYRO_SUCTN_GAUGE, ANALOG_DISPLAY_PNEUMTC_PRESS_GAUGE, ANALOG_DISPLAY_CABIN_AIR_TEMP_GAUGE, ANALOG_DISPLAY_OXY_PRESS_GAUGE, ANALOG_DISPLAY_GEN_VOLT_GAUGE, ANALOG_DISPLAY_GEN_LOAD_GAUGE, ANALOG_DISPLAY_BATT_VOLT_GAUGE, ANALOG_DISPLAY_BATT_AMP_GAUGE, ANALOG_DISPLAY_TPL_FED_VOLTS_GAUGE, ANALOG_DISPLAY_EXT_VOLTS_GAUGE, ANALOG_DISPLAY_PROP_AMPS_GAUGE, ANALOG_DISPLAY_FUEL_GAUGE, ANALOG_DISPLAY_FLAPS_GAUGE, ANALOG_DISPLAY_CABIN_CLIMB_GAUGE, ANALOG_DISPLAY_CABIN_ALT_GAUGE.

Descriptions of the above are mostly sparse.

BUTTON_MASTER_WARN_CAUT is now BUTTON_GCU_PLUS_OR_MINUS.

1.21 9 Nov 2017 Jeffrey J. NonkenAdded CALIBRATE_MISC_PARAMETERS.

1.20 23 Aug 2017 Jeffrey J. NonkenMany new controls for upcoming new audio, autopilot, control head and GPS panels. Also updated some descriptions to reflect expansion of digital controls values and existing indicator values.

Added BUTTON_GMC7XX_HDG, BUTTON_GMC7XX_APR, BUTTON_GMC7XX_NAV, BUTTON_GMC7XX_BC, BUTTON_GMC7XX_AP, BUTTON_GMC7XX_FD, BUTTON_GMC7XX_ALT, BUTTON_GMC7XX_VS, BUTTON_GMC7XX_VNV,

Page 32: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

BUTTON_GMC7XX_FLC, BUTTON_GMC7XX_YD, BUTTON_GMC7XX_BANK, BUTTON_GMC7XX_XFR, BUTTON_GMC7XX_SPD, BUTTON_GMC7XX_HDG_SYNC, BUTTON_GMC7XX_ALT_SEL_PB, BUTTON_GMC7XX_CRS1_DIR, BUTTON_GMC7XX_CRS2_DIR, BUTTON_GMC7XX_LVL, BUTTON_GMC7XX_IAS, BUTTON_GMC7XX_ALT, BUTTON_GCU_ASCII, BUTTON_GCU_DIRECT_TO, BUTTON_GCU_MENU, BUTTON_GCU_FPL, BUTTON_GCU_PROC, BUTTON_GCU_CLR, BUTTON_GCU_ENT, BUTTON_GCU_SOFT_SEL, BUTTON_GCU_JOY_UP, BUTTON_GCU_JOY_DOWN, BUTTON_GCU_JOY_LEFT, BUTTON_GCU_JOY_RIGHT, BUTTON_GCU_JOY_UP_LEFT, BUTTON_GCU_JOY_UP_RIGHT, BUTTON_GCU_JOY_DOWN_LEFT, BUTTON_GCU_JOY_DOWN_RIGHT, BUTTON_GCU_JOY_PUSH_BUTTON, BUTTON_GCU_CRSR, BUTTON_GCU_BKSP, BUTTON_650_750_HOME, BUTTON_650_750_DIRECT_TO, BUTTON_GCU_SOFT_LEFT and BUTTON_GCU_SOFT_RIGHT.

Added ENCODER_GMC7XX_TRIM, ENCODER_GMC7XX_ALT_SEL, ENCODER_GMC7XX_CRS1, ENCODER_GMC7XX_CRS2, ENCODER_GMC7XX_HDG, ENCODER_AUD_VOL, ENCODER_AUD_CRSR, ENCODER_GCU_FMS_COARSE, ENCODER_GCU_FMS_FINE, ENCODER_GCU_RANGE, ENCODER_GCU_650_750_VOL, ENCODER_GCU_650_750_SM and ENCODER_GCU_650_750_LG.

Added ANALOG_DISPLAY_AUD_VOL_GAUGE.

Added PFC_C2PRO_PISTON_MASTER_PID, PFC_C2PRO_TURBO_MASTER_PID, PFC_C2PRO_JET_MASTER_PID, PFC_C2PRO_LIGHTS_PID, PFC_C2PRO_FLAPS_PID, PFC_C2PRO_YOKE_PID, PFC_CIRRUS_II_MASTER_PID and PFC_CIRRUS_II_FUEL_PID (0xC209-0xC210).

Added UHID_PFC_710_PANEL_PID, UHID_PFC_DUAL_YOKE_PID and UHID_PFC_MULTI_TRIM_PID (0xD046-0xD048).

1.19 13 Jun 2017 Jeffrey J. NonkenChanged a button definition to a new switch for the Kodiak. BUTTON_AP_ON was never used, and is now SWITCH_AP_ON.

1.18 19 May 2017 Jeffrey J. NonkenAdded a new selector to control the number of degrees a hand turn represents to the new message CALIBRATE_TRIM_PARAMETERS. Removed the default travel time and default hand turns selectors.

1.17 11 May 2017 Jeffrey J. NonkenAdded CALIBRATE_TRIM_PARAMETERS.

1.16 4 May 2017 Jeffrey J. NonkenAdded selector 9, Instrument Flood, to the backlight illuminator.

1.15 30 Mar 2017 Jeffrey J. NonkenAdded new digital controls SWITCH_AILERON_TRIM and SWITCH_RUDDER_TRIM. Added circuit breakers CB_ADC, CB_ALT_FIELD, CB_STALL_HEAT, CB_PITOT_HEAT_R, CB_PFD_2, CB_ICE_VANE, CB_ENG_AFM_INST, CB_ENG_GAUGES, CB_ICE_INSP_LIGHTS, CB_AUDIO_2, CB_ELT, CB_TRIM_RDR, CB_TRIM_AIL, CB_YAW_DAMP, CB_OVERSPEED_GOV, CB_LOW_FUEL_WARN and CB_AUX_FUEL_PUMP.

1.14 27 Feb 2017 Jeffrey J. NonkenAdded new digital controls SWITCH_OXYGEN, SWITCH_FRESH_AIR, SWITCH_CABIN_LIGHTS and SWITCH_AUX_BUS. The latter is distinct from SWITCH_AUX_POWER, which is a standby battery, not a bus. Added indicators INDICATOR_PRECISE_FLIGHT_O2 and INDICATOR_ELT. Added "02=pulsed" to the SWITCH_TAXI_LIGHT.

1.13 24 Jan 2017 Jeffrey J. NonkenAdded new digital control STATUS_CARAVAN_MASTER_AVAIL.

1.12 15 Dec 2016 Jeffrey J. Nonken

Page 33: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

One of those SWITCH_AVI_STBY_PWR should have been SWITCH_STBY_ALT_PWR; changed the second one.

1.11 14 Dec 2016 Jeffrey J. NonkenAdded PIDs D03C-D03F for the Cessna Caravan 206 Master Panel and three circuit breaker panels. Added SWITCH_ROTOR_BRAKE, SWITCH_AVI_BUS_TIE, SWITCH_AVI_STBY_PWR, SWITCH_EXTERNAL_POWER, SWITCH_GND_AIR, SWITCH_UNFEATHER, SWITCH_AVI_STBY_PWR, SWITCH_GENERATOR_START, SWITCH_FUEL_VALVE, SWITCH_STARTER_MODE and SWITCH_STARTER. Added a new value to SWITCH_AUTO_IGNITION – value 2 now means "continuous ignition".

1.10 1 Nov 2016 Jeffrey J. NonkenAdded CALIBRATE_COLLECTIVE and CALIBRATE_THROTTLE_W_FUEL_CUTOFF.

1.09 11 Oct 2016 Jeffrey J. NonkenAdded PIDs for the Avionics IOS panel (button board), new B200 landing gear panel, and the helicopter flight controls board; 0xD039-0xD03B respectively.

1.08 22 Aug 2016 Jeffrey J. NonkenAdded METADATA_LAMP_TEST, which abstracts the lamp test away from the plug-in and makes the panel handle restoring the lamps to their current status.

1.07 15 Aug 2016 Jeffrey J. NonkenAdded helicopter annunciators ANN_H_LOW_INLET_PRESSURE, ANN_H_LITTER_DOOR_OPEN, ANN_H_FLOAT_ARM, ANN_H_FLOAT_TEST, ANN_H_DUCT_HIGH_TEMP and ANN_H_BATTERY_RLY. Changed ANN_H_AF_FUEL_FILTER to ANN_H_R_FUEL_PUMP and ANN_H_FUEL_PUMP to ANN_H_L_FUEL_PUMP.

1.06 8 Aug 2016 Jeffrey J. NonkenAdded ANN_H_SC_FAIL. Added MODE_DIGITAL_CONTROL_OPERATED and related type 4 Supported Report. Also added type numbers to the supported reports. SWITCH_WINDOW_HEAT_FWD is now BUTTON_TOT_LT_TEST. SWITCH_WINDOW_HEAT_TEST is now SWITCH_CABIN_AC, SWITCH_EQUIP_COOLING_SUPPLY is now SWITCH_CABIN_AC_BLOWER, SWITCH_EQUIP_COOLING_EXHAUST is now SWITCH_CABIN_HEATER, SWITCH_EMERGENCY_EXIT_LIGHT is now SWITCH_CABIN_HEAT, BUTTON_SIM_START is now SWITCH_DEFROST, BUTTON_SIM_MAP is now SWITCH_PILOT_AIR, BUTTON_SIM_CON is now SWITCH_FLOOD_LIGHTS, BUTTON_SIM_INSTR is now SWITCH_PANEL_LIGHTS. SWITCH_EXTERNAL_POWER is now SWITCH_ICE_LIGHTS. The green landing gear indicators are actually showing Safe, not just Down. I changed the description. Now, due to the same reason as the In Transit bits, I've added three "green" Down & Safe bits to the upper byte. Added helicopter breakers CB_NIGHTSCANNER_CONT, CB_NIGHTSCANNER_PWR, CB_STEREO, CB_CEL_TEL and CB_COM2_NAV2.

1.05 26 Jan 2016 Jeffrey J. NonkenAdded new monitor controls METADATA_MONITOR_UP, METADATA_MONITOR_DN, METADATA_MONITOR_LT and METADATA_MONITOR_RT.

1.04 8 Dec 2015 Jeffrey J. NonkenAdded the new selectors and corresponding modes to ILLUMINATOR_BACKLIGHT and CONTROLS_BACKLIGHT. Added new message ILLUMINATOR_G1000_POWER.

1.03 24 Sep 2015 Jeffrey J. NonkenAdded the new METADATA_VENDOR_NAME message.

1.02 5 Aug 2015 Jeffrey J. NonkenI can't use the selector simultaneously for Pilot/Copilot and Left/Right engine, so I'm correcting my previous assignments.

BUTTON_ENG_FIRE is now BUTTON_ENG_FIRE_LEFT. BUTTON_BOTTLE_ARMED, formerly

Page 34: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

SWITCH_ALT_FLAPS, is now BUTTON_ENG_FIRE_RIGHT.

SWITCH_CONTROL_PANEL is now BUTTON_BOTTLE_ARMED_LEFT and SWITCH_WINDOW_HEAT_SIDE is now BUTTON_BOTTLE_ARMED_RIGHT.

BUTTON_ENG_FIRE no longer exists and I didn't add a placeholder for it as I usually do because as far as I know, nobody has implemented it, so its absence should not be missed.

Likewise, ANN_BOTTLE_ARMED is now ANN_BOTTLE_ARMED_LEFT and I've added ANN_BOTTLE_ARMED_RIGHT, ANN_ENGINE_FIRE_LEFT and ANN_ENGINE_FIRE_RIGHT. I left ANN_ENGINE_FIRE alone, that's an established B200 message.

The button changes were due to a logistics issue but the annunciator changes were a consistency issue. The plug-in can handle switching between multiple messages and selectors, but why add complications?

1.01 15 Jul 2015 Jeffrey J. NonkenIt turns out I've missed descriptions for a number of messages, mostly for the helicopter. I've marked them for editing. Meantime, SWITCH_ENGINE_OVERHEAT_TEST is now BUTTON_STAB_OUT_OF_TRIM and has been since April 2011. It also turns out that SWITCH_FUEL_FLOW has long since been implemented (Jet only). SWITCH_ALT_FLAPS_MASTER is now BUTTON_ENG_FIRE. SWITCH_ALT_FLAPS is now BUTTON_BOTTLE_ARMED. Added ANN_BOTTLE_ARMED.

1.00 10 Jul 2015 Jeffrey J. NonkenOfficially released. This is a live document, which means it will never actually be finished as such, but at least each of the messages has a description of some sort.

Adding a third field to the version to show minor edits. Changing the second field (which I've been doing all along) is for when we add or change functionality. But mere description edits aren't worth adding revision notes about. The third field won't show in this list.

0.62 9 Jul 2015 Jeffrey J. NonkenAdded CONTROLS_CARB_HEAT.

I've been making an extended effort to finish this document to the point of releasing it. That is, it will never be completely finished, it's a live document. But I want to add at least minimal descriptions of each message so that I can consider it Revision 1 instead of a beta revision. At this writing there are only a few messages remaining, marked with "!-". Note that not all descriptions may be useful (e.g. some of the controls we support for a custom jet) and some may be wrong.

0.61 3 Mar 2015 Jeffrey J. NonkenReplaced SWITCH_DIG_PRESS_MODE with BUTTON_AT_DISC. Added the Value field to CALIBRATE_BACKLIGHT_SCALING (long overdue).

0.60 28 Jan 2015 Jeffrey J. NonkenBrought the PID table up to date (D02A through D038). Added BUTTON_G500_HDG, BUTTON_G500_CRS, SWITCH_G500_ALT, BUTTON_G500_VS, BUTTON_G500_BARO, BUTTON_G500_PFD_PB, BUTTON_G500_UP, BUTTON_G500_DN, BUTTON_G500_MENU, BUTTON_G500_CLR, BUTTON_G500_ENT, BUTTON_G500_MFD_PB, BUTTON_G500_SOFT_KEY_1, BUTTON_G500_SOFT_KEY_2, BUTTON_G500_SOFT_KEY_3, BUTTON_G500_SOFT_KEY_4, BUTTON_G500_SOFT_KEY_5, BUTTON_G500_SOFT_KEY_6, BUTTON_G500_SOFT_KEY_7, BUTTON_G500_SOFT_KEY_8, BUTTON_G500_SOFT_KEY_9, BUTTON_G500_SOFT_KEY_10, BUTTON_G500_RESERVED_1, BUTTON_G500_RESERVED_2, BUTTON_G500_RESERVED_3, BUTTON_GROUP_G500_START and BUTTON_GROUP_G500_END. Added ENCODER_G500_PFD, ENCODER_G500_MFD_SM and ENCODER_G500_MFD_LG with brief descriptions. Added MODE_SIMULATOR with description.

0.59 18 Nov 2014 Jeffrey J. Nonken

Page 35: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Fixed numbering and position of DIGITAL_DISPLAY_ALT and DIGITAL_DISPLAY_VS. Added DIGITAL_DISPLAY_PRESS_ALT, DIGITAL_DISPLAY_FLIGHT_TIME, ANALOG_DISPLAY_VSI and INDICATOR_TRANSPONDER_SPI. Added CONTROLS_THROTTLE_W_FUEL_CUTOFF, CONTROLS_COLLECTIVE and CONTROLS_ROTOR_BRAKE. SWITCH_EXTINGUISH_TEST, SWITCH_STABILIZER_TRIM_MAIN, SWITCH_STABILIZER_TRIM_AUTOPILOT, SWITCH_STABILIZER_TRIM_OVERRIDE, SWITCH_APU_GENERATOR, SWITCH_BUS_TRANSFER, SWITCH_ISOLATION_VALVE, SWITCH_APU_BLEED_AIR, SWITCH_FLIGHT_CONTROL_A and SWITCH_SPOILER are now SWITCH_TWO_LANDING_LIGHTS, SWITCH_TURN_IND, SWITCH_AUX_POWER, SWITCH_IGNITION_LIGHT, BUTTON_GOVERNOR_RPM_UP, BUTTON_GOVERNOR_RPM_DN, SWITCH_HYDRAULIC_SYSTEM, SWITCH_HYDRAULIC_BOOST, SWITCH_GOV_CONT and SWITCH_DG_AND_ATT_IND respectively. Added new Annunciator section for the Bell 206. Some are functional duplicates of existing annunciators, but we're planning to make a separate plug-in anyway. Added ANN_H_PITOT_HEAT, ANN_H_FUEL_LOW, ANN_H_GEN_FAIL, ANN_H_AF_FUEL_FILTER, ANN_H_FUEL_PUMP, ANN_H_FUEL_FILTER, ANN_H_T_R_CHIP, ANN_H_ENGINE_CHIP, ANN_H_TRANS_CHIP, ANN_H_BATTERY_TEMP, ANN_H_BATTERY_HOT, ANN_H_ENGINE_OUT, ANN_H_LOW_ROTOR_RPM, ANN_H_BAGGAGE_DOOR, ANN_H_TRANS_OIL_PRESS, ANN_H_TRANS_OIL_TEMP and ANN_H_FIRE. Added CB_GPS, CB_DC_500, CB_SAS, CB_INST_LTS, CB_COCKPIT_LTS, CB_TOT_IND, CB_IGN_ENG, CB_START_ENG, CB_ENG_HEAT, CB_CAUTION_LTS, CB_ICS_PHONES, CB_GEN_FIELD and CB_GEN_RESET. SWITCH_RECIRC_FAN and SWITCH_CABIN_OUTFLOW_VALVE are now implemented on the Cessna.

0.58 15 Oct 2014 Jeffrey J. NonkenDefined the new Alphanumeric class. Defined COMM, NAV and Transponder radios because they seem fairly straightforward, plus we are working on developing our own version of a Garmin GTX 327 transponder.

0.57 27 Jun 2014 Jeffrey J. NonkenAdded documentation for INDICATOR_LANDING_GEAR_STATUS and INDICATOR_ELEVATOR_TRIM. INDICATOR_LANDING_GEAR_STATUS now includes "In transition" bits in addition to the "Down" and "Unsafe" status bits.

0.56 4 Jun 2014 Jeffrey J. NonkenSWITCH_FMC is now BUTTON_RMI_1. SWITCH_DISPLAY_SOURCE is now BUTTON_RMI_2. Added descriptions for BUTTON_RMI_1, BUTTON_RMI_2, SWITCH_RMI_1 and SWITCH_RMI_2 with illustrations.

0.55 23 May 2014 Jeffrey J. NonkenRe-used SWITCH_FAULT_TEST as SWITCH_DME_SELECTOR.

0.54 20 Dec 2013 Jeffrey J. NonkenAdded CALIBRATE_FLAPS back in (though to a new position, since the old one has been re-used). I needed this because we were possibly mixing selector switches with hex encoded switches that didn't have turn-stop posts, or at least that we were not using, so it seemed to make sense to simply allow the firmware to capture all the possible values. Re-used SWITCH_RUNWAY_TURNOFF_LIGHT as BUTTON_HSI_SELECT_ROSE_ARC.

0.53 12 Apr 2013 Jeffrey J. NonkenAdded MODE_ENABLE_PITCH_TRIM_MOTOR and METADATA_REFLECT_COMMANDS.

0.52 20 Feb 2013 Jeffrey J. NonkenCB_BLANK, CB_ALT_FIELD and CB_BUS_AVN_1 are now available for re-use.

0.51 04 Feb 2013 Jeffrey J. NonkenAdded CB_COM1_NAV1_GPS, CB_COM2_NAV2_GPS, CB_ENG_PROP_SYNC, CB_ALT_FIELD, CB_WARN_STALL_AP_ELT, CB_NAV1, CB_NAV2, CB_BEACON_LTS, CB_CABIN_LTS_PWR, CB_BUS_AVN_1, CB_BUS_AVN_2, CB_ADC_AHRS_ESS, CB_PFD_ESS, CB_NAV1_ESS, CB_ADC_AHRS, CB_STDBY_IND_LTS, CB_FIS and CB_ADF. Fixed the Cleared vs. Tripped status

Page 36: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

values.

0.50 02 Nov 2012 Jeffrey J. NonkenUpdated CONTROLS_BACKLIGHT and ILLUMINATOR_BACKLIGHT to reflect the new selectors we’re using in support of the Cessna panel. SWITCH_AC_PACK is now SWITCH_CABIN_POWER, though it still doesn’t do anything; it’s just there to let me transmit a switch on the Cessna panel. Updated the description for SWITCH_BATTERY_MASTER. CB_PROP_DE_ICE is not supported, use CB_PROP_DEICE. SWITCH_NO1_FUEL_PUMP and SWITCH_NO2_FUEL_PUMP are now SWITCH_CESSNA_1X2_AVI_1 and SWITCH_CESSNA_1X2_AVI_2 respectively.

0.49 30 Aug 2012 Jeffrey J. NonkenReplaced SWITCH_DC_SELECTOR and SWITCH_AC_SELECTOR with BUTTON_PITCH_TRIM_UP and BUTTON_PITCH_TRIM_DN, respectively.

0.48 08 Aug 2012 Jeffrey J. NonkenMade some long-overdue changes in the description of special bit 5 in the Analog Format byte as used by the Aileron and Rudder trims. Resolved one or two contradictory statements, made the fact that bit 6 overrides absolutely clear, and explained and specified the legacy issue (when the byte is set to 0). Added IDs for RIC-10, Power/Lighting Driver, PFC Aileron Trim and PFC Rudder Trim.

0.47 26 Jul 2012 Jeffrey J. NonkenMETADATA_TRIM_ LIMITS is actually METADATA_TRIM_CONTROL_LIMITS, METADATA_TRIM_TIME is actually METADATA_TRIM_CONTROL_TIME, and METADATA_TRIM_SENSITIVITY is actually METADATA_TRIM_CONTROL_SENSITIVITY. METADATA_TRIM_CONTROL_SENSITIVITY is now also an optional response and full report. METADATA_TRIM_CONTROL_LIMITS now optionally reports hand turns.

0.46 02 Jul 2012 Jeffrey J. NonkenSTATUS_ALT_PRESELECT_AVAILABLE is now STATUS_430_ALT_PRESELECT_AVAILABLE. SWITCH_RADIO is now SWITCH_STALL_WARNING_ANTI_ICE. Added new breaker CB_LDG_GEAR_RELAY for the B200. Breakers are now required to accept a "reset"; they will treat it like a "clear" if they don't support reset. Command-only classes (displays, indicators, etc.) are now permitted to return their current value using the same message format (with the extra 10 bytes set to 0). Obsoleted the BUTTON_GPS_* digital controls. Corrections in CALIBRATE_AP_ROLL.

0.45 08 Mar 2012 Jeffrey J. NonkenChange the Illuminator class into an Illuminator and Mode Control class, since we were using it that way anyway and needed a place for mode control messages. Added MODE_ALT_PRESELECT_ALT_VS.

0.44 01 Mar 2012 Jeffrey J. NonkenReplaced SWITCH_LANDING_INBOARD_LIGHT with BUTTON_STANDARD_DAY, which is actually left over from 9 Aug. Changed SWITCH_LANDING_OUTBOARD_LIGHT to BUTTON_PUSH_TO_TALK.

0.43 29 Feb 2012 Jeffrey J. NonkenAdded DIGITAL_DISPLAY_ALT and DIGITAL_DISPLAY_VS. Added DIGITAL_DISPLAY_ALT_VS_COMBO as an alternate label for DIGITAL_DISPLAY_ALTITUDE. CALIBRATE_FLAPS is now CALIBRATE_BREAKERS.

0.42 27 Oct 2011 Jeffrey J. NonkenAdded new calibration functions CALIBRATE_FACTORY_DEFAULTS and CALIBRATE_DISPLAY_BACKUP_MODE. CALIBRATE_AP_ROLL is now implemented. SWITCH_IRS is now BUTTON_CRS_NAV_SOURCE_CYCLE. Added a section that describes the new text override functions for Calibration.

0.41 16 June 2011 Jeffrey J. Nonken

Page 37: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Moved ANN_OIL_PRESS_LOW into the B200 annunciator-20 group as we are now supporting it.

0.40 26 May 2011 Jeffrey J. NonkenAdded ACTUATOR_STICK_SHAKER. Made a few minor corrections.

0.39 10 May 2011 Jeffrey J. NonkenAdded the start of a chapter on anti-ice systems. There’s not much in the way of content yet.

0.38 26 Apr 2011 Jeffrey J. NonkenActivated previously defined, but unused, SWITCH_FLAP_INHIBIT and SWITCH_GEAR_INHIBIT. Also activated SWITCH_GPWS_SYSTEM_TEST but changed it to BUTTON_GPWS_SYSTEM_TEST. Added ANN_STAB_OUT_OF_TRIM. These are used by 737 Jet panels, which at the moment we are not supporting in our plug-in (possibly in the future); this is for Peter's jet.

0.37 25 Apr 2011 Jeffrey J. NonkenActivated previously defined, but unused, SWITCH_AUTO_BRAKE, BUTTON_AUTO_BRAKE_ENG, BUTTON_AUTO_BRAKE_SYS and SWITCH_FUEL_FLOW. Changed SWITCH_ to BUTTON_ for _ENG and _SYS above. SWITCH_GALLEY is now BUTTON_BELOW_GS_P_INHIBIT. SWITCH_ENTERTAINMENT is now BUTTON_AP_PRST. SWITCH_CSD_DISCONNECT_1 is now BUTTON_AT_PRST. SWITCH_CSD_DISCONNECT_2 is now BUTTON_FMC_PRST. SWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL_DISPLAY_UNITS. SWITCH_APU_FIRE_SUPPRESSION is now SWITCH_LOWER_PANEL_DISPLAY_UNITS. ENCODER_ELEV_TRIM is now ENCODER_N1_SET. ENCODER_HSI is now ENCODER_SPEED_REF. Added annunciators ANN_BELOW_GS_P_INHIBIT, ANN_AP_PRST, ANN_AT_PRST and ANN_FMC_PRST. INDICATOR_APU_FIRE_DISCH is now INDICATOR_SPEEDBRAKE_ARMED. INDICATOR_ENGINE_FIRE_DISCH is now INDICATOR_SPEEDBRAKE_DO_NOT_ARM. INDICATOR_APU_GREEN is now INDICATOR_SPEEDBRAKE_EXTENDED. INDICATOR_ENGINE_GREEN is now INDICATOR_AUTO_BRAKE_DISARM. INDICATOR_ENGINE_OVERHEAT is now INDICATOR_ANTI_SKID_INOP. The above are all used by 737 Jet panels, which at the moment we are not supporting in our plug-in (possibly in the future); this is for Peter's jet. Added ANN_OIL_PRESS_LOW, ANN_AP_FAIL, ANN_BAGGAGE_DOOR, ANN_ENGINE_DEICE, ANN_ENGINE_DEICE_FAIL, ANN_PITOT_HEAT, ANN_MAN_TIES_CLOSED, ANN_BATTERY_TIE_OPEN, ANN_GENERATOR_TIE_OPEN, ANN_HYDRAULIC_PRESSURE for the C90 annunciator panel.

0.36 28 Mar 2011 Jeffrey J. NonkenSWITCH_VHF_NAV is now SWITCH_CRS_NAV_SOURCE_SELECTOR. Obsoleted SWITCH_AP_NAV_SOURCE_SELECT. Added new CALIBRATE_SET_SELECTOR. Added METADATA_MONITOR_TOGGLE_ONOFF, METADATA_MONITOR_TOGGLE_SOURCE_SELECT, METADATA_MONITOR_MENU_SELECT, METADATA_MONITOR_UP_OR_LT and METADATA_MONITOR_DN_OR_RT. Added CALIBRATE_YOKE_DISABLED.

0.35 01 Mar 2011 Jeffrey J. NonkenAdded ACTUATOR_CLOCK, BUTTON_GROUP_AUD_START and BUTTON_GROUP_AUD_END. BUTTON_G1000_RESERVED_3 is now BUTTON_G1000_DISPLAY_BACKUP. INDICATOR_AUD_COM12_SPLIT is now INDICATOR_AUD_COM1_COM2_SPLIT. BUTTON_AUD_COM12_SPLIT is now BUTTON_AUD_COM1_COM2_SPLIT. INDICATOR_AUTOPILOT_RESERVED_60 is now INDICATOR_AUTOPILOT_TRIM. SWITCH_WING_DEICE_TEST is now SWITCH_WINDOW_DEICE. INDICATOR_AUTOPILOT_RESERVED_64 is now INDICATOR_AUTOPILOT_NAV_SOURCE.

0.34 28 Feb 2011 Jeffrey J. NonkenDid a lot of catching up. Replaced BUTTON_AUD_COM12_MIC with

Page 38: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

BUTTON_AUD_COM1_COM2_SPLIT and INDICATOR_AUD_COM12_MIC with INDICATOR_AUD_COM1_COM2_SPLIT. Added MFD circuit breakers CB_AUDIO_MARKER, CB_STBY_HORIZ, CB_HOUR_METER, CB_STBY_BATT, CB_LDG_WARN, CB_CLOCK and CB_BLANK. Added G1000 circuit breakers CB_PFD and CB_MFD. Added new calibration commands CALIBRATE_JOYSTICK_REPORTS, CALIBRATE_FLAPS_INVERTED and CALIBRATE_FUEL_SWITCH_4WAY. Added descriptions to all the CALIBRATE_input commands, though most are barebones boilerplate descriptions and several simply say they are either not implemented or depreciated. Fixed a few details like the fact that the analog displays are now 32 bits. Added the new electrical bus field to the circuit breakers (not yet fully designed).

0.33 17 Nov 2010 Jeffrey J. NonkenAdded CALIBRATE_TWO_PILOTS, CALIBRATE_COMMANDS_COUNT and CALIBRATE_COUNT messages along with more details for the CALIBRATE_MFD_OPTIONS command.

0.32 12 Nov 2010 Jeffrey J. NonkenAdded CALIBRATE_MFD_OPTIONS and CALIBRATE_RIC_TWO_PILOTS messages. Analog displays now have a 32-bit value. Supported reports for analog displays have two 32-bit limit values.

0.31 18 Oct 2010 Jeffrey J. NonkenAdded the row/column metadata information for digital controls, encoders, and circuit breakers. (Added cluster information for the places that already had row/col data.) Added limits information for analog display supported reports. BUTTON_AP_MASTER is now SWITCH_AP_NAV_SOURCE_SELECT. Added BUTTON_G1000_DISPLAY_BACKUP.

0.30 1 Oct 2010 Jeffrey J. NonkenUpdated the aileron and rudder trim curve/calibration format. Added the RESET function to the wing de-ice for the Citation. BUTTON_ENGINE_START actually engages the function, it doesn’t stop when you release the button. SWITCH_ENGINE_DEICE now has an “on with continuous ignition” value. Added ACTUATOR_YAW_TRIM_CONTROL and ACTUATOR_ROLL_TRIM_CONTROL and fixed the numbers on the _SERVO versions. Added CALIBRATE_LEGACY_NON_CARB_HEAT to the list. Added “All Devices” to the blank/test list. Added PID for the MFD Rudder Pedals.

0.29 17 Sep 2010 Jeffrey J. NonkenMETADATA_ELEVATOR_TRIM_LIMITS is now METADATA_ELEVATOR_TRIM_LIMITS. METADATA_ELEVATOR_TRIM_SPEED is now METADATA_TRIM_TIME. METADATA_ELEVATOR_TRIM_SENSITIVITY is now METADATA_TRIM_SENSITIVITY. A 1-byte selector field has been added to each of those: 0=elevator, 1=rudder, 2=aileron. Added ACTUATOR_YAW_TRIM_SERVO and ACTUATOR_ROLL_TRIM_SERVO. Added some PIDs and slave IDs that should have been there already, plus the G1000 Autopilot (one PID and one slave ID).

0.28 30 Aug 2010 Jeffrey J. NonkenBUTTON_G1000_RESERVED_1 and BUTTON_G1000_RESERVED_2 are now BUTTON_G1000_TRIM_UP and BUTTON_G1000_TRIM_DN.

0.27 23 Aug 2010 Jeffrey J. NonkenAdded METADATA_DEVICE_SELECTOR, ANALOG_DISPLAY_FLAPS_GAUGE, CALIBRATE_BACKLIGHT_SCALING, INDICATOR_ENGINE_STARTING and INDICATOR_IGNITION_CONTINUOUS. BUTTON_SIM_PAUSE replaces SWITCH_WHEEL_WELL_LIGHT. BUTTON_SIM_* replace BUTTON_AVIONICS_MB_*. All pitch trim commands now consistently use 1 for down and 2 for up (they were all implemented that way anyway). Fixed the trim switch pilot vs. copilot logic. Updated the calibration errors.

0.26 22 Jul 2010 Jeffrey J. NonkenSWITCH_FASTEN_BELTS_LIGHT is now SWITCH_IGNITION, which is being used for the

Page 39: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Citation jet master start panel. CONTROLS_CABIN_ALT might include calibration data. Added CONTROLS_CABIN_CLIMB_RATE. We're adding controls for a jet master panel. BUTTON_STARTER_DISENGAGE is replacing SWITCH_NO_SMOKING_LIGHT. Added SWITCH_IGNITION. SWITCH_ENGINE_DEICE is now being implemented. Added some implementation notes to ILLUMINATOR_BACKLIGHT.

0.25 15 Jul 2010 Jeffrey J. NonkenThe firmware version has a fourth format that lets you add a 1-character beta modifier and up to 12 characters of label or comment. This has actually been supported for a while, I just forgot to document it. Backlight levels are now always 0 to 255 in the message system.

0.24 07 Jul 2010 Jeffrey J. NonkenReplaced SWITCH_LOGO_LIGHT with SWITCH_BATTERY_MASTER_BUS_TIE.

0.23 06 Jul 2010 Jeffrey J. NonkenThe analog trim curve exponent is now a 16-bit word (was a byte) so the structure members align with the default structure. This is intended to improve the code design.

0.22 30 Jun 2010 Jeffrey J. NonkenAdded the range value (4.14.1.24.5) and the new selector bit mask (4.14.1.24.6) fields to the calibration type response.

0.21 22 Jun 2010 Jeffrey J. NonkenA few technical corrections and minor phrase changes in the elevator trim explanations. Added a new paragraph describing the proposed new CII with trim display only. (5.1) Renamed the second CB_STALL_WARN to CB_MFD_STALL_WARN. CALIBRATE_AILERON_TRIM_PRESENT and CALIBRATE_COWL_FLAPS_PRESENT have a bit more detail. Removed a dated reference to setting the T/O range in the trim limits command.

0.20 08 Jun 2010 Jeffrey J. NonkenAdded INDICATOR_STANDBY_BATTERY, ACTUATOR_PFD, and ACTUATOR_MFD.

0.19 02 Jun 2010 Jeffrey J. NonkenFixed the row and column metadata definitions to be consistent across all the classes. Also changed the flag bit used. Now they all match the encoder definition, which is grandfathered in.

0.18 31 May 2010 Jeffrey J. NonkenAdded a flag and row & column metadata to Circuit Breakers. Added new MFD panel circuit breakers. SWITCH_LANDING_RETRACT is now SWITCH_EMERGENCY_GEAR_EXTEND. Added the new MFD circuit breaker definitions, no descriptions yet. SWITCH_STANDBY_POWER is now SWITCH_STANDBY_BATTERY. SWITCH_BELL_CUTOUT is now SWITCH_ARTEX_ELT. Added CALIBRATE_AILERON_TRIM_PRESENT and CALIBRATE_COWL_FLAPS_PRESENT.

0.17 12 Apr 2010 Jeffrey J. NonkenAdded a flag and row & column metadata to digital controls and encoders, all optional. We are reverting back to having the G1000 autopilot buttons define actual messages (AP, YD, etc.) rather than positional data; the device type will be defined by the device in firmware, not by the user in configuration. Positional data will be included as additional metadata where appropriate.

0.16 02 Apr 2010 Jeffrey J. NonkenAdded new command ILLUMINATOR_SIMULATOR_POWER and distinguished it from ILLUMINATOR_POWER.

0.15 30 Mar 2010 Jeffrey J. NonkenG1000 buttons and switches have been changed and re-arranged. Fortunately nobody is using them yet.

0.14 29 Mar 2010 Jeffrey J. Nonken

Page 40: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Finished section 4. Fixed the class 2 tables, all of which were showing class 1.

0.13 28 Mar 2010 Jeffrey J. NonkenChanged STATUS_MOTOR_STOPPED_UNEXPECTEDLY to the more descriptive EVENT_MOTOR_STOPPED_UNEXPECTEDLY. Added description of events in this context. Added section 4 to describe how entire systems are intended to work, rather than just describing individual messages. So far I’ve added a lot of detail about the various electric trim systems available. Added ENCODER_CABIN_ALT.

0.12 02 Feb 2010 Jeffrey J. NonkenAdded CALIBRATE_EQUIPMENT_PRESENT, CALIBRATE_TQ_IS_JOYSTICK, and STATUS_MOTOR_STOPPED_UNEXPECTEDLY. Bit 5 of the analog format is now supported in the aileron and rudder trims. Separated the take-off range from the trim limits and created METADATA_ELEVATOR_TAKEOFF_RANGE, it didn’t make sense where it was. Added the Stop Limit to the general-purpose throttle quadrant along with a lot of detail.

0.11 03 Jan 2010 Jeffrey J. NonkenAdded METADATA_ELEVATOR_TRIM_SENSITIVITY.

0.10 10 Dec 2009 Jeffrey J. NonkenAdded the new type 6 calibration data for the turboprop throttle quadrant.

0.9 22 Nov 2009 Jeffrey J. NonkenAdded some illuminators, switches, and actuators that were either missed or added since the last edit. Added some clarification and did general editing in a few places.

0.8 04 Sept 2009 Jeffrey J. NonkenAdded SWITCH_CARB_HEATER. Moved BUTTON_ENGINE_START to replace SWITCH_ENGINE_START and SWITCH_ENGINE_MASTER to replace SWITCH_IGNITION. Added ACTUATOR_HOBBS and removed ACTUATOR_FAN and ACTUATOR_STICK_SHAKER. New modes for FT/MIN indicator. Renamed ACTUATOR_TRIM_PITCH_* to ACTUATOR_PITCH_TRIM_*. Flaps and marker beacon indicators now have test modes.

0.7 14 Aug 2009 Jeffrey J. NonkenCreated the skeleton of the ANALOG_DISPLAY class and added ANALOG_DISPLAY_TRIM. Also filled in some miscellaneous other descriptions.

0.6 27 July 2009 Jeffrey J. NonkenAdded the new CONTROLS_BACKLIGHT, ILLUMINATOR_BACKLIGHT, ENCODER_AIRSPEED, and ENCODER_ATTITUDE_REFERENCE messages.

0.5 6 July 2009 Jeffrey J. NonkenPulled in all the messages and added descriptions for most of them. There are still some large areas that have minimal information and need to be filled in, and there will probably be corrections, but the message list is up-to-date.

0.4 13 May 2009 Jeffrey J. NonkenRemoved most of the formatting because the chapter/paragraph numbering scheme somehow got messed up. Manually restored the numbering and references. Very little content change.

0.3 16 Jan 2009 Jeffrey J. NonkenAdded new calibration message (Turbojet throttles). Added more detail to the new calibration bit on the analog controls.

0.2 02 Dec 2008 Jeffrey J. NonkenAdded calibration value field to the analog controls. Removed obsolete calibration information from the metadata messages.

0.1 23 Nov 2008 Jeffrey J. NonkenStarted revision numbering and revision list. Added chapters 2.2.3 and 2.2.4 to complement

Page 41: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

2.2.2, slight re-arrangement for consistency’s sake. Fixed a typo.

Page 42: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

2 Introduction

2.1 PurposeThis document describes the message format used between Precision Flight Control, Inc. (PFC) hardware controllers and USB hosts (usually a PC running a flight simulator). It includes information about both the general data format and about specific messages.

2.2 ScopeThis document covers only communications between a USB host and a PFC USB hardware controller. Within that scope it is meant to be comprehensive; that is, all existing and proposed messages and message formats should be documented within.

2.3 Reference DocumentsThis document is based on PFC_enums.xls, which is more of a bare list of messages but may be more useful as a reference. Both documents should be kept up-to-date but generally changes are made to PFC_enums.xls first.

Because PFC_enums.xls gets changed first, chances are if there is a conflict between PFC_enums.xls and this document, PFC_enums.xls is probably correct and this document has probably not been brought up to date.

Page 43: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3 Message Formats

3.1 Joystick controlsSome inputs are sent as joystick controls or joystick buttons rather than via the message format described below. Detailed description of the joystick controls is beyond the scope of this document.

3.2 MessagesNon-joystick messages are implemented as HID report 2 (from the hardware controller to the USB host) and HID report 3 (from the USB host to the hardware controller).

Every effort was made to make this message format expandable and extensible while trying to keep it reasonably simple.

3.2.1 All MessagesThere are a few general rules that apply to all messages, and to the structure in general. Most of these are intended to allow painless expansion.

3.2.1.1 Device ClassThe first byte of each message is called a “Device Class”. Each Device Class describes a certain category of control, input device, or output device. All devices should fit into one of the assigned categories. Should a new device not fit present categories, a new category and Device Class can be defined.

Except for the Metadata type, each Device Class has a certain pre-defined format. Should a device that otherwise fits the category not fit the current defined Device Class, most (if not all) of the formats should be possible to expand. Should that prove impossible, a new Device Class can be created that fits the required format.

At this time there are 255 potential Device Classes and only a few are used. This leaves a tremendous amount of expansion potential.

The Metadata format has been made flexible because it is used for passing information about devices, rather than data for devices. Note that it is not exactly a catch-all or miscellany message. If a device should prove not to fit an existing category, please resist the temptation to create a Metadata message for it. Instead, define a new category with its own format.

Note that a Device Class of 0 is not permitted. All Device Classes are 1 or greater.

All command classes are bi-directional. That is, any indicator, annunciator, mode control, display etc. is able to reply with its current status using the same message index. This is not a requirement; it can be supported when necessary, but generally will not be.

Page 44: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.1.2 Fill BytesMessages are of fixed size and most have a lot of reserved space. Unused bytes must be set to zero (0). Should a Device Class message need to be expanded, having all unused bytes padded with zeros (instead of leaving them undefined) means that old messages – messages from code written before the expansion – will be a known quantity.

For example, expanding the word size for a Device Class message means that the previously unused bytes will be zeros, thus quantities from older messages will have the same values before and after the expansion.

For this reason we also carefully chose the positions of data values within their messages and left expansion room at the top, based on the endianity of the numbers.

Note that unused digits in the Digital Displays messages should be filled with all bits on (0xF) instead of off (0x0). The displays interpret 0x0 as a numeric digit (‘0’) but 0xF as a blank digit (‘ ‘). A stray digit encoded thus would end up as a blank, which is more likely to be harmless.

3.2.1.3 EndianityAll multi-byte words are little endian, also known as Intel endian. This means that the lowest addressed byte in a word is also the least significant byte.

Little endian was not chosen due to the biases of the development team or because of some inherent superiority (imagined or otherwise). It was chosen for practical reasons: the PC is Intel-based, which is inherently little endian, and the Microchip products use little endian. Since both ends of the default set of transactions were little endian, it made sense to use it in the messages. (In fact, the original draft of the format used big endian.) The design team was otherwise fairly neutral on the subject and there is no other nefarious or sinister purpose behind the decision.

Note that the words in the message definitions have been placed so that unused bytes would allow us to expand word size painlessly. This was not an accident.

3.2.1.4 General Message FormatAll messages except Metadata messages follow this format:

Byte 0 Byte 1 Bytes 2-3 Bytes 4-19Device Class Selector Message Index Data

See paragraph 3.2.4.3 for the Metadata message format.

3.2.1.4.1 Device Class

Page 45: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Device Class is 0x01 to 0xFF. A device class of 0x00 is not permitted. This field describes the type of device that is being reported or set, such as an analog control.

See paragraph 3.2.1.1 for a more thorough discussion of device classes.

3.2.1.4.2 SelectorThe selector allows the message to apply to multiple inputs or outputs of the same type. This usually applies to symmetrical devices, e.g. inputs from left and right sensors, or control of left and right engine speed.

We discourage use of the selector for other purposes. For example, if (say) an annunciator panel has 10 indicator lights for varied purposes, we would prefer making 10 different annunciator messages over making one message with the selector choosing between the 10 annunciators.

On the other hand, if (say) two of those annunciators were for symmetrical purposes – for example, engine overheat on a two-engine plane – it would make perfect sense to make one “engine overheat” annunciator message and use the selector to choose the correct one for each engine.

In fact, this is exactly what it’s for. Should a 20-light panel later be made (after we've created that 10-annunciator panel) that has 10 annunciators for the left wing and 10 for the right wing, using the indexes (for the 10-light panel) to choose the lights would force us to make a separate message for half the new panel, which doesn’t make sense. The other way, we re-use the same 10 messages as for the 10-annunciator panel but now use the selector to choose left vs. right.

As you can see, we’re less worried about using up the messages than we are using logical groupings.

Most of the selector values are predefined for consistency. Buck the trend at your own risk.

3.2.1.4.2.1 Some post-original-design notes regarding the selector

In the long run it has become clear that there should have been two selectors: one for the reasons stated above, and one for the devices. It has happened more than once that we needed e.g. left and right controls or displays on both pilot and copilot panels. In the end we added a METADATA_SELECTOR for the panel, which of course is not reflected in the control messages. Generally it's not a problem because the pilot and copilot controls are usually just copies, but that's not always the case; we've had to kludge around the problem. In the case of new messages it's always possible to design the extra selector into the message.

Page 46: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Another issue is that our original plug-in developer frequently prefers to have individual messages defined for e.g. left and right annunciators; so despite the warnings and portents in the paragraphs above, we have frequently bucked the trend ourselves.

3.2.1.4.2.2 Single DeviceIf there is only one device it uses selector 0.

3.2.1.4.2.3 Left and RightSince this is being created by a society that reads and therefore thinks in order from left to right, we will use 0 for left and 1 for right.

3.2.1.4.2.4 Fore and Aft (Bow and Stern)For fore use 0 and for aft use 1.

3.2.1.4.2.5 Upper and LowerI have never encountered these terms and have not created definitions for them, but should we need them, intuition suggests that 0 be upper and 1 be lower.

3.2.1.4.2.6 Engine NumberEngines are numbered from left to right as on an airplane. The selector is zero-based, so the engines are referenced counting from 0 instead of from 1.

3.2.1.4.2.7 Pilot vs. CopilotSome controls are duplicated for the pilot and copilot. Should this not interfere with other selection numbers, assign 0 for the pilot and 1 for the copilot. If there are already left and right or engine number assignments, this may require separate message or assigning another byte in an existing message format.

As an example, on the Modular Flight Deck (MFD) there are four toe brakes: left and right each for pilot and copilot. For this situation we’ve assigned Left Pilot, Right Pilot, Left Copilot, Right Copilot as 0 through 3 respectively. This is a fairly unusual situation and for now will be handled on a case-by-case basis, but consider using this example as a template. Probably the most significant part of the decision is that when there are only pilot pedals, the selectors are 0 and 1, so it fits into the normal situation as well.

3.2.1.4.3 Message IndexThis selects the specific message inside a device class. Every message has a number; this is the message number. With two bytes (16 bits) available, that allows us up to 65,535 different messages for each type of device (e.g. 65,535 different indicators, not counting multiple indicators for left vs. right, and so on). This multi-byte field is encoded LSB-first.

We designed this format to be expandable. Don’t be afraid to make new messages. If you ever run out, make a new Device Class and keep going.

Page 47: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

As with Device Class, Message Index does not allow a value of 0; message numbers are 1 to 65535 (0x0001 to 0xFFFF).

3.2.2 HID Report 2 (HWC to PC)All HID report 2 messages are 20 bytes long. Unused bytes are set to zero (0) unless otherwise specified.

3.2.2.1 Analog ControlsA so-called analog control is usually a control with a continuous setting (such as a potentiometer) that is converted to a digital value via an A/D converter. There are a few exceptions, but those exceptions usually generate values in the same range as an analog control anyway, and so fit the definition for any meaningful purpose.

These messages will be sent from the HWC to the PC only.

Byte 0 Byte 1 Byte 2-3 Byte 4-5 Byte 6-8 Byte 9 Bytes 10-n Bytes n+1-19Device Class (0x01)

Selector Message Index

Analog Value

Reserved(set to 0)

Analog Format

Calibration Data

Reserved(set to 0)

3.2.2.1.1 Device ClassDevice Class 0x01 has been reserved for Analog Controls. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.2.1.2 SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.2.1.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.2.1.4 Analog ValueBytes 4 and 5 hold the current value of the analog reading of the device. Generally any scaling or offset should already have been applied by the hardware controller unless bit 6 of the Analog Format field has been set (see 3.2.2.1.5.2).

Page 48: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The Analog Format byte describes the scale of this value (see 3.2.2.1.5).

At this time we have reserved two (2) bytes for the value. Should we ever need more than 16 bits of resolution, the value can be expanded into the following reserved bytes (6 and 7) for up to 32 bits of resolution. This multi-byte field is encoded as a signed or unsigned 16-bit quantity, LSB-first. The analog format sign flag determines whether it is a signed or unsigned quantity. Signed values are encoded in two’s-complement.

3.2.2.1.5 Analog FormatThis byte describes the format of the analog value.

Bit 7 Bit 6 Bit 5 Bits 4:0Sign flag Includes Calibration Data Special Resolution

3.2.2.1.5.1 Sign FlagBit 7 is 0 if the analog value is unsigned or 1 if the analog value is signed. A signed value is encoded into the same number of bits as an unsigned value, but uses one of those bits as a sign bit. Unless otherwise specified, expect signed values to be two's complement.

This Sign flag field is not part of the value, but only indicates the type of value. It's not a sign bit.

3.2.2.1.5.2 Includes Calibration DataIf bit 6 is set (1), the message includes calibration data (see 3.2.2.1.6). If bit 6 is cleared (0), the calibration data field is set to zero (0) and should be ignored.

When bit 6 is set (1) the resolution field (bits 4:0) is repurposed to select the calibration data type. The value field then represents a simple 16-bit number; the range of that number is defined by the included calibration limits, or is inherent in the type of calibration data.

3.2.2.1.5.3 SpecialThis bit must be set to zero (0) if not used. Its meaning is context-dependent; how it is used depends on the actual message using it. Very few messages use this bit.

3.2.2.1.5.4 ResolutionThis bit field specifies the number of bits used to encode the analog value. The number of bits may be from 1 to 32, with a value of 0 representing 32 bits.

If bit 6 of the analog format is 1, this field is instead an enumerated value used to select the calibration data type. The types currently defined are:

Page 49: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Value Description0 No calibration values.1 Single-point calibration. The first 16-bit value describes an offset.2 Limits calibration. Two 16-bit limits values. The first value is the low limit, the

second value is the high limit.3 Limits calibration plus center point. The first 16-bit value is the low limit, the

second 16-bit value is the high limit, the third is the center point. (Note: This is currently not in use, having been superseded by type 5.)

4 Four-point turbo throttle calibration. The first 16-bit value describes the low limit; the second, the high limit; the third, the reverse transition; the fourth, the low-idle transition.

5 Limits calibration plus center points with null zone. The first 16-bit value is the low limit, the second 16-bit value is the high limit, the third is the low center point, the fourth is the high center point.

6 Three-point turboprop throttle quadrant calibration. The first 16-bit value describes the low limit; the second, the high limit; the third, the transition point. The transition point may be less than or equal to the low limit in order to disable it, so it can be used for limits calibration data for non-turboprop throttle quadrants.

3.2.2.1.6 Calibration DataThis field is included on a few analog inputs. (See PFC_enums.xls for a list.) Bit 6 of the analog format byte enables this field (see 3.2.2.1.5.2). When disabled it contains zeros.

When this mode is enabled, the data starting at byte 10 include calibration data, and the Resolution field is now an enumerated value that describes those data.

Type 0: No Calibration DataThis is just a place-holder.

Type 1: Center Point CalibrationThis holds a single, signed 16-bit calibration point that describes an offset to be added to the data. For negative offsets, use a negative number.

Type 2: Calibration LimitsThe calibration data consist of two unsigned short words that represent the calibration limits for the analog value. The first word (bytes 10 and 11) represents the low limit. The second word (bytes 12 and 13) represents the high limit. Both values are in little-endian format.

Page 50: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

d= __s__

h-l+1

r= v-l dwhere:d = divisor. This is an intermediate value that can be factored out if desired. It is only

shown here to make it easier for me to illustrate this.s = scale. This is the intended scale of the result. For example, for a result of 0-1023, s

would be 1024.h = high limitl = low limitv = analog valuer = result

Type 3: Limits Plus Center PointThis is similar to type 2 except that it includes a third 16-bit word which is a neutral center point. The center point represents the at-rest or “neutral” location for the control in question. In this case there are two slopes and offsets calculated, one between the left end and center, and one between the center and right end. (Note: This is currently not in use, having been superseded by type 5.)

Type 4: Turbo Throttle Limits and Transition PointsThe calibration data consist of four unsigned short words. The first and second values represent the low and high limits of the throttle, respectively. The third value represents the lowest limit of the ground idle setting; any lower values means the throttle is in the reverse range. The fourth value represents the lowest limit of the normal operating range; any lower value that is not lower than the ground idle limit means the throttle is in the ground idle range. Any value the same or higher means the throttle is in the normal flight range.

The PC is expected to translate those numbers into different behaviors depending on the flight model and calculate and apply null zones, offsets and slopes as needed.

Type 5: Limits with Center Points and Null ZoneThis is similar to limits plus center point except that it has two points that bracket a center null zone. This is intended to compensate for a certain amount of slop in many controls’ at-rest locations. The first two 16-bit words are the low and high limits, the third and fourth are the low and high center points, respectively. Two slopes and offsets are calculated: one from the low limit to the low center point, and one from the high center point to the high limit. Any value from the low center point to the high center point (inclusive) is considered to be neutral or centered.

Page 51: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Type 6: Turboprop Throttle Quadrant Limits and Single Transition PointThe calibration data consist of three unsigned short words. The first and second values represent the low and high limits of the control, respectively. The third value represents the lowest limit of the normal range; any lower values means the throttle is in the reverse range, the prop is feathered, or the fuel is cut off, depending on the control.

The PC is expected to translate those numbers into different behaviors depending on the flight model and selected throttle quadrant and calculate and apply null zones, offsets and slopes as needed.

This differs from the “Turbo Throttle Limits and Transition Points” calibration (Type 4, above) in two ways: one, it covers all six throttle quadrant axes, and so includes prop feather and fuel cut-off transitions; two, it only has a single transition point for the throttles, that being to the reverse range, and therefore has no beta range.

The transition value may be set to zero (0) or may be less than or equal to the low limit in order to disable it. This means calibration can be done in the absence of a turboprop throttle quadrant while still allowing the limits values to be used for non-turboprop throttle quadrants.

3.2.2.1.7 Special BitIf bit 5=1 of the Analog Format byte, the message may include other data. The format and content of those data are message-specific.

3.2.2.1.7.1 Aileron and Rudder TrimThis was sort of shoehorned into the specification when we started supporting different trim hardware and realized that the curves we were using didn’t make sense on some of the hardware. Original support was for single-turn potentiometers on the Cirrus consoles and MFD hardware, and later the B200. We wanted precise control, but also the full range, so we apply a curve that gives small but precise amounts of movement towards zero and larger, less precise movements as the control reaches the endpoints. We also included a “null zone” to make it comparatively simple for the user to neutralize the controls during normal operation, since there is no positive indication of where neutral is.

During the process of defining how the new curve data would work, we tried to make it as universal as we reasonably could. Considerations included:

Older firmware would not know to use this bit, so the default would be to apply the same curve that we had been using all along.

Trying to apply the curve data to limits data would just complicate things unnecessarily. If this is ever needed we will define a new enumerated value in

Page 52: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

the list and make a specific definition; in the meantime, if limits data are present, no curve should be applied. This specifically includes if bit 5=0 (default curve) but bit 6=1 (message includes limits data).

We included a way for the firmware to define its own exponential curve and null zone. This is intended to support flexibility while maintaining the abstraction.

o We defined all fields as 16 bits to maintain word alignment for easier PC platform programming. The exponent field was originally designed as 8 bits, which is why we tried so hard to pack it into a byte. If it seems odd, that’s why.

We included a way to override the curve completely and use limits. It wasn’t until later that we realized that we weren’t going to support both curves and limits, which is why bit 5 formats 2, 3, and 5 functionally duplicate the corresponding bit 6 formats.

A way to override the curve completely and simply use the raw data. In the long run it seems this is redundant. You can use format 2 to accomplish the same thing and specify exact limits at the same time, or specify an exponent of 1.

If the entire Analog Format byte equals zero (all bits are 0), the default curve is applied with a limit of 1023. This has been kept for backwards compatibility with our earliest implementations.

Exponent = 1.3 Limit = 1023 Null zone = 36

If bit 6=1 it overrides bit 5, so that the message includes calibration data as normal, and all the following stuff doesn’t apply. See paragraph 3.2.2.1.6.

If bit 6=0 and bit 5=1 of the Analog Format byte, the message includes data to calculate trim curves to apply before passing the values upstream. Curve data are:

Exponent (linear curve can be specified by an exponent of 1) Upper limit of data sent to PC (lower limit is always 0) Null zone size

Formats are specified in the value held in bits 4:0. They are:0. No curve applied. PC uses the raw data. Upper limit is specified starting byte

10.1. An exponential curve is applied with a null zone, with parameters starting

byte 10.2. No curve is applied, but calibration type 2 (limits) calibration data follow.3. No curve is applied, but calibration type 3 (limits plus center point)

calibration data follow.4. Reserved, not used.5. No curve is applied, but calibration type 5 (limits plus null zone) calibration

data follow.6. Reserved, not used.

Page 53: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Byte 9 Bytes 10-17Bit 5=0 default curve (see text)

xx variesRaw Data Upper Limit set to 0

20 uuuu 00 00 00 00 00 00Exponential Curve Upper Limit Exponent Null Zone set to 0

21 uuuu eeee zzzz 0000Limits Lower Limit Upper Limit set to 0 set to 0

22 llll uuuu 0000 0000Limits+Center Lower Limit Upper Limit Center Point set to 0

23 llll uuuu cccc 0000Limits+Null Lower Limit Upper Limit Lower Null Upper Null

25 llll uuuu lzlz uzuzAll values are in hexadecimal.

3.2.2.1.7.1.1 Bit 5=0, Default CurveIf bits 6 and 5 are set to 0 then the PC applies the default curve to the trim data, affording backwards compatibility. At this time:

Exponent = 1.3 Limit specified by bits 4:0 in the usual manner (3.2.2.1.5.4), unless the entire

byte is 0, in which case the limit is 1023. Null zone = (limit+1)*.036

Thus: null zone size is 2^(byte_9 & 0x0F) * 0.036, then round down or truncate. Limit is 2^(byte_9 & 0x0F) – 1. However if (byte_9 & 0x0F) == 0x00, the limit is 1023 and the null zone size is 36.

3.2.2.1.7.1.2 Raw DataThe PC accepts all data without applying either a curve or a null zone. The first 16 bits starting byte 10 describe the upper limit; lower limit is 0.

3.2.2.1.7.1.3 Exponential CurveThe PC applies an exponential curve to the raw data before using them for trim data. Starting from byte 10:

The first 16 bits are used to specify the upper limit; lower limit is 0. The next 16 bits are used to specify the exponent. To create the transmitted

value from the exponent (when writing firmware), subtract 1 from the exponent and multiply by 10. To turn the received value into an exponent (when writing software), divide the value by 10 and add 1. Thus an exponent of 1 is sent as 0; an exponent of 1.3 is sent as 3. The field is unsigned; exponents less than 1 cannot be specified.

A null zone is an area surrounding the center of the range where the output is zero (0) regardless of the input. Values outside the zone are scaled starting

Page 54: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

at the edge of the zone. The next 16 bits specify the total size of the zone; ½ of this zone is extended in either direction from the center. If the zone as specified would not be exactly symmetrical in the specified range, it is permissible to round up or down or to simply allow the zone to be asymmetrical as convenient as long as it does not disrupt the user experience. (Chances are a single point more or less will not be noticed.)

3.2.2.1.7.1.3.1 Sample code for generating a lookup table

#include <math.h>

/****************************************************************************************Generates a lookup array for applying an exponential curve with a null zone based on: trim_curve: pointer to the destination float array. Make sure it has at least "size" float items allocated. size: the actual number of items in the array. This is the highest possible value plus 1. exponent: exactly that, the exponent for the curve. nullzone: the total width of the null zone.

Returns: 0 = OK. 1 = nullzone >= size, nothing was done.****************************************************************************************/int calculate_trim_curve(float *trim_curve, int size, double exponent, int nullzone){

double scale;int lo_index = 0;int hi_index = size - 1;int offset = (size - nullzone) / 2;

if (nullzone >= size){

return 1;}scale = 0.5 / pow((double)offset, exponent);do{

double intermediate = pow((double)offset, exponent) * scale;trim_curve[lo_index] = (float)(0.5 - intermediate);trim_curve[hi_index] = (float)(0.5 + intermediate);if (offset > 0){

--offset;}

} while (--hi_index >= ++lo_index);return 0;

}

3.2.2.1.7.1.4 LimitsThis allows for an MFD-type trim (trim wheel with a pot) to be mounted sideways, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 2 format (3.2.2.1.6).

3.2.2.1.7.1.5 Limits+CenterThis allows for an MFD-type trim (trim wheel with a pot) to be mounted sideways, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 3 format (3.2.2.1.6).

Page 55: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.1.7.1.6 Limits+NullThis allows for an MFD-type trim (trim wheel with a pot) to be mounted horizontally, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 5 format (3.2.2.1.6).

3.2.2.1.8 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 56: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.2 Digital ControlsDigital controls are controls with distinct states, such as “on” and “off”, though many digital controls have more than two states.

These messages will be sent from the HWC to the PC only.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 5-19Device Class (0x02)

Selector Message Index

Digital Value

Reserved(set to 0)

This format is used for certain buttons (originally intended for G1000 autopilot buttons). The row and column information are sent with the buttons for display purposes only (primarily for the Test GUI). These may be safely ignored if not needed.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 5-8 Byte 9 Byte 10 Byte 11 Byte 12 Bytes 13-19Device Class (0x02)

Selector Message Index

Digital Value

Reserved(set to 0) (see note)

Modifiers Row Column Cluster Reserved(set to 0)

3.2.2.2.1 Device ClassDevice Class 0x02 has been reserved for Digital Controls. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.2.2.2 SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.2.2.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.2.2.4 Digital ValueByte 4 holds the current state of the device.

At this time we have reserved one (1) byte for the value. Should we ever need more than 256 states, the value can be expanded into the following reserved byte (5) for up to 65536 distinct states. Even more bytes are available in the unlikely event more than that are needed.

This field is encoded as an unsigned quantity unless otherwise specified.

Page 57: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Note: There are one or more messages that use multiple bytes, or do not use a simple 0-n value, or both. They are documented thoroughly. As of this writing, there is only one such message, and no message requires more than two bytes for its values.

3.2.2.2.5 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

3.2.2.2.6 ModifiersOne byte has been reserved for modifiers.

Bits 7:2 Bit 1 Bit 0

Reserved (set to 0) Includes Row/column Reserved (set to 0)

3.2.2.2.6.1 Includes Row/Column MetadataBit 1, if on, indicates that bytes 9 and 10 contain row and column metadata. These are optional metadata, only used for display purposes (primarily for the Test GUI) and may be safely ignored if not needed.

3.2.2.2.6.2 ReservedThese bits are reserved for future expansion. Set them to zero (0).

3.2.2.2.7 RowThis contains the button’s row number. This is a physical position and is only intended for use in display code. Row numbers are 1 to 255. 0 means there are no row data, or there is only one row.

3.2.2.2.8 ColumnThis contains the button’s column number. This is a physical position and is only intended for use in display code. Column numbers are 1 to 255. 0 means there are no column data, or there is only one column.

3.2.2.2.9 ClusterThis contains an optional cluster number. This allows separate sets of physically contiguous buttons to be handled separately. Cluster numbers are 1 to 255. 0 means there are no cluster data, or there is only one cluster.

3.2.2.2.10 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 58: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.3 Digital EncodersDigital encoders are devices, usually rotational, that do not send positional signals, but rather send movement and direction change signals. You are never told its position, but you know when it is being turned, which direction and how far.

These messages will be sent from the HWC to the PC only.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 5-8 Byte 9 Byte 10 Byte 11 Byte 12 Bytes 13-19Device Class (0x03)

Selector Message Index

Value (response)

Reserved(set to 0)

Modifiers Row Column Cluster Reserved(set to 0)

3.2.2.3.1 Device ClassDevice Class 0x02 has been reserved for Digital Controls. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.2.3.2 SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.2.3.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.2.3.4 StepThe direction is an 8-bit signed value that encodes the number of steps the encoder has been turned since the previous message from this encoder. A positive value denotes steps “up”, usually clockwise. A negative value denotes steps “down”, usually counter-clockwise. A value of zero means that the device has not been turned. Most encoder messages will be for a single step, but allowance has been made for fast turns to be encoded as a single, multi-step message.

This field is encoded as a signed, two’s-complement 8-bit value.

3.2.2.3.5 ModifiersOne byte has been reserved for modifiers.

Bits 7:2 Bit 1 Bit 0

Reserved (set to 0) Includes Row/column Fast

Page 59: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.3.5.1 FastThis bit is set if the encoder is being turned quickly. It is usually passed along from a RIC via the on-board slave. The PC should treat this as an accelerator and multiply the Step by 5 if it is set.

Note that this bit is obsolescent and only included for legacy purposes. Most, if not all, USB devices that communicate with slaves will treat the slave-message "fast" bit as a 5x multiplier and pass along the resulting value, instead of passing the bit through.

3.2.2.3.5.2 Includes Row/Column MetadataBit 1, if on, indicates that bytes 9 and 10 contain row and column metadata. These are optional metadata, only used for display purposes (primarily for the Test GUI) and may be safely ignored if not needed.

3.2.2.3.5.3 ReservedThese bits are reserved for future expansion. Set them to zero (0).

3.2.2.3.6 RowThis contains the button’s row number. This is a physical position and is only intended for use in display code. Row numbers are 1 to 255. 0 means there are no row data, or there is only one row.

3.2.2.3.7 ColumnThis contains the button’s column number. This is a physical position and is only intended for use in display code. Column numbers are 1 to 255. 0 means there are no column data, or there is only one column.

3.2.2.3.8 ClusterThis contains an optional cluster number. This allows separate sets of physically contiguous buttons to be handled separately. Cluster numbers are 1 to 255. 0 means there are no cluster data, or there is only one cluster.

3.2.2.3.9 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 60: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.4 Analog SendersAnalog senders are devices that send analog readings regarding a condition, such as engine temperature or wind speed.

These messages will be sent from the HWC to the PC only.

At this writing there are no analog senders defined.

The message format is identical to the format for analog controls; see section 3.2.2.1.

Byte 0 Byte 1 Byte 2-3 Byte 4-5 Byte 6-8 Byte 9 Bytes 10-19

Device Class (0x04)

Selector Message Index

Analog Value

Reserved (set to 0)

Analog Format

Reserved (set to 0)

3.2.2.4.1 Device ClassDevice Class 0x04 has been reserved for Analog Senders. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.2.4.2 SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.2.4.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.2.4.4 Analog ValueBytes 4 and 5 hold the current value of the analog reading of the device.

The Analog Format byte (Byte 9) describes the scale of this value.

At this time we have reserved two (2) bytes for the value. Should we ever need more than 16 bits of resolution, the value can be expanded into the following reserved bytes (6 and 7) for up to 32 bits of resolution. This multi-byte field is encoded as a signed or unsigned 16-bit quantity, LSB-first. The analog format sign flag determines whether it is a signed or unsigned quantity. Signed values are encoded in two’s-complement.

Page 61: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.4.5 Analog FormatThis byte describes the format of the analog value.

Bit 7 Bits 6:5 Bits 4:0Sign flag Reserved Resolution

3.2.2.4.5.1 Sign FlagBit 7 is 0 if the analog value is unsigned or 1 if the analog value is signed. A signed value is encoded into the same number of bits as an unsigned value, but uses one of those bits as a sign bit.

3.2.2.4.5.2 ReservedThese bits are reserved for future expansion and must be set to zero (0).

3.2.2.4.5.3 ResolutionThis bit field specifies the number of bits used to encode the analog value. The number of bits may be from 1 to 32, with a value of 0 representing 32 bits.

3.2.2.4.6 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 62: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.5 Digital SendersDigital senders are devices that send discrete signals regarding a condition, such as engine overheat or cabin door open.

These messages will be sent from the HWC to the PC only.

At this writing there are no digital senders defined.

The message format is identical to the format for digital controls; see section 3.2.2.2.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 6-9Device Class (0x05)

Selector Message Index Digital Value Reserved (set to 0)

3.2.2.5.1 Device ClassDevice Class 0x05 has been reserved for Digital Senders. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.2.5.2 SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.2.5.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.2.5.4 Digital ValueByte 4 holds the current state of the device.

At this time we have reserved one (1) byte for the value. Should we ever need more than 256 states, the value can be expanded into the following reserved byte (6) for up to 65536 distinct states. Even more bytes are available in the unlikely event more than that are needed.

This field is encoded as an unsigned quantity.

3.2.2.5.5 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 63: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.6 Alphanumeric InputsAn input that enables fields of multiple values to be transmitted to the PC, possibly including multiple fields. This is intended to allow a panel to perform local editing.

These messages will be sent from the HWC to the PC only.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 5 Byte 6-19Device Class (0x0E)

General Selector

Message Index

Reserved/Panel Selector

Format Data (depends on Format)

3.2.2.6.1 Device ClassDevice Class 0x0E has been reserved for Alphanumeric Inputs. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.2.6.2 General SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.2.6.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.2.6.4 Reserved/Panel SelectorBits 7:3 of this field are reserved for future use.

Bits 2:0 are designated to be a Panel Selector. This is used to distinguish between e.g. a Pilot's panel and a Copilot's panel and can be used concurrently with the General Selector, which is intended to distinguish between multiple identical controls on a panel.

The METADATA_DEVICE_SELECTOR command has hitherto been used to report this selector, but until now it has not been designed into a class format.

3.2.2.6.5 FormatEach device type may encode its data differently, depending on its needs. This field reports the type of encoding used.

Format 0: Dual 5-digit edit buffer in unpacked BCD or other binary-code base. Format 0 is for numeric values only.

Page 64: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Format 1: Single multi-digit edit buffer in unpacked BCD or other binary-coded base. Format 1 is for numeric values only.

3.2.2.6.5.1 Format 0Format 0 was designed to support a panel with two fields (Active and Standby) and local editing functions. Previously all our panels have had one or more encoders that send up/down information to the PC, which uses that to change its own buffers and then update the display. Because we will be supporting different, newer types of radio – some, for example, have a keypad for input – we have determined a need to handle input differently. By allowing the firmware to send the present value as a single message we also allow the firmware to maintain its own local editing function and completely abstract the input type away from the message. By way of the "Standby" field and mode we allow the user to set the standby value and have the PC retain it between sessions (the firmware is not required to retain data while powered down) while not requiring the user to e.g. press the Transfer button twice to assure it is being retained. This allows natural operation of the radio while still putting the burden of inter-session value retention on the PC.

To minimize communications overhead, the PC should not update the radio's display when it receives a Standby message, but only when it receives a Transfer message.

Note that binary-coded fields are not considered multi-byte integers in the usual sense and are not subject to the normal endian rules.

Byte 6 Byte 7Bits 7:4 Bit 3 Bits 2:0

reservedNumber Base – 1 reserved Function

Byte 6:Bits 7:4: This nybble selects the number base.

0: Invalid/reserved.1-15: Number base-1. For example, 1=base 2 (binary).

Bit 3: Reserved; set to 0.Bits 2:0: Data field function.

0: Transfer. This means the user has finished editing and is finalizing the value; the Active field and Standby field have probably been reversed since the last input. This is the equivalent of sending e.g. BUTTON_NAV1_ACTIVE_STANDBY.

1: Standby. The user is editing the Standby field but has not hit the Transfer button. This is for information only; the plug-in may store these values for later retrieval, or use them to update duplicate displays.

2-7: reserved.Byte 7: Reserved, set to 0.

Page 65: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Byte 8 Byte 9 Byte 10 Byte 11 Byte 12Digit 1 (MS) Digit 2 Digit 3 Digit 4 Digit 5 (LS)

bit 7 6:5 4 3:0 7:5 Bit 4 3:0 7:5 Bit 4 3:0 7:5 Bit 4 3:0 7:5 Bit 4 3:0Sign 0 dp val 0 dp val 0 dp val 0 dp val 0 dp val

Bytes 8-12: Active FieldByte 8: Sign and Most Significant Digit

Bit 7: Sign bit for the Active Field.0: Positive or unsigned.1: Negative.

Bits 6:5: Reserved; set to 0.Bit 4: Decimal Place bit. Only one digit in each field may have a

decimal place, but a decimal place is not required.Bits 3:0: Value of this digit. The value range depends on the

number base defined.Bytes 9-12: Four digits from second-most significant to least

significant.Bits 7:5: Reserved; set to 0.Bit 4: Decimal Place bit. Only one digit in each field may have a

decimal place, but a decimal place is not required.Bits 3:0: Value of this digit. The value range depends on the

number base defined.

Byte 13 Byte 14 Byte 15 Byte 16 Byte 17Digit 1 (MS) Digit 2 Digit 3 Digit 4 Digit 5 (LS)

bit 7 6:5 4 3:0 7:5 Bit 4 3:0 7:5 Bit 4 3:0 7:5 Bit 4 3:0 7:5 Bit 4 3:0Sign 0 dp val 0 dp val 0 dp val 0 dp val 0 dp val

Bytes 13-17: Standby FieldByte 13: Sign and Most Significant Digit

Bit 7: Sign bit for the Standby Field.0: Positive or unsigned.1: Negative.

Bits 6:5: Reserved; set to 0.Bit 4: Decimal Place bit. Only one digit in each field may have a

decimal place, but a decimal place is not required.Bits 3:0: Value of this digit. The value range depends on the

number base defined.Bytes 14-17: Four digits from second-most significant to least

significant.Bits 7:5: Reserved; set to 0.Bit 4: Decimal Place bit. Only one digit in each field may have a

decimal place, but a decimal place is not required.Bits 3:0: Value of this digit. The value range depends on the

number base defined.

Page 66: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.2.6.5.2 Format 1Format 1 was designed to support panels with a single multi-digit field and a local edit function. One example would be a Transponder with a keypad.

Note that binary-coded fields are not considered multi-byte integers in the usual sense and are not subject to the normal endian rules.

Byte 6 Byte 7Bits 7:4 Bit 3 Bits 2:0 Bits 7:4 Bits 3:0

Number Base – 1 reserved Function reserved Digit Count

Byte 6:Bits 7:4: This nybble selects the number base.

0: Invalid.1-15: Number base-1. For example, 1=base 2 (binary).

Bit 3: Reserved; set to 0.Bits 2:0: Data field function.

0: Execute. This means the user has finished editing and is finalizing the value.

1-7: reserved.Byte 7:

Bits 7:4: Reserved; set to 0.Bits 3:0: Number of digits. This may be a value from 1 to 12.

Byte 8 Byte 9 Byte 10 … Byte n+7Digit 1 (MS) Digit 2 Digit 3 … Digit n (LS)

bit 7 6:5 4 3:0 7:5 Bit 4 3:0 7:5 Bit 4 3:0 … 7:5 Bit 4 3:0Sign 0 dp val 0 dp val 0 dp val … 0 dp val

Bytes 8-n+7: Active FieldByte 8: Sign and Most Significant Digit

Bit 7: Sign bit for the Active Field.0: Positive or unsigned.1: Negative.

Bits 6:5: Reserved; set to 0.Bit 4: Decimal Place bit. Only one digit in each field may have a

decimal place, but a decimal place is not required.Bits 3:0: Value of this digit. The value range depends on the

number base defined.Bytes 9-n+7: n-1 digits from second-most significant to least

significant.Bits 7:5: Reserved; set to 0.Bit 4: Decimal Place bit. Only one digit in each field may have a

decimal place, but a decimal place is not required.Bits 3:0: Value of this digit. The value range depends on the

number base defined.

Page 67: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.3 HID Report 3 (PC to HWC)All HID report 3 messages are 10 bytes long. Unused bytes are set to zero (0) unless otherwise specified.

3.2.3.1 AnnunciatorsThese are alerting devices. They may be lights, alarms, buzzers, or shakers, but the intention is to alert the pilot of some condition or situation that may require his attention and immediate action.

Annunciator messages are sent from the PC to the HWC only.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 6-9Device Class (0x06)

Selector Message Index Digital Value Reserved (set to 0)

3.2.3.1.1 Device ClassDevice Class 0x06 has been reserved for Annunciators. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.3.1.2 SelectorThis selects one of n identical outputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.3.1.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.3.1.4 Digital ValueByte 4 sets the new state of the annunciator. This is usually a simple on/off state.

At this time we have reserved one (1) byte for the value. Should we ever need more than 256 states, the value can be expanded into the following reserved byte (6) for up to 65536 distinct states. Even more bytes are available in the unlikely event more than that are needed.

This field is encoded as an unsigned quantity.

3.2.3.1.5 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 68: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.3.2 IndicatorsIndicators are lights or lighted words that show the pilot a current status or condition, but such condition is not generally urgent in nature.

Indicator messages are sent from the PC to the HWC only.

Byte 0 Byte 1 Byte 2-3 Byte 4-5 Byte 6-9Device Class (0x07)

Selector Message Index Digital Value(see text)

Reserved (set to 0)

3.2.3.2.1 Device ClassDevice Class 0x07 has been reserved for Indicators. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.3.2.2 SelectorThis selects one of n identical outputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.3.2.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.3.2.4 Digital ValueByte 4 sets the new state of the indicator. This is usually a simple on/off state.

At this time we have reserved two (2) bytes for the value. In the vast majority of cases, only the first byte is used (byte 4). Whenever need more than 256 states, the value is expanded into the following otherwise reserved byte (byte 5). Even more bytes are available in the unlikely event more are needed. If byte 5 is not used, it should be set to 0.

This field is encoded as an unsigned quantity unless otherwise specified.

Note: There are one or more messages that use multiple bytes, or do not use a simple 0-n value, or both. They are documented thoroughly. As of this writing, no message requires more than two bytes for its values.

3.2.3.2.5 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 69: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.3.3 Illuminators & Mode ControlIlluminators are illuminating lights such as taxi lights, beacons, strobes, cabin lights, no-smoking signs, panel illumination. Mode control allows the PC to adjust or change modes of a panel or a control on the panel.

Illuminator/mode control messages are sent from the PC to the HWC only.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 6-9Device Class (0x08)

Selector Message Index Digital Value Reserved (set to 0)

This class was originally intended to be used to control illuminators only. However, in March, 2012 we determined the need for a mode control class. When we considered the options we realized that we had already perverted the intention of the Illuminator class somewhat when we used it for power control, and decided to go the rest of the way and declare it a Mode Control class. Conceptually, it’s easier to justify lumping panel illumination brightness into “mode control” than it is to justify lumping power, avionics power, and simulator power control into “illumination”. We will not rename any existing constants but we may provide both “MODE_” and “ILLUMINATOR_” versions.

3.2.3.3.1 Device ClassDevice Class 0x08 has been reserved for Illuminators and Mode Control messages. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.3.3.2 SelectorThis selects one of n identical outputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.3.3.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.3.3.4 Digital ValueByte 4 sets the new state of the illuminator or mode. This is usually a simple on/off state but may vary.

At this time we have reserved one (1) byte for the value. Should we ever need more than 256 states, the value can be expanded into the following reserved byte (6) for up to 65536 distinct states. Even more bytes are available in the unlikely event that more are needed.

This field is encoded as an unsigned quantity.

Page 70: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.3.3.5 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 71: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.3.4 ActuatorsThese are devices that actual cause a physical action, such as closing a door, running the electric trim, locking the landing gear.

Actuator messages are sent from the PC to the HWC only.

Byte 0 Byte 1 Byte 2-3 Byte 4-5 Byte 6-9Device Class (0x09) Selector Message Index Value Reserved (set to 0)

3.2.3.4.1 Device ClassDevice Class 0x09 has been reserved for Actuators. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.3.4.2 SelectorThis selects one of n identical outputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.3.4.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.3.4.4 ValueBytes 4 and 5 set the new state of the actuator. This is usually a simple on/off state. In some cases it may serve as an analog value.

This field is encoded as an unsigned quantity.

3.2.3.4.5 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 72: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.3.5 Analog DisplaysAnalog displays are devices that display a continuous value, such as a speed dial, temperature, or propeller RPM.

These messages will be sent from the PC to the HWC only.

Byte 0 Byte 1 Byte 2-3 Byte 4-7 Byte 8-9Device Class (0x0B)

Selector Message Index

Analog Value

Reserved (set to 0)

3.2.3.5.1 Device ClassDevice Class 0x0B has been reserved for Analog Displays. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.3.5.2 SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.3.5.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.3.5.4 Analog ValueBytes 4 through 7 hold the value to be displayed on the device.

Limits for this value are specified at Full Report time using the METADATA_REPORT_SUPPORTED message.

At this time we have reserved two (4) bytes for the value. This multi-byte field is encoded as an unsigned 32-bit integer, LSB-first.

3.2.3.5.5 ReservedThese bytes are reserved for future expansion. Set them to zero (0).

Page 73: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.3.6 Digital DisplaysAny display with discrete numerical digits, such as the COMM and NAV units.

These messages will be sent from the PC to the HWC only.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 5-9Device Class (0x0C)

Selector Message Index Decimal point, Sign, ½ digit

Packed binary-coded digits

3.2.3.6.1 Device ClassDevice Class 0x0C has been reserved for Analog Displays. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.3.6.2 SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

Note: The Transponder slave uses this to select one of four independent digits – unless it’s zero, which treats all four digits as one display. This usage bends the normal rules.

3.2.3.6.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.3.6.4 Decimal Point, Sign, Half-digitByte 4 is divided into three bit-fields that tell the location of a decimal point, if any; indicate the sign of the number; and hold a 2-bit value for a leading half-digit.

Bits 7:3 Bit 2 Bits 1:0Decimal Point Sign Half-digit

3.2.3.6.4.1 Decimal PointThis value indicates where a decimal point should be placed.

0. No decimal point should be displayed.1. Decimal point is placed to the right of the right-most digit.2. Decimal point is placed to the right of the second-right-most digit.

Page 74: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

… and so on. Any value for this field that is not consistent with the limits of the display will be ignored.

3.2.3.6.4.2 SignIf the display in question has a separate minus sign, this field can be used to display it.

0. No minus sign is displayed, or a plus sign is displayed, depending on the design of the display.

1. A minus sign is displayed.

3.2.3.6.4.3 Half-DigitSome displays may have a so-called half-digit as its most significant digit. This digit is usually designed to display only a “1” and may have been used to save money on older hardware. We are allowing the use of the two leftover bits as a half-digit with values from 0 to 3 in case it might be useful. Since the entire digital display message contains 10 full digits, we do not expect ever to have to use the half-digit.

Leave this field set to zero (0) if it is not being used.

3.2.3.6.5 Packed Binary-coded DigitsThe last five bytes of the message are divided into half-bytes, or “nybbles”. Each of these ten nybbles may contain a digit with a value from 0 to 15. How each of those values is displayed depends on the display hardware.

The ten digits are generally used to contain a single value. Any unused digits must be set to blank (0xF) (the half-digit to zero). Values are encoded from most-significant to least-significant going from the lowest address to the highest address byte. In each byte, the high nybble contains the more significant value. The least significant byte will always be in bits 4:0 of message byte 9. A single-digit value will be placed in that location with the rest of the field being set to zero.

Most of the avionics slaves accept decimal digits. They map the values E and F to two special characters: E maps to a minus sign, and F maps to a blank. Since the Decimal Display message format does not specify what is to be done with the values, any values passed in these digits will be passed downstream intact. For more information about slaves see slave_protocol.doc.

Example: +12345.67 for engine 0, message index 2 (DIGITAL_DISPLAY_COM1_RIGHT).

0 1 2-3 4 5 6 7 8 9Class Selector Msg Index DP etc. Three unused digits and seven digits0x0C 0x00 0x0002 0x14 0x00 0x01 0x23 0x45 0x67

Page 75: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.4 Bi-directional Classes

3.2.4.1 Circuit BreakersA method of simulating certain kinds of errors by tripping a circuit breaker by remote control.

Circuit breaker messages are sent in both directions.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 5-9Device Class (0x0A)

Selector Message Index Value (command)

Reserved (set to 0)

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 5-19Device Class (0x0A)

Selector Message Index Value (response)

Reserved (set to 0)

The row and column information may be sent with the responses for display purposes only (primarily for the Test GUI). They may be safely ignored if not needed.

Byte 0 Byte 1 Byte 2-3 Byte 4 Byte 5-8 Byte 9 Byte 10 Byte 11 Byte 12 Bytes 13-19Device Class (0x0A)

Selector Message Index

Value (response)

Reserved(set to 0)

Modifiers Row Column Cluster Reserved(set to 0)

3.2.4.1.1 Device ClassDevice Class 0x0A has been reserved for Circuit Breakers. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.4.1.2 SelectorThis selects one of n identical outputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.4.1.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

Page 76: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.4.1.4 Value (command)Byte 4 holds a digital value:

0. Do nothing.1. Trip the breaker.2. Reset the breaker.

It may not be possible to reset all breakers by remote control, depending on the hardware design. Any breakers not capable of being reset will ignore the reset command.

3.2.4.1.5 Value (response)Byte 4 holds the current state of the breaker. For our purposes a breaker is considered as a switch, so that “on” means the breaker is allowing current to flow and “off” means the breaker has been tripped.

0. The breaker has been tripped; as a switch it is turned off. In other words it is in an open position.

1. The breaker is closed and is not tripped (or has been reset since the last trip) and is allowing current to flow; as a switch it is turned on.

3.2.4.1.6 ModifiersOne byte has been reserved for modifiers.

Bits 7:2 Bit 1 Bit 0

Reserved (set to 0) Includes Row/column Reserved (set to 0)

3.2.4.1.6.1 Includes Row/Column MetadataBit 1, if on, indicates that bytes 9 and 10 contain row and column metadata. These are optional metadata, only used for display purposes (primarily for the Test GUI) and may be safely ignored if not needed.

3.2.4.1.6.2 ReservedThese bits are reserved for future expansion. Set them to zero (0).

3.2.4.1.7 RowThis contains the button’s row number. This is a physical position and is only intended for use in display code. Row numbers are 1 to 255. 0 means there are no row data, or there is only one row.

3.2.4.1.8 ColumnThis contains the button’s column number. This is a physical position and is only intended for use in display code. Column numbers are 1 to 255. 0 means there are no column data, or there is only one column.

Page 77: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.4.1.9 ClusterThis contains an optional cluster number. This allows separate sets of physically contiguous buttons to be handled separately. Cluster numbers are 1 to 255. 0 means there are no cluster data, or there is only one cluster.

3.2.4.1.10 ReservedThese bytes are reserved for future expansion. Set them to zero (0).These bytes are reserved for future expansion. Set them to zero (0).

Page 78: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.4.2 CalibrationCalibration messages are a special class of metadata message. They have multiple formats and use both command and response modes. Unlike metadata messages, they use a standard header.

These messages will be sent in both directions between the PC and the HWC.

Byte 0 Byte 1 Bytes 2-3 Bytes 4-9 or 4-19Device Class (0xFE) Selector Message Index Calibration messages

3.2.4.2.1 Device ClassDevice Class 0xFE has been reserved for Calibration messages. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.4.2.2 SelectorThis selects one of n identical inputs, usually left vs. right or engine number. See paragraph 3.2.1.4.2 for more information about selectors. This field is encoded as an unsigned 8-bit quantity.

3.2.4.2.3 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This multi-byte field is encoded as an unsigned 16-bit quantity, LSB-first.

3.2.4.2.4 Calibration MessagesThe message data format varies depending on the message being sent. Please see the individual messages (4.1) for more information.

Page 79: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3.2.4.3 Metadata MessagesBecause Metadata messages are used for so many different things, the format is not fixed, unlike the other formats. Each metadata message has its own format beyond the first two bytes.

These messages will be sent in both directions between the PC and the HWC.

Byte 0 Byte 1 Bytes 2 – 19Device Class (0xFF) Message Index Message Data

3.2.4.3.1 Device ClassDevice Class 0xFF has been reserved for Metadata Messages. See paragraph 3.2.1.4.1 for more information about device classes. This field is encoded as an unsigned 8-bit quantity.

3.2.4.3.2 Message IndexSelects which message is being sent. See paragraph 3.2.1.4.3 for more information about message indexes. This field is encoded as an unsigned 8-bit quantity.

3.2.4.3.3 Metadata MessagesThe message data format varies depending on the message being sent. Please see the individual messages for more information.

Page 80: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4 Messages

4.1 Analog ControlsAn analog control is a device that sends one of a continuous range of values depending on its position or setting. Theoretically the range has an infinite set of values, but in reality the control output is read by an analog-to-digital converter and has a limited resolution (10 bits by default, allowing for 1024 different values).

Analog control messages consist of 3 fields and a variable number of optional calibration values.

1. The header, described in 3.2.1.4, which includes a device class, selector in case of multiple objects, and a message number. Analog controls have a device class of 1.

2. The actual value of the current setting or position of the control.3. A format field. This either describes the number of bits in the value or the

format of appended calibration values.4. Zero or more calibration values.

The presence of calibration values generally implies the number of usable bits by describing the calibration limits; obviously no more bits are needed for the value than for the limits. However, that is not true for calibration types that do not include limits. This is due to lack of foresight on the part of the designer. For the time being the default number of bits for analog values is 10.The actual value occupies two (2) bytes in little-endian format (LSB first), and three more bytes have been reserved after them. Practically speaking four bytes should be severe overkill; the last of those bytes is more likely to be used for flags or other formatting information.Immediately after the reserved bytes is a byte that holds the format of the analog value and associated calibration values, if any.

The high bit, bit 7, = 1 if the value is signed and 0 if unsigned. Bit 6 = 1 if the message includes calibration data and 0 if it does not. Bit 5 is context-dependent and must be set to 0 if not used. If bit 6 == 0, bits 4:0 tell the number of bits in the analog value. If that field is

zero (0), the number of bits is actually 32. (So you see we have a four-byte limitation for the analog value anyway.)

If bit 6 == 1, bits 4:0 become an index into a list of possible calibration values. This means that we are passing raw data plus calibration values to the host (PC), which then must apply them appropriately. We did this to ease the burden on the embedded CPU which has fewer resources and, specifically, does not include a divide function.

That list is:0. No calibration values are included.

Page 81: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

1. Single-point offset. A single 16-bit offset value is included that is added to the analog value by the PC. This is obsolete. On one hand, a simple center point can easily be calculated by the hardware controller. On the other hand, this field type cannot properly describe the magnitude of the value.

2. Limits calibration. Two 16-bit values are included that represent the low and high limits of the value, respectively.

3. Limits calibration plus center point. This is the same as limits calibration but includes a third 16-bit value that represents a neutral or “at-rest” value. Note that the order is the same, with the center point following the limits.

4. Four-point turbo throttle calculation. This is a limits calibration plus two transition points between the normal flight range, the “beta” range, and the reverse range. As before the first two are the lower and upper limits of the entire range. These are followed by the lower transition point (between the beta range and reverse) and the higher transition point (between the flight and beta ranges). All values are 16 bits.

5. Limits calibration plus center points with null zone. This is similar to the limits calibration plus center point, but in this case the center is a range, not just a point. This is useful for controls that may not have a fixed center point but could come to rest over a range of values. As before, the limits come first, then the lower center point, then the higher center point. All values are 16 bits.

4.1.1 MessagesAnalog control messages are sent from the controller to the host PC.

4.1.1.1 CONTROLS_NONE (0)This index is invalid and may not be used to send data. Any messages using this index should be ignored.

4.1.1.2 CONTROLS_ELEVATOR_TRIM (1)Header Value reserved Analog

Formatreserved

01 00 01 00 LSB MSB 00 00 00 (0A) 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 00 01 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal.

This is the elevator trim wheel setting, which may be a virtual setting in the case of an encoder-based wheel. Generally this is used with limits calibration data.

In the case of an encoder there is no calibration; however the wheel’s virtual limits are adjustable, so those values are passed along as calibration values. The calculations will be the same in any case.

Page 82: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

In the case of a potentiometer-based wheel the calibration limits will be based on the physical limits and how the device is adjusted. Our normal devices have limit switches; calibration generally consists of running the wheel to both limits and recording where it stops.

The B200 wheel actually uses the entire range of the potentiometer and has no limit switches. Instead we pad the limits by stopping about 6% before we reach either end of the range. The limits are a hard-coded constant in the firmware but are passed as calibration values so the host PC can use the same algorithms as for other elevator trims.

This provides a consistent interface regardless of the actual form of the elevator trim and allows for limits to be changed at run-time.

Note: If the range is adjustable using the METADATA_TRIM_LIMITS or METADATA_TRIM_SENSITIVITY command, the limits will also be passed back as though they were calibration values. Do not apply both sets of limits; they are duplicates. Use one set or the other.

4.1.1.3 CONTROLS_AILERON_TRIM (2)Header Value reserved Analog

Formatreserved

01 00 02 00 LSB MSB 00 00 00 0x – 1x 00 00 00 00 00 00Header Value reserved Analog

FormatHigh Limit various

01 00 02 00 LSB MSB 00 00 00 2x xx xx xx xx xx xxHeader Value reserved Analog

FormatLow

LimitHighLimit

various

01 00 02 00 LSB MSB 00 00 00 4x LSB MSB LSB MSB xx xxAll values are in hexadecimal.

This is the aileron trim, generally a simple knob on a panel or console. Calibration data may follow.

If bit 6=1 of the Analog Format byte, the Analog Format byte is treated as normal (3.2.2.1.6). This overrides bit 5.

If bit 6=0 and bit 5=1 of the Analog Format byte, the message includes data to calculate trim curves to apply before passing the values upstream. Curve data are:

Type of curve (currently exponential or none; linear curve can be specified by an exponent of 1)

Upper limit of data sent to PC (lower limit is always 0) Null zone size

Formats are:0. No curve applied. PC uses the raw data.1. An exponential curve is applied with a null zone.2. No curve is applied, but calibration type 2 (limits) calibration data follow.

Page 83: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3. No curve is applied, but calibration type 3 (limits plus center point) calibration data follow.

4. Reserved, not used.5. No curve is applied, but calibration type 5 (limits plus null zone) calibration

data follow.6. Reserved, not used.

Byte 9 Bytes 10-17Bit 5=0 use the default curve (see 4.1.1.3.1)0x – 1x 00 00 00 00 00 00 00 00

Raw Data Upper Limit set to 020 uuuu 00 00 00 00 00 00

Exponential Curve Upper Limit Exponent Null Zone set to 021 uuuu eeee zzzz 0000

Limits Lower Limit Upper Limit set to 0 set to 022 llll uuuu 0000 0000

Limits+Center Lower Limit Upper Limit Center Point set to 023 llll uuuu cccc 0000

Limits+Null Lower Limit Upper Limit Lower Null Upper Null25 llll uuuu lzlz uzuz

All values are in hexadecimal.

4.1.1.3.1 Bit 5=0, Default CurveIf bits 6 and 5 are both set to 0 then the PC applies the default curve to the trim data, affording backwards compatibility. At this time:

Exponent = 1.3 Limit is specified by bits 4:0 in the usual manner (3.2.2.1.5.4). However if the

entire Analog Format byte is 0x00 (and therefore bits 4:0 are all 0), the limit is 1023 and the null zone size is 36.

Null zone = (Limit+1) * .036 rounded down.

4.1.1.3.2 Raw DataThe PC accepts all data without applying either a curve or a null zone. The first 16 bits starting at byte 10 describe the upper limit; lower limit is 0.

4.1.1.3.3 Exponential CurveThe PC applies an exponential curve to the raw data before using them for trim data. Starting from byte 10:

The first 16 bits are used to specify the upper limit; lower limit is 0. The next 16 bits are used to specify the exponent. To create the transmitted

value from the exponent (when writing firmware), subtract 1 from the exponent and multiply by 10. To turn the received value into an exponent (when writing software), divide the value by 10 and add 1. Thus an exponent

Page 84: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

of 1 is sent as 0; an exponent of 1.3 is sent as 3. The field is unsigned; exponents less than 1 cannot be specified.

The null zone. A null zone is an area surrounding the center of the range where the output is neutral regardless of the input. Values outside the zone are scaled starting at the edge of the zone (there is no abrupt transition). The next 16 bits specify the total size of the zone; ½ of this zone is extended in either direction from the center. If the zone as specified would not be exactly symmetrical in the specified range, it is permissible to round up or down or to simply allow the zone to be asymmetrical as convenient as long as it does not disrupt the user experience. (Chances are a single point more or less will not be noticed.)

For sample code see paragraph 3.2.2.1.7.1.3.1.

4.1.1.3.4 LimitsThis allows for an MFD-type trim (trim wheel with a pot) to be mounted sideways, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 2 format (3.2.2.1.6).

4.1.1.3.5 Limits+CenterThis allows for an MFD-type trim (trim wheel with a pot) to be mounted sideways, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 3 format (3.2.2.1.6).

4.1.1.3.6 Limits+NullThis allows for an MFD-type trim (trim wheel with a pot) to be mounted sideways, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 5 format (3.2.2.1.6).

4.1.1.4 CONTROLS_RUDDER_TRIM (3)Header Value reserved Analog

Formatreserved

01 00 03 00 LSB MSB 00 00 00 0x – 1x 00 00 00 00 00 00Header Value reserved Analog

FormatHigh Limit various

01 00 03 00 LSB MSB 00 00 00 2x xx xx xx xx xx xxHeader Value reserved Analog

FormatLow

LimitHighLimit

various

01 00 03 00 LSB MSB 00 00 00 4x LSB MSB LSB MSB xx xxAll values are in hexadecimal.

This is the rudder trim, generally either a simple knob or a horizontal wheel on a panel or console. Calibration data may follow.

Page 85: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

If bit 6=1 of the Analog Format byte, the Analog Format byte is treated as normal (3.2.2.1.6). This overrides bit 5.

If bit 6=0 and bit 5=1 of the Analog Format byte, the message includes data to calculate trim curves to apply before passing the values upstream. Curve data are:

Type of curve (currently exponential or none; linear curve can be specified by an exponent of 1)

Upper limit of data sent to PC (lower limit is always 0) Null zone size

Formats are:0. No curve applied. PC uses the raw data.1. An exponential curve is applied with a null zone.2. No curve is applied, but calibration type 2 (limits) calibration data follow.3. No curve is applied, but calibration type 3 (limits plus center point)

calibration data follow.4. Reserved, not used.5. No curve is applied, but calibration type 5 (limits plus null zone) calibration

data follow.6. Reserved, not used.

Byte 9 Bytes 10-17Bit 5=0 use the default curve (see 4.1.1.4.1)0x – 1x 00 00 00 00 00 00 00 00

Raw Data Upper Limit set to 020 uuuu 00 00 00 00 00 00

Exponential Curve Upper Limit Exponent Null Zone set to 021 uuuu eeee zzzz 0000

Limits Lower Limit Upper Limit set to 0 set to 022 llll uuuu 0000 0000

Limits+Center Lower Limit Upper Limit Center Point set to 023 llll uuuu cccc 0000

Limits+Null Lower Limit Upper Limit Lower Null Upper Null25 llll uuuu lzlz uzuz

All values are in hexadecimal.

4.1.1.4.1 Bit 5=0, Default CurveIf bits 6 and 5 are both set to 0 then the PC applies the default curve to the trim data, affording backwards compatibility. At this time:

Exponent = 1.3 Limit is specified by bits 4:0 in the usual manner (3.2.2.1.5.4). However if the

entire Analog Format byte is 0x00 (and therefore bits 4:0 are all 0), the limit is 1023 and the null zone size is 36.

Null zone = (Limit+1) * .036 rounded down.

Page 86: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.1.1.4.2 Raw DataThe PC accepts all data without applying either a curve or a null zone. The first 16 bits starting at byte 10 describe the upper limit; lower limit is 0.

4.1.1.4.3 Exponential CurveThe PC applies an exponential curve to the raw data before using them for trim data. Starting from byte 10:

The first 16 bits are used to specify the upper limit; lower limit is 0. The next 16 bits are used to specify the exponent. To create the transmitted

value from the exponent (when writing firmware), subtract 1 from the exponent and multiply by 10. To turn the received value into an exponent (when writing software), divide the value by 10 and add 1. Thus an exponent of 1 is sent as 0; an exponent of 1.3 is sent as 3. The field is unsigned; exponents less than 1 cannot be specified.

The null zone. A null zone is an area surrounding the center of the range where the output is neutral regardless of the input. Values outside the zone are scaled starting at the edge of the zone (there is no abrupt transition). The next 16 bits specify the total size of the zone; ½ of this zone is extended in either direction from the center. If the zone as specified would not be exactly symmetrical in the specified range, it is permissible to round up or down or to simply allow the zone to be asymmetrical as convenient as long as it does not disrupt the user experience. (Chances are a single point more or less will not be noticed.)

For sample code see paragraph 3.2.2.1.7.1.3.1.

4.1.1.4.4 LimitsThis allows for an MFD-type trim (trim wheel with a pot) to be mounted sideways, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 2 format (3.2.2.1.6).

4.1.1.4.5 Limits+CenterThis allows for an MFD-type trim (trim wheel with a pot) to be mounted sideways, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 3 format (3.2.2.1.6).

4.1.1.4.6 Limits+NullThis allows for an MFD-type trim (trim wheel with a pot) to be mounted sideways, such as on an MFD mini-console. Such a device will need to be calibrated; this format uses the standard calibration type 5 format (3.2.2.1.6).

4.1.1.5 CONTROLS_AP_PITCH_TRIM (4)Autopilot pitch trim. This has not been implemented to date.

Page 87: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.1.1.6 CONTROLS_AP_ROLL_TRIM (5)Autopilot roll trim. This has not been implemented to date.

4.1.1.7 CONTROLS_COWL_FLAPS (6)Header Value reserved Analog

Formatreserved

01 00 06 00 LSB MSB 00 00 00 (0A) 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 00 06 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal.

There are two kinds of cowl flaps controls: analog and digital. See 4.2.1.36 for a description of the digital control.

The analog control can consist either of a knob or lever that allows a continuous setting, or a multi-position switch that is translated into one of several fixed positions. Either one will send an analog (or virtual analog) message stating to where to move the cowl flaps.

There may be multiple cowl flaps controls, one per engine.

If there are more engines in the simulator model than there are cowl flaps controls, the simulator should apply them rationally. If there is one cowl flaps control it should control all the engines’ cowl flaps simultaneously. If there are two controls but more than two engines the left control should control engines on the left side of the airplane, and the right control should control engines on the right side of the airplane. Odd engines can be controlled by either control.

See 3.2.1.4.2 for information about engine numbers in the selector field.

This message may include limits-type calibration values.

4.1.1.8 CONTROLS_FLAPS (7)Header Value reserved Analog

Formatreserved

01 00 07 00 LSB MSB 00 00 00 (0A) 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 00 07 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal.

There are two kinds of flaps controls: analog and digital. See 4.2.1.12 for a description of the digital control.

Page 88: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The analog control can consist either of a knob or lever that allows a continuous setting, or a multi-position switch that is translated into one of several fixed positions. Either one will send an analog (or virtual analog) message stating to where to move the flaps.

For example, on the Cessna a four-position flaps switch might transmit values representing 0%, 33.3%, 66.6%, and 100 percent for the top, second, third, and fourth switch positions respectively. It would send the values 0, 341, 682, and 1023 for a 10-bit range; on the Cessna these represent 0°, 10°, 20° and 30° of flaps respectively. The host PC code will see this as though it were an analog flaps control being moved to each of those positions. Note that the value is a fraction of the full travel, and not a direct indication of the number of degrees the flaps should move.

This message may include limits calibration values.

4.1.1.9 CONTROLS_CABIN_ALT (8)Header Value reserved Analog

Formatreserved

01 00 08 00 LSB MSB 00 00 00 (0A) 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 00 08 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal.

Cabin altitude, part of the pressurization system on some aircraft. May include limits calibration data.

4.1.1.10 CONTROLS_THROTTLE_QUADRANT (9)Header Value reserved Analog

Formatreserved

01 0n 09 00 LSB MSB 00 00 00 (0A) 00 00 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

Stop Limit

01 0n 09 00 LSB MSB 00 00 00 46 LSB MSB LSB MSB LSB MSBAll values are in hexadecimal. 0n is the selector and is a value from 0 to 5.

This message allows for a configurable throttle quadrant by allowing the user to assign each axis himself.

The particular axis being sent is indicated via the selector. Selector 0 indicates the left control, 1 indicates the second control, and so on.

Which axis is which (throttle, prop, mix, condition, etc. and for which engine) will have to be determined at the PC depending on the user’s configuration. Most throttle controls will not use the Stop Limit, which is intended for the turboprop

Page 89: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

throttle quadrant. For those (non-turboprop) controls the Stop Limit calibration value will be ignored.

However, if the user selects a turboprop throttle quadrant the Stop Limit is used to determine when the user moves the control out of the normal range. What this means depends on the control:

Throttles have Forward and Reverse ranges. Forward is the normal range. When the user moves the throttle into Reverse, the power curve reverses as well, so that he gets full power at the very bottom of the control’s travel.

When taken out of the normal range the Prop control feathers the propeller. There is no scaling in the feather range; either it’s in the normal range or it’s feathered.

When taken out of the normal range the Condition lever cuts off the fuel. There is no scaling in the fuel cut-off range; either the fuel is flowing or it is cut off.

We provide calibration for the Stop Limit in order to compensate for mechanical variation in the hardware. However, due to analog noise and environmental variations the calibrated Stop Limit may not always be exact. For that reason we provide a certain amount of padding around the Stop Limit in the PC to prevent the airplane going into operational states not intended.

Throttles have a padding of approximately 2% up and 5% down from the Stop Limit. Between those limits the engine will operate forward, in low idle.

Prop levers have an adjustment of approximately 10% down from the Stop Limit. Above that point they will operate normally; below that point they will feather.

Condition levers have an adjustment of approximately 10% down from the Stop Limit. Above that point they will operate normally; below that point they will cut off the fuel.

4.1.1.11 CONTROLS_AUTOPILOT_TURN (10)Header Value reserved Analog

Format01 00 0A 00 LSB MSB 00 00 00 (0A)

All values are in hexadecimal.

Part of some autopilots, it overrides the heading and allows the pilot to impose a constant turn rate.

4.1.1.12 CONTROLS_RUDDER (11)Header Value reserved Analog

FormatLow Limit High Limit Low Center High Center

01 00 0B 00 LSB MSB 00 00 00 45 LSB MSB LSB MSB LSB MSB LSB MSB

All values are in hexadecimal.

Page 90: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is the pair of foot pedals used to control the rudder. There may be more than one pair mechanically coupled together (one for each pilot).

If the control is not subject to control loading, it will have springs that approximate normal control resistance and return it to a neutral position when released.

This may include Limits calibration data with center point and null zone.

4.1.1.13 CONTROLS_TOE_BRAKES (12)Header Value reserved Analog

Formatreserved

01 0n 0C 00 LSB MSB 00 00 00 varies 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 0n 0C 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal. 0n is the selector and is a value from 0 to 3.

The tops of the rudder pedals tilt forward and are used to apply braking power to the landing wheels.

This may include limits calibration data.

We do not mechanically couple the toe brakes as we do the rudder controls. There may be as many as four of these, paired as left and right for pilot and copilot. If there are copilot toe brakes they need to be combined with the pilot brakes thus:

For each foot (left or right): take the pilot’s brake value, scale and offset using the calibration values. Take the copilot’s brake value, scale and offset using the calibration values. Then take the greater of the two resulting values and use it as the braking value for that foot.

The selector field is normally used either for left vs. right or for pilot vs. copilot (or for one of a few other choices) but not for both at the same time. For this special case we’ve used the following selector values:

0. Pilot’s left toe brake.1. Pilot’s right toe brake.2. Copilot’s left toe brake.3. Copilot’s right toe brake.

If there are only pilot toe brakes then the process is obviously much more straightforward.

Page 91: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.1.1.14 CONTROLS_THROTTLES (13)Header Value reserved Analog

Formatreserved

01 0n 0D 00 LSB MSB 00 00 00 varies 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 0n 0D 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal. 0n is the selector.

One or more controls, usually levers but sometimes a pull-knob, that control the amount of power for each engine.

This may include limits calibration data.

4.1.1.15 CONTROLS_TURBO_THROTTLES (14)Header Value reserved Analog

Formatreserved

01 00 0B 00 LSB MSB 00 00 00 (0A) 00 00 00 00 00 00 00 00Header Value reserved Analog

FormatLow Limit High Limit Reverse-to-

ground idle transition

Ground-idle-to-

flight transition

01 00 0B 00 LSB MSB 00 00 00 44 LSB MSB LSB MSB LSB MSB LSB MSB

All values are in hexadecimal.

One or more levers that control the amount of power for each engine, plus the ground idle and reverse.

This may include turbo throttle (limits plus transition points) calibration data.

4.1.1.16 CONTROLS_PROP_PITCH (15)Header Value reserved Analog

Formatreserved

01 0n 0F 00 LSB MSB 00 00 00 varies 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 0n 0F 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal. 0n is the selector.

One or more controls, usually levers but sometimes a pull-knob, that control the pitch of each propeller.

This may include limits calibration data.

Page 92: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.1.1.17 CONTROLS_MIX (16)Header Value reserved Analog

Formatreserved

01 0n 10 00 LSB MSB 00 00 00 varies 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 0n 10 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal. 0n is the selector.

One or more controls, usually levers but sometimes a pull-knob, that control the fuel mixture of each engine.

This may include limits calibration data.

On turbo-prop airplanes these might be used as condition levers.

4.1.1.18 CONTROLS_AILERONS (17)Header Value reserved Analog

FormatLow Limit High Limit Low Center High Center

01 00 11 00 LSB MSB 00 00 00 45 LSB MSB LSB MSB LSB MSB LSB MSB

All values are in hexadecimal.

A control, usually part of the function of a yoke or stick, that controls the ailerons. Turning the yoke counter-clockwise or moving the stick left will transmit a lower value which turns the plane left. Turning the yoke clockwise or moving the stick right will transmit a higher value which turns the plane right.

If the control is not subject to control loading, it will have springs that approximate normal control resistance and return it to a neutral position when released.

There will be only one aileron control on an airplane. If there is a copilot station, dual controls are mechanically coupled to provide a single input.

This may include limits calibration data with center point and null zone.

4.1.1.19 CONTROLS_ELEVATORS (18)Header Value reserved Analog

FormatLow Limit High Limit Low Center High Center

01 00 12 00 LSB MSB 00 00 00 45 LSB MSB LSB MSB LSB MSB LSB MSB

All values are in hexadecimal.

A control, usually part of the function of a yoke or stick, that controls the elevators. Pushing the yoke or the stick forward will transmit a lower value which aims the

Page 93: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

nose down. Pulling the yoke or the stick back will transmit a higher value which aims the nose up.

If the control is not subject to control loading it will have springs that approximate normal control resistance and return it to a neutral position when released.

There will be only one elevator control on an airplane. If there is a copilot station, dual controls are mechanically coupled to provide a single input.

This may include limits calibration data with center point and null zone.

4.1.1.20 CONTROLS_TILLER (19)This is a steering tiller normally only found on larger jets for taxi maneuvering. This control has not been implemented to date.

4.1.1.21 CONTROLS_BACKLIGHT (20)Header Value reserved Analog

Format01 xx 14 00 nn 00 00 00 00 08

All values are in hexadecimal.

This is a panel lighting control. If it is implemented as a switch it will send reasonable analog values for each of the switch positions.

4.1.1.21.1 ValueThis is a number from 0 to 255, where 0 is 0% (off) and 255 is 100% (full on).Backlighting does not need much precision and, in fact, 256 levels is more than enough for this function. If anything deals with a different range – for example, an analog input to a 10-bit A/D converter, or a slave with a 4-bit level value field – it will just have to scale to or from 0 to 255 before sending CONTROLS_BACKLIGHT or after receiving ILLUMINATOR_BACKLIGHT.

In many cases our simulators have a three-way switch to control the backlighting, rather than using a continuous input like a potentiometer. In those cases, rather than struggle with defining a different control for each type of lighting control, the firmware simply sends a hard-coded value for each switch position. The MFD lights panel, for example, sends 0 for off, 127 for low, and 255 for high. (This could be considered an extreme example of scaling the input to 0-255.)

4.1.1.21.2 Selector

Page 94: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The selector is normally zero (0), but may be used to distinguish multiple lighting systems. The Cessna switch panel supports four different backlight systems; each input controls a different system. Other systems are added as needed.

0. Universal. This is the default if only one system is supported.1. Switch panel. This controls the lighting on the switch panel and, on the

Cessna, the circuit breaker panel. It may encompass other panels that do not fall into any of the other categories.

2. Standby Instruments.3. Pedestal. This controls the lighting on the pedestal, which usually includes

trim controls and fuel select, and possibly other controls.4. Avionics.5. Annunciator Lights.6. G1000 backlights under control of a dedicated brightness knob.7. Reserved.8. Reserved.

During full-report time, each device that supports lighting should report an INDICATOR_BACKLIGHT for each selector that it supports, and should set the appropriate selector in each report. The plug-in should then send only appropriate backlight messages to each reporting device. Each device should filter and obey incoming messages as appropriate.

Note that reserved selectors correspond to ILLUMINATOR_BACKLIGHT selectors that are under exclusive control of software other than the PFC plug-in. Note that the plug-in need not necessarily carve out specific exceptions, as long as nobody creates a control that generates a brightness command with one of these selectors.

It is possible for one device to control lighting for more than one system, so it is important for the plug-in to allow multiple backlight selectors on a device.

4.1.1.22 CONTROLS_CABIN_CLIMB_RATE (21)Header Value reserved Analog

Format01 00 15 00 LSB MSB 00 00 00 varies

All values are in hexadecimal.

Controls the rate of air pressure climb inside a pressurized cabin.

Page 95: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.1.1.23 CONTROLS_THROTTLE_W_FUEL_CUTOFF (22)Header Value reserved Analog

Format01 00 16 00 LSB MSB 00 00 00 varies

All values are in hexadecimal.

This is a helicopter throttle. It is very much like a Turboprop throttle in that it has a transition point, but instead of going into reverse below that point, it will cut off the fuel.

4.1.1.24 CONTROLS_COLLECTIVE (23)Header Value reserved Analog

Format01 00 17 00 LSB MSB 00 00 00 varies

All values are in hexadecimal.

This is a helicopter collective control.

4.1.1.25 CONTROLS_ROTOR_BRAKE (24)Header Value reserved Analog

Format01 00 18 00 LSB MSB 00 00 00 varies

All values are in hexadecimal.

This is a brake for a helicopter rotor. The higher the value, the greater the braking force.

See also SWITCH_ROTOR_BRAKE (324).

4.1.1.26 CONTROLS_CARB_HEAT (25)Header Value reserved Analog

Format01 ss 19 00 LSB MSB 00 00 00 varies

All values are in hexadecimal. ss is the selector.

This is an analog carb heat control. It may include limits data.

Page 96: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.1.1.27 CONTROLS_COUNTThis is not actually a message but a count of analog control messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 97: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2 Digital ControlsA digital control is a device that sends data in two or more discrete states, e.g. “on” and “off”; “up”, “down”, and “neutral”; and so on. Typical types of digital controls are:

Push-buttons. These are usually momentary push-and-release switches, but they may also be momentary rocker or toggle switches.

Toggle switches, rocker switches. Toggle switches have a handle, often shaped like a baseball bat, that can be moved through a single plane. Rocker switches have a curved surface that can be rocked back-and-forth. Generally these have two or three positions. Some three-position switches are momentary in one or both non-center positions, such as a flaps switch which always returns to neutral when released. There are also push-on/push-off switches that latch both states.Occasionally toggle switches will have protective covers or a spring-loaded locking mechanism, to prevent accidental changes.

Multi-position switches. These are either rotational switches (turn clockwise or counter-clockwise to select) or toggle-type switches with more than three positions. These can also have both momentary and non-momentary functions, such as the magneto switches which have a momentary “start” function in the full clockwise position.

In addition to actual controls we have two types of virtual control. Status messages give the current status of some devices. For example, the

B200 electric trim system keeps track of a number of factors to determine whether the electric trim can be operated. Rather than force the PC to parallel the logic (and chance the two going out of synch) we provide a status message. Consider the status message as a virtual switch.

Event messages are sent upon certain events occurring. These will be sent once per event, similar to button presses.

Digital control messages consist of 3 fields or 5 fields.1. The header, described in 3.2.1.4, which includes a device class, selector in

case of multiple objects, and a message number. Digital controls have a device class of 2.

2. The actual value of the current setting or position of the control.3. A flag value. This is set to 0 in most cases. If set to 1, the control includes

physical layout metadata. This is intended for display purposes and may be ignored when not needed.

4. A row number.5. A column number.

The value is an 8-bit unsigned field, though there is room for expansion if needed.

Page 98: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Message names start with “BUTTON_” or “SWITCH_”. If it’s a button, it’s probably a 2-value momentary function. It may or may not actually be a push-button, but we probably will name it as a button if it behaves like a push-button. Anything called a “switch” may or may not have a combination of momentary and non-momentary functions, but chances are it has at least one non-momentary function. This would include push-on/push-off buttons. We try to name them by how they function logically rather than their physical manifestation. If it acts like a button, we call it a button even if it looks like a switch.

Another way to look at it: if it can be replaced by a momentary push-button, we call it a button. There’s a good chance it will be on a later model. If it can be replaced by a non-momentary switch, we’ll call it a switch.

It's important to understand the difference between how a button operates in the logic. A button is a control that triggers an action when pressed, but not released. For example, when you press a "transfer" button (↔) on one of the radios, it causes the radio to swap the active and standby frequencies. Releasing the button does nothing. But when you set a toggle switch to "on" it causes something to happen, and when you set it to "off", something different happens. Unlike the button, each operation of that switch changes the state of whatever system it's tied to.

Sometimes we call something a button that's operated by a physical pushbutton, but actually acts as a switch. Let's take the example of a lamp test: when you press it, it turns on all the lamps; when you release it, the lamps return to their previous state. In our logic this is the behavior of a switch, not a pushbutton, even if it's momentary.

Thus SWITCH_PITCH_TRIM is named correctly in spite of the fact that it's a momentary device. BUTTON_CWS is not, because releasing it cancels CWS mode; it's actually a switch.

If you're writing the logic for a plug-in, it's critical that you keep this in mind: we've called things by the wrong name because when we named them we looked at the physical form instead of the logical operation. Be sure that a momentary control that changes state on release calls the switch logic, and not the pushbutton logic.

Occasionally a message will start with “STATUS_” instead. This represents a digital status condition that may not be generated by a physical switch. There are also messages that start with “EVENT_” that represent event occurrences. An event needs to be acted upon immediately, where a status is accessed when needed.

In order that repeated button messages should not trigger two button pushes, the PC code should wait for a “release” message before acting on the next “push” message. The firmware should likewise always send “release” when the button is released.

Page 99: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Similarly, an event occurrence will send a value of 1 (equivalent to “pushed”) when it happens; it should follow up with a value of 0 (equivalent to “released”) afterwards even if the situation causing the event is still happening. The zero value is not necessarily intended to clear the event; it is merely used to indicate that the next event message is a new event.

In addition the message may contain row and column metadata. This information is intended for telling a user test program how to display the buttons and may be safely discarded.

Header Value reserved Flags Row/ColumnClass (02)

Selector Message Index 8 bits unsigned

00 00 00 00 Bit 1 = Row/Col

row col clusterLSB MSB

All values are in hexadecimal.

Flags:Bits 7:2 = reserved.Bit 1 = 1 if row/column/cluster data are included.Bit 0 = reserved.

Row is the physical row the button is in. Valid rows are 1 to 255. If there is only one row it may be sent as 0.

Col is the physical column the button is in. Valid columns are 1 to 255. If there is only one column it may be sent as 0.

Cluster is an index that allows a panel to have multiple sets of row/column clusters. For example, the G1000 Retrofit Panel has both an autopilot cluster on the left and an audio panel cluster on the right. These are physically separate clusters of controls but each may be arranged differently depending on the G1000 panel models being simulated. Valid clusters are 1 to 255. If there is only one cluster is may be sent as 0.

4.2.1 MessagesDigital control messages are sent from the controller to the host PC.

4.2.1.1 SWITCH_NONE (0)This index is invalid and may not be used to send data. Any messages using this index should be ignored.

4.2.1.2 SWITCH_PROP_SYNC (1)Header Value Values: 0. Off

02 00 01 00 nn 1. On

Page 100: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

All values are in hexadecimal.

This enables or disables propeller synchronization (to prevent beat frequencies from driving the crew and passengers crazy). It is a two-position switch.

4.2.1.3 SWITCH_AVIONICS_MASTER (2)Header Value Values: 0. Off

02 00 02 00 nn 1. OnAll values are in hexadecimal.

This powers on and off all Avionics functions. Older models send a message but may also switch power to the Avionics stack. It is a two-position switch.

4.2.1.4 SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED (3)Header Value Values: 1. Down

02 00 03 00 nn 0. Off 2. UpAll values are in hexadecimal.

When the user hits the electric trim switch on the yoke it usually causes two immediate actions:

1. The electric trim moves in the indicated direction, if conditions do not prevent it.

2. It sends a message SWITCH_PITCH_TRIM.

As the wheel turns it sends updated position information (see 4.1.1.2). The PC host software ignores the switch message (except to disconnect the autopilot) and uses the positional information to update the simulation. (Note: The above describes PFC’s X-Plane plug-in operation. Other PC host software may operate by running the virtual wheel by the trim switch and correcting position when it receives positional information.)

However, there are simulators that do not include an electric trim wheel, notably the Cirrus II. In that case the firmware will send this command, SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED, instead of the usual SWITCH_PITCH_TRIM (see 4.2.1.26). The PC host software knows that it should pass the switch activity into the simulation, which will then update the (simulated) wheel movement on its own.

0. Pitch trim motor off.1. Pitch trim motor moves the trim so as to pitch the nose down.2. Pitch trim motor moves the trim so as to pitch the nose up.

Page 101: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This replaces “SWITCH_APU” which was badly defined and had never been implemented.

Note: This is nearly obsolete. All devices now send supported reports; if a full report includes a trim switch but doesn’t include an electric trim servo, it’s a pretty good bet that there is no trim wheel. The plug-in handles this gracefully.

4.2.1.5 SWITCH_LANDING_GEAR (4)Header Value Values: 1. Down

02 00 04 00 nn 0. Up 2. NeutralAll values are in hexadecimal.

This controls the raising and lowering of the landing gear. It can be a two- or three-position switch.

It may be a locking switch that must be pulled away from the panel to release.

The B200 has a switch that toggles normally but has a “J-hook” lock with a solenoid that locks the gear lever in the down position as long as there is weight on the wheels.

The “neutral” position is not typically used.

4.2.1.6 SWITCH_NAV (5)Header Value Values: 0. Off

1. On02 00 05 00 nnAll values are in hexadecimal.

This turns on and off the navigation lights.

4.2.1.7 SWITCH_STROBE (6)Header Value Values: 0. Off

1. On02 00 06 00 nnAll values are in hexadecimal.

This turns on and off the strobe lights.

Page 102: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.8 SWITCH_BEACON (7)Header Value Values: 0. Off

1. On02 00 07 00 nnAll values are in hexadecimal.

This turns off the beacon light, also known as the anti-collision light.

4.2.1.9 EVENT_MOTOR_STOPPED_UNEXPECTEDLY (8)Header Value Values: 0. No action

02 00 08 00 nn 1. StoppedAll values are in hexadecimal.

If the user manually stops the elevator trim wheel while the motor is running, it will send this message. It should be treated as an A/P Disconnect.

This replaces SWITCH_WING_LIGHT which has never been implemented.

4.2.1.10 BUTTON_SIM_PAUSE (9)Header Value Values: 0. Released

02 00 09 00 nn 1. PressedAll values are in hexadecimal.

Press and release once to pause the simulator or, if already paused, to resume simulation.

This replaces SWITCH_WHEEL_WELL_LIGHT which has never been implemented.

4.2.1.11 SWITCH_ENGINE_MASTER (10)Header Value Values: 0. Off

1. On02 xx 0A 00 nnxx = engine number

All values are in hexadecimal.

When on, allows the corresponding engine to run.

This replaces “SWITCH_IGNITION” which has never been implemented.

Page 103: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.12 SWITCH_FLAPS (11)Header Value Values: 0. Raise

1. Lower2. Neutral

02 00 0B 00 nn

All values are in hexadecimal.

This is a three-position switch with a center-off position. Both “on” positions are momentary, so the switch always returns to center when released.

Moving the switch up causes the flaps to move up, unless they are at their uppermost position. Moving the switch down causes the flaps to move down, unless they are at their lowermost position. The center position is neutral.

There is also an analog control for the flaps; see 4.1.1.8.

4.2.1.13 SWITCH_PARKING_BRAKE (12)Header Value Values: 0. Disengaged

1. Engaged02 00 0C 00 nnAll values are in hexadecimal.

This is a two-position switch, pull-on/push-off. It is used to approximate the action of a normal airplane parking brake system.

Excerpts from two documents found online:

1. Press both brakes. 2. Pull  parking  brake  handle  out.    This  will cause the parking brake valves to

lock the hydraulic    fluid    under    pressure    in    the parking   brake system,   thereby   retaining braking action.

3. Release brake pedals. 4. To  release  the  parking  brakes  push in on the parking brake handle.

(d) Parking brake. The airplane must have a parking brake control that, when selected on, will, without further attention, prevent the airplane from rolling on a dry and level paved runway when the most adverse combination of maximum thrust on one engine and up to maximum ground idle thrust on any, or all, other engine(s) is applied. The control must be suitably located or be adequately protected to prevent inadvertent operation. There must be indication in the cockpit when the parking brake is not fully released.

Our switch sends either of two messages:0. Parking brake disengaged (switch pushed in).1. Parking brake engaged (switch pulled out).

Page 104: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.14 SWITCH_ALT_AIR (13)Header Value Values: 0. Disengaged

1. Engaged02 00 0D 00 nnAll values are in hexadecimal.

Alternate air. This is part of the anti-icing system for a piston engine.

4.2.1.15 SWITCH_PITOT_HEAT (14)Header Value Values: 0. Off

1. On02 00 0E 00 nnAll values are in hexadecimal.

This heats the pitot tube to remove ice or prevent ice buildup.

4.2.1.16 SWITCH_ANTI_ICE (15)Header Value Values: 0. Off

1. On02 00 0F 00 nnAll values are in hexadecimal.

This turns on an airplane’s anti-icing system. On a real airplane it would consist of measures to prevent icing before significant accumulation.

4.2.1.17 SWITCH_PROP_DEICE (16)Header Value Values: 0. Off

1. On02 00 10 00 nnAll values are in hexadecimal.

This turns on a system designed to remove accumulated ice from the propellers.

4.2.1.18 SWITCH_FUEL_CROSS (17)Header Value Values: 0. Off

1. Left2. Right

02 00 11 00 nn

All values are in hexadecimal.

This turns on a fuel cross-feed, allowing an engine to use fuel from the tank on the opposite side of the airplane.

0. Off, no cross-feed.

Page 105: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

1. Cross-feed is enabled from the right tank to the left engine. Fuel flow direction is “left”.

2. Cross-feed is enabled from the left tank to the right engine. Fuel flow direction is “right”.

4.2.1.19 SWITCH_LANDING_LIGHT (18)Header Value Values: 0. Off

1. On02 00 12 00 nnAll values are in hexadecimal.

This turns on and off the landing lights.

4.2.1.20 SWITCH_TAXI_LIGHT (19)Header Value Values: 0. Off

02 00 15 00 nn 1. On2. Pulsed

All values are in hexadecimal.

This turns on and off the taxi light. Value 2 may pulse the taxi light on certain aircraft if supported; otherwise it has the same effect as "On".

4.2.1.21 SWITCH_BATTERY_MASTER_BUS_TIE (20)Header Value Values: 0. Off

02 00 14 00 nn 1. OnAll values are in hexadecimal.

This is nearly identical to SWITCH_BATTERY_MASTER. It is used by G1000 Cessna firmware to tell the plug-in that it needs to cross-tie two electrical busses when the switch is on. The G1000 Cessna has an “essential” electric bus and a main bus; the standby battery only powers the essential bus, while the main battery powers all busses. Current versions of X-Plane (9.55RC2 as of this writing) do not support a sophisticated enough power bus system for us to be able to handle this in the airplane model; this is an approximate work-around. If you are working with a system that allows better electric bus modeling, treat this command as SWITCH_BATTERY_MASTER.

This message replaces SWITCH_LOGO_LIGHT which was never implemented.

Page 106: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.22 BUTTON_STARTER_DISENGAGE (21)Header Value Values: 0. Normal operation

1. Disengage starter, if running02 00 21 00 nn

All values are in hexadecimal.

Disengages the starter on a Cessna Citation jet. When you push a starter button the starter engages and continues running until the engine reaches a certain RPM or until the pilot presses the Disengage button.

This replaces SWITCH_NO_SMOKING_LIGHT which was never implemented.

4.2.1.23 SWITCH_IGNITION (22)Header Value Values: 0. Ignition auto

1. Ignition on02 00 22 00 nn

All values are in hexadecimal.

This is an ignition switch for a Cessna Citation. In the Normal position the ignition is automatically turned on while the engine is being started, but off at other times. In the On position the ignition is on all the time.

This replaces SWITCH_FASTEN_BELTS_LIGHT which was never implemented.

4.2.1.24 SWITCH_WING_DEICE (23)Header Value Values:

02 00 17 00 nn 0. Off 2. Manual1. Single cycle (momentary) 3. Reset

All values are in hexadecimal.

This activates a system that is intended to remove accumulated ice from the leading edges of both wings. This is a three-position switch with a center off position and one momentary position.

0. Wing de-ice is off.1. Wing de-ice single cycle. This is a momentary position that causes the system

to activate and run through a single timed cycle with no further intervention.2. Wing de-ice manual. This is a non-momentary position that causes the

system to activate as long as the switch remains in manual, and de-activate when the switch is returned to Off.

3. Wing de-ice reset (Cessna Citation, some models). Placing the switch in this position causes the current cycle to end immediately.

Page 107: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.25 SWITCH_WINDOW_DEICE (24)Header Value Values: 0. Off

02 00 18 00 nn 1. OnAll values are in hexadecimal.

Turns on a window de-icer.

This replaces SWITCH_WING_DEICE_TEST which was never implemented.

4.2.1.26 SWITCH_PITCH_TRIM (25)Header Value Values: 0. Off

1. Nose down2. Nose up

02 0n 19 00 nn

All values are in hexadecimal.

This is a three-way toggle or rocker switch, usually mounted on the yoke, with a center off and two momentary positions. If there are two yokes each yoke has a switch. It allows the pilot(s) to control the pitch trim electrically.

0. Pitch trim motor off.1. Pitch trim motor moves the trim so as to pitch the nose down.2. Pitch trim motor moves the trim so as to pitch the nose up.

In order to avoid side-effects of feedback loop delay (possible overrun and/or “seeking”) this switch controls the trim wheel directly on any of our units that include a trim wheel. The result is that the PC host receives both the pitch trim switch messages and any messages resulting from the pitch trim wheel moving. The PC host should avoid using the pitch trim switch messages to move its virtual pitch trim wheel and instead should use the pitch trim wheel position messages to directly position the virtual wheel.

Contrariwise, any of our units that do not have a pitch trim wheel will not be able to send positional messages. To keep the PC host code universal any such units should eschew this command and instead send the SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED command (see 4.2.1.4).

However, the PC host code should trigger an autopilot disconnect when it sees either command.

There are a few conditions that would prevent the trim wheel moving at command of the switch:

The wheel has reached a limit, either physical (signaled by a limit switch) or virtual.

Page 108: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The SWITCH_ELEVATOR_TRIM_ONOFF switch is off (see 4.2.1.193). This has only been implemented in the B200 to date.

The CB_TRIM_ELV circuit breaker has been tripped (see 4.10.1.14). This has only been implemented in the B200 to date.

The pilot’s switch overrides the copilot’s switch if the pilot’s and copilot’s switches are moved in opposite directions.

Reception of MODE_ENABLE_PITCH_TRIM_MOTOR with a value of 0 ("Disabled"). This might be sent from the PC if airplane power is unavailable (e.g. all Battery Masters and all Alternators or Generators are turned off), or the trim system is disabled (e.g. simulated faults, including tripped circuit breakers).

There is no conflict resolution specified for the case where a control message comes in while the trim switch is being used. Generally the control message will take precedence until the switch is released, which will simply stop the wheel if it is still moving. This is a “last in is obeyed” situation.

Our recommendation is that when the autopilot is disengaged, the PC host accept positional information from the PFC unit, and when the autopilot is engaged, the PC host ignore incoming positional information and drive the trim wheel servo from the virtual trim wheel position (see 4.9.1.3). Activating the trim wheel switch should disengage the autopilot. There will be no conflict as a result of this combination.

4.2.1.27 BUTTON_AP_DISCONNECT (26)Header Value Values: 0. Release

1. Pressed02 0n 1A 00 nnAll values are in hexadecimal.

This is a momentary push-button mounted on the yoke, one for each pilot. Pushing this button disengages the autopilot.

4.2.1.28 BUTTON_CWS (27)Header Value Values: 0. Released

1. Pressed02 0n 1B 00 nnAll values are in hexadecimal.

CWS stands for Control Wheel Steering. This is a push-button mounted on the yoke, one for each pilot. The pilot pushes this button while the autopilot is engaged to temporarily take over flying the plane; releasing the button gives control back to the autopilot. It may also allow the pilot to adjust the autopilot’s pitch setting and possibly other settings as well.

Page 109: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.29 SWITCH_INVERTER (28)Header Value Values: 0. Both off

1. Inverter 1 on2. Inverter 2 on

02 00 1C 00 nn

All values are in hexadecimal.

This controls the inverters on a plane that has them. Note that only one inverter can be on at once. This is a three-position non-momentary switch with a center off.

4.2.1.30 SWITCH_AUTO_FEATHER (29)Header Value Values: 0. Auto-feather off

1. Auto-feather armed2. Auto-feather test (momentary)

02 xx 1D 00 nnxx = engine number

All values are in hexadecimal.

This controls the auto-feather feature on a plane that has it. This is a three-position switch with center-off and one momentary position.

Engine numbers are 0-based. Engine 1 (left engine) = 0, Engine 2 = 1, etc. See 3.2.1.4.2 for information about the selector field.

4.2.1.31 BUTTON_STANDARD_DAY (30)Header Value Values: 0. Released

1. Pressed02 0n 1F 00 nnAll values are in hexadecimal.

When pressed, sets the barometric pressure to 29.92.

This replaces SWITCH_LANDING_INBOARD_LIGHT which has never been implemented.

4.2.1.32 BUTTON_PUSH_TO_TALK (31)Header Value Values: 0. Released

1. Pressed02 0n 1F 00 nnAll values are in hexadecimal.

Push-to-talk button for voice COMM functions.

This replaces SWITCH_LANDING_OUTBOARD_LIGHT which has never been implemented.

Page 110: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.33 SWITCH_EMERGENCY_GEAR_EXTEND (32)Header Value Values: 0. Off

1. On02 0n 20 00 nnAll values are in hexadecimal.

When on, this should cause the landing gear to unlock and extend mechanically (without electrical assistance). Turning it off again should have no effect. (Note: X-Plane treats this almost exactly like a standard gear switch, except that it allows the gear to extend while the landing gear electrical system is disabled.)

This replaces “SWITCH_LANDING_RETRACT” which has never been implemented.

4.2.1.34 BUTTON_HSI_SELECT_ROSE_ARC (33)Header Value Values: 0. Released

1. Pressed02 0s 21 00 nns = pilot select 0/1

All values are in hexadecimal.

Allows the pilot to toggle the HSI between Compass Rose mode and Arc mode. Example shown below (Compass Rose mode on right). Potentially one per pilot.

This replaces SWITCH_RUNWAY_TURNOFF_LIGHT which has never been implemented.

Page 111: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.35 SWITCH_FUEL_BOOST (34)Header Value Values: 0. Fuel pump off

1. Fuel pump on02 xx 22 00 nnxx = tank number

All values are in hexadecimal.

This switch powers a fuel pump. There may be multiple controls, one for each fuel tank. “Fuel boost” and “fuel pump” are synonymous for our purposes.

Tank numbers start counting from 0. See 3.2.1.4.2 for information about the selector field.

4.2.1.36 SWITCH_COWL_FLAPS (35)Header Value Values: 0. Cowl flaps up (closing)

1. Cowl flaps down (opening)2. Cowl flaps neutral (not moving)

02 xx 23 00 nnxx = engine number

All values are in hexadecimal.

There are two kinds of cowl flaps controls: analog and digital. See 4.1.1.7 for a description of the analog control.

The digital cowl flaps control is a three-way momentary switch with center off. Moving the switch up causes the cowl flaps to move towards closed; moving it down causes the cowl flaps to move towards open. The cowl flaps will continue to open or close as long as the switch is held active (or until the cowl flaps reach their corresponding limit); when released the cowl flaps will stop. This allows the pilot to adjust the cowl flaps to any setting.

There may be multiple cowl flaps controls, up to one per engine.

If there are more engines in the simulator model than there are cowl flaps controls, the simulator should apply them rationally. If there is one cowl flaps control it should control all the engines’ cowl flaps simultaneously. If there are two controls but more than two engines the left control should control low-numbered engines and the right control should control high-numbered engines.

See 3.2.1.4.2 for information about engine numbers in the selector field.

4.2.1.37 SWITCH_FUEL_SELECT (36)Header Value Values: 0. Fuel select off (fuel cutoff)

1. Fuel select left (fuel feeding from left tank)2. Fuel select both (fuel feeding from both tanks)

02

xx 24 00 nn

Page 112: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

xx = engine numberAll values are in hexadecimal.

This selects a fuel source for an engine. There may be one switch per engine. This is a four-position rotary switch on most models. Some models may have a separate pull-on/push-off fuel cutoff switch and a three-position rotary switch (left, both, right). The firmware translates that into the same function: if the fuel cutoff switch is disabled (push to allow fuel flow) the rotary switch position is reported; but if the cutoff switch is enabled (pull to cut fuel) the rotary switch is bypassed and only the “fuel select off” message is sent.

Engine numbers are 0-based. Engine 1 (left engine) = 0, Engine 2 = 1, etc. See 3.2.1.4.2 for information about the selector field.

4.2.1.38 SWITCH_AUX_FUEL_BOOST (37)Header Value Values: 0. Fuel pump off

1. Fuel pump on02 xx 25 00 nnxx = tank number

All values are in hexadecimal.

This switch powers a fuel pump. There may be multiple controls, one for each fuel tank. “Fuel boost” and “fuel pump” are synonymous for our purposes.

This is the same as SWITCH_FUEL_BOOST (see 4.2.1.35) except that it is used to control pumps for auxiliary fuel tanks, where SWITCH_FUEL_BOOST is used to power pumps for main fuel tanks.

Currently only implemented for the B200.

4.2.1.39 SWITCH_CESSNA_1X2_AVI_1 (38)Header Value Values: 0. Avionics bus 1 off

02 00 26 00 nn 1. Avionics bus 1 onAll values are in hexadecimal.

Used to control the AVI 1 bus on a Cessna 172, 182, or 206.

Replaces SWITCH_NO1_FUEL_PUMP which has never been implemented.

Page 113: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.40 SWITCH_CESSNA_1X2_AVI_2 (39)Header Value Values: 0. Avionics bus 2 off

02 00 27 00 nn 1. Avionics bus 2 onAll values are in hexadecimal.

Used to control the AVI 2 bus on a Cessna 172, 182, or 206.

Replaces SWITCH_NO2_FUEL_PUMP which has never been implemented.

4.2.1.41 SWITCH_BATTERY_MASTER (40)Header Value Values: 0. Battery master off (battery is disconnected)

1. Battery master on (battery is connected to electrical bus)2. Battery master emergency (standby battery engaged)

02

xx 28 00 nn

xx = engine numberAll values are in hexadecimal.

On most airplanes this connects the battery to the electrical bus. If the engines are running this means that the generators or alternators can supply all the power needed; the battery can be disconnected in case of over-charging.

4.2.1.42 SWITCH_ALTERNATOR (41)Header Value Values: 0. Alternator off

1. Alternator on2. Bus tie (some models)

02 xx 29 00 nnxx = engine number

All values are in hexadecimal.

This switch controls an alternator. There will likely be one per engine.

4.2.1.43 BUTTON_ENGINE_START (42)Header Value Values: 0. Off

1. Start engine02 xx 2A 00 nnxx = engine number

All values are in hexadecimal.

When pressed, engages the engine start sequence.

This used to be called “SWITCH_ENGINE_START” but had never been implemented using that name.

Page 114: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.44 SWITCH_MAGNETO (43)Header Value Values: 2. Left magneto on

02 xx 2B 00 nn 0. Engine off 3. Both magnetos onxx = engine number 1. Right magneto on 4. Start engine (momentary)

All values are in hexadecimal.

This is a five-position rotary switch that requires a key; the “start” position is momentary. This switch is found on piston craft.

4.2.1.45 SWITCH_ENGINE_DEICE (44)Header Value Values: 0. Engine De-ice off

02 xx 2C 00 nn 1. Engine De-ice onxx = engine number 2. Engine De-ice on w/continuous ignition

All values are in hexadecimal.

This heats the leading edge of the engine cowl to melt accumulated ice.

4.2.1.46 SWITCH_AUTO_IGNITION (45)Header Value Value: 0. Off

02 xx 2D 00 nn 1. Autoxx = engine number 2. Continuous

All values are in hexadecimal.

This allows igniters to fire automatically on a stalled turbine engine, allowing it to re-start if conditions permit.

CESSNA MODEL 208B SUPERVAN 900 DIFFERENCES TRAINING

AUTO/CONT Ignition Switch - The AUTO position provides auto-ignition in the event of an engine flameout, The CONT position provides continuous ignition.

4.2.1.47 SWITCH_ICE_VANE (46)Header Value Values: 0. Retract ice vanes

1. Extend ice vanes02 xx 2E 00 nnxx = engine number

All values are in hexadecimal.

Extends or retracts the ice vanes, a.k.a. inertial separators. There will be one per engine.

Page 115: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

“Ice vanes are used to prevent damage to the turbine blades from ice particles in the air. On the King Air they’re deployed any time the OAT is +5C or lower and there is visible moisture in the air. There are two parts to the engine ice protection system: a vane that extends into the ram air stream inside the inlet and a bypass door at the bottom of the nacelle. The ice vane deflects the ram air stream downwards, creating a sharp bend in the airflow inside the inlet. Ice particles have more momentum than the air itself, so they are discharged out the bypass door, while most of the air continues into the engine.”

4.2.1.48 SWITCH_AP_ON (47)Header Value Values: 0. Off

1. AP2. FD

02 00 2F 00 nn

All values are in hexadecimal.

Controls the autopilot function. 0. Off: The autopilot is powered off.1. AP: The autopilot is on and engaged. May be cancelled via the Autopilot

Disconnect control, at which point this switch must be cycled to re-engage.2. FD: Flight director is engaged, but the autopilot is not.

4.2.1.49 BUTTON_AP_ALTITUDE (48)Header Value Values: 0. Released

1. Pressed02 00 30 00 nnAll values are in hexadecimal.

Toggles the altitude capture autopilot function. Press and release once to capture and hold the current altitude. Press and release again to release the altitude hold.

4.2.1.50 BUTTON_AP_ALT_SELECT (49)Header Value Values: 0. Released

1. Pressed02 00 31 00 nnAll values are in hexadecimal.

Toggles the altitude select autopilot function. Press and release once to use the current Alt Pre-Select setting; the autopilot will hold the requested altitude once the plane reaches that altitude. Press and release again to cancel.

Page 116: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Note that this is similar to the altitude capture button except that the desired altitude is pre-set instead of captured.

4.2.1.51 BUTTON_AP_APR (50)Header Value Values: 0. Released

1. Pressed02 00 32 00 nnAll values are in hexadecimal.

Autopilot ILS approach function. Enabling this function generally causes the autopilot to attempt to capture and follow a localizer and a glide slope to the runway. Actual operation may vary per autopilot. Press and release once to enable, press and release again to disable.

4.2.1.52 BUTTON_AP_BANK_LIMIT (51)Header Value Values: 0. Released

1. Pressed02 00 33 00 nnAll values are in hexadecimal.

Causes the autopilot to reduce its banking angle to 50% normal. Press and release once to enable, press and release again to disable.

4.2.1.53 BUTTON_AP_BC (52)Header Value Values: 0. Released

1. Pressed02 00 34 00 nnAll values are in hexadecimal.

Back-Course causes the autopilot NAV function to attempt to capture the back-side of an ILS signal and follow it into the runway. The back-course function does not include glide-slope information and so disables the APR function. Likewise the APR function disables the BC function. If you are on the wrong side of the ILS and do not use the back-course function, the NAV function will turn you away from the runway.

At least, that’s my understanding.

4.2.1.54 BUTTON_AP_HDG (53)Header Value Values: 0. Released

1. Pressed02 00 35 00 nnAll values are in hexadecimal.

Page 117: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Heading autopilot function. This allows the pilot to enter a heading (generally via the HSI) and cause the autopilot to follow it. Other functions (such as NAV capture) may disable and override this function. Press and release once to enable, press and release again to disable.

4.2.1.55 BUTTON_AP_IAS (54)Header Value Values: 0. Released

1. Pressed02 00 36 00 nnAll values are in hexadecimal.

Indicated Air Speed autopilot function. Causes the autopilot to maintain a constant speed. We’ve implemented this for the B200 in firmware but I don’t believe the software supports it.

4.2.1.56 SWITCH_AP_NAV_SOURCE_SELECT (55)Header Value Values: 1. NAV 1

2. NAV 202 00 37 00 nnAll values are in hexadecimal.

This selects which navigation source (NAV 1, NAV 2) will be used by the autopilot.

Note: This function is incorrect and was obsoleted before it was ever implemented.

This replaces “BUTTON_AP_MASTER” which has never been implemented.

4.2.1.57 BUTTON_AP_NAV (56)Header Value Values: 0. Released

1. Pressed02 00 38 00 nnAll values are in hexadecimal.

ILS navigation autopilot function. This captures an ILS signal and turns the plane to follow it to the runway. Alternatively, engages GPS navigation when available. Can be modified by the BC function (4.2.1.53). Press and release once to enable, press and release again to disable.

4.2.1.58 BUTTON_AP_ENGAGE (57)Header Value Values: 0. Released

1. Pressed02 00 39 00 nnAll values are in hexadecimal.

Page 118: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Toggles the autopilot function. Press and release once to engage; press and release again to disengage. Note that this depends on the autopilot design; for example, the B200 autopilot will not disengage via this button. Other autopilots may only engage under the proper conditions, e.g. if the flight director is already engaged.

4.2.1.59 BUTTON_AP_SOFT_RIDE (58)Header Value Values: 0. Released

1. Pressed02 00 3A 00 nnAll values are in hexadecimal.

“The SOFT RIDE mode provides reduced pitch and roll autopilot gains while still maintaining stability in rough air. This mode may be used with any flight director mode, but should only be selected ON in turbulence.”

Press and release once to enable, press and release again to disable.

4.2.1.60 SWITCH_AP_TRIM (59)Header Value Values: 0. Off (neutral)

1. Adjust pitch down (momentary)2. Adjust pitch up (momentary)

02 xx 3B 00 nnxx = engine number

All values are in hexadecimal.

Adjusts the vertical speed up or down. This is a three-position momentary rocker switch with center off.

4.2.1.61 BUTTON_AP_VORAPR (60)Header Value Values: 0. Released

1. Pressed02 00 3C 00 nnAll values are in hexadecimal.

Implemented in firmware on the B200 but may not be operational in the software. Press and release once to enable, press and release again to disable.

4.2.1.62 BUTTON_AP_VS (61)Header Value Values: 0. Released

1. Pressed02 00 3D 00 nnAll values are in hexadecimal.

Page 119: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Engages vertical speed autopilot function. When engaged the autopilot attempts to maintain a set vertical speed. Depending on the autopilot function this may be set or changed in one or more ways:

Capture and hold vertical speed when VS is engaged. Set using the VS set function, if any. Adjusted via Control Wheel Steering (see 4.2.1.28). Adjusted via AP Trim (see 4.2.1.60).

It may be cancelled when one of these conditions occur:

Altitude capture is armed and the pre-selected altitude is reached (see 4.2.1.50).

The Altitude Capture button is pressed (see 4.2.1.49). The VS button is pushed and released. The approach function (APR) captures a glide slope (see 4.2.1.51). The pilot adjusts the VS knob.

Press and release once to enable, press and release again to disable.

4.2.1.63 BUTTON_AP_YAW_DAMPER (62)Header Value Values: 0. Released

1. Pressed02 00 3E 00 nnAll values are in hexadecimal.

“A yaw damper is a device used on many aircraft (usually jets and turboprops) to damp (reduce) the rolling and yawing oscillations due to Dutch roll mode. It involves yaw rate sensors and a processor that provides a signal to an actuator connected to the rudder. The use of the yaw damper helps to provide a better ride for passengers, and on some aircraft is a required piece of equipment to ensure that the aircraft stability remains within certification values.” [Source: Wikipedia]

Press and release once to enable, press and release again to disable.

4.2.1.64 BUTTON_AP_FD (63)Header Value Values: 0. Released

1. Pressed02 00 3F 00 nnAll values are in hexadecimal.

Flight Director. “The flight director computes and displays the proper pitch and bank angles required in order for the aircraft to follow a selected path.” “The FD is generally used in direct connection with the Autopilot. The FD commands the

Page 120: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

AP to put the aircraft in the attitude necessary to follow a trajectory.” [Source: Wikipedia]

Press and release once to enable, press and release again to disable.

4.2.1.65 BUTTON_AP_TEST (64)Header Value Values: 0. Released

1. Pressed02 00 40 00 nnAll values are in hexadecimal.

Autopilot self-test. Press and release once to test. All indicators will light for one second, then the AP indicator will blink ten times(?) accompanied by the warning horn, then the indicators will return to normal.

4.2.1.66 BUTTON_AP_AUTO_THROTTLE (65)This has not been implemented to date.

4.2.1.67 BUTTON_AP_SBY (66)Header Value Values: 0. Released

1. Pressed02 00 42 00 nnAll values are in hexadecimal.

Standby. Disengages the autopilot. Used where the autopilot engage button is not a toggle. Press and release once to disconnect the autopilot. Currently only implemented in the B200.

4.2.1.68 SWITCH_AUTO_BRAKE (67)Header Value Values:

02 00 43 00 nn 0. Off 3. 31. 1 4. Max2. 2 5. RTO

All values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

4.2.1.69 BUTTON_AUTO_BRAKE_ENG (68)Header Value Values: 0. Released

02 00 44 00 nn 1. PressedAll values are in hexadecimal.

Page 121: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_AUTO_BRAKE_ENG.

4.2.1.70 BUTTON_AUTO_BRAKE_SYS (69)Header Value Values: 0. Released

1. Pressed02 00 45 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_AUTO_BRAKE_SYS.

4.2.1.71 SWITCH_EICAS (70)This has not been implemented to date.

4.2.1.72 BUTTON_GO_AROUND (71)Header Value Values: 0. Released

1. Pressed02 00 47 00 nnAll values are in hexadecimal.

Either Take Off/Go Around (TO/GA) or just Go Around, depending on the plane model. The takeoff mode attempts to adjust thrust for optimum takeoff speed. The go around mode disconnects any modes that would interfere with a go-around function and directs the autopilot to increase thrust and/or increase vertical speed enough to abort a landing. Press and release once to engage.

4.2.1.73 SWITCH_ENGINE_ANTI_ICE (72)Not implemented to date.

4.2.1.74 SWITCH_WING_ANTI_ICE (73)Not implemented to date.

4.2.1.75 SWITCH_WING_ANTI_ICE_TEST (74)Not implemented to date.

Page 122: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.76 SWITCH_STALL_WARNING_ANTI_ICE (75)Header Value Values: 0. Off

02 00 4B 00 nn 1. OnAll values are in hexadecimal.

Anti-ice control for the stall warning system.

Previously known as SWITCH_RADIO, never implemented.

4.2.1.77 SWITCH_CARB_HEATER (76)Header Value Values: 0. Off

02 xx 4C 00 nn 1. Onxx = engine number

All values are in hexadecimal.

This is part of the anti-icing system. Pulling the knob out engages the carburetor heat (on). Pushing it in disengages it (off).

4.2.1.78 BUTTON_COM1_ON (77)Header Value Values: 0. Released

1. Pressed02 00 4D 00 nnAll values are in hexadecimal.

Toggles power to the COM1/NAV1 panel. The button does not actually route power, it merely sends a message; it’s up to the PC host to blank the displays or restore them.

4.2.1.79 BUTTON_COM1_ACTIVE_STANDBY (78)Header Value Values: 0. Released

1. Pressed02 00 4E 00 nnAll values are in hexadecimal.

Also known as “Transfer” or “Flip-flop”. When pressed this button exchanges the active and standby frequencies on the COM1 panel.

4.2.1.80 BUTTON_COM1_SPEAKER (79)Not implemented to date.

Page 123: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.81 BUTTON_COM2_ON (80)Header Value Values: 0. Released

1. Pressed02 00 50 00 nnAll values are in hexadecimal.

Toggles power to the COM2/NAV2 panel. The button does not actually route power, it merely sends a message; it’s up to the PC host to blank the displays or restore them.

4.2.1.82 BUTTON_COM2_ACTIVE_STANDBY (81)Header Value Values: 0. Released

1. Pressed02 00 51 00 nnAll values are in hexadecimal.

Also known as “Transfer” or “Flip-flop”. When pressed this button exchanges the active and standby frequencies on the COM2 panel.

4.2.1.83 BUTTON_COM2_SPEAKER (82)Not implemented to date.

4.2.1.84 BUTTON_NAV1_RADIAL (83)Header Value Values: 0. Released

1. Pressed02 00 53 00 nnAll values are in hexadecimal.

When pressed this button toggles the right-hand NAV1 display between the current radial and the standby frequency. While in radial mode the frequency encoders will change the active frequency instead of the standby frequency.

4.2.1.85 BUTTON_NAV1_ACTIVE_STANDBY (84)Header Value Values: 0. Released

1. Pressed02 00 54 00 nnAll values are in hexadecimal.

Also known as “Transfer” or “Flip-flop”. When pressed this button exchanges the active and standby frequencies on the NAV1 panel.

Page 124: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.86 BUTTON_NAV1_IDENT (85)Header Value Values: 0. Released

1. Pressed02 00 55 00 nnAll values are in hexadecimal.

Pressing the Ident button toggles the identification audio for NAV1.

4.2.1.87 BUTTON_NAV2_RADIAL (86)Header Value Values: 0. Released

1. Pressed02 00 56 00 nnAll values are in hexadecimal.

When pressed this button toggles the right-hand NAV2 display between the current radial and the standby frequency. While in radial mode the frequency encoders will change the active frequency instead of the standby frequency.

4.2.1.88 BUTTON_NAV2_ACTIVE_STANDBY (87)Header Value Values: 0. Released

1. Pressed02 00 57 00 nnAll values are in hexadecimal.

Also known as “Transfer” or “Flip-flop”. When pressed this button exchanges the active and standby frequencies on the NAV2 panel.

4.2.1.89 BUTTON_NAV2_IDENT (88)Header Value Values: 0. Released

1. Pressed02 00 58 00 nnAll values are in hexadecimal.

Pressing the Ident button toggles the identification audio for NAV2.

4.2.1.90 SWITCH_DME_MODE1 (89)Header Value Values: 0. Off

1. Remote 12. Remote 2

02 00 59 00 nn

All values are in hexadecimal.

Switches the DME source between NAV1 and NAV2 when the DME is in the Remote mode (see 4.2.1.91). OFF turns off the DME.

Page 125: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.91 SWITCH_DME_MODE2 (90)Header Value Values: 0. Remote

1. Frequency2. Ground Speed and Time

02 00 5A 00 nn

All values are in hexadecimal.

Determines the DME mode. 0. Remote (RMT): Displays the current ground speed and the estimated time to

the target using NAV1 or NAV2 as its frequency source (see SWITCH_DME_MODE1 (89)).

1. Frequency (FRQ): Allows entry of a local frequency.2. Ground Speed and Time (GS/T): Displays the current ground speed and the

estimated time to the target using the frequency set in Frequency mode.

4.2.1.92 BUTTON_MAST_WARN (91)Header Value Values: 0. Released

1. Pressed02 00 5B 00 nnAll values are in hexadecimal.

Master Warning button. This is a lighted button that blinks to warn of certain conditions. Press to extinguish the light if the conditions have been neutralized.

4.2.1.93 SWITCH_DME_RMI (92)Header Value Values: 0. NAV1 receiver

1. NAV2 receiver02 00 5A 00 nnAll values are in hexadecimal.

A switch added due to a badly considered design attempt. Available for re-assignment.

4.2.1.94 BUTTON_ADF_ADF (93)Header Value Values: 0. Released

1. Pressed02 00 5D 00 nnAll values are in hexadecimal.

Toggles ADF and ANT mode.

Page 126: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.95 BUTTON_ADF_ACTIVE_STANDBY (94)Header Value Values: 0. Released

1. Pressed02 00 5E 00 nnAll values are in hexadecimal.

Toggles the active and standby frequencies on an ADF (also known as a flip-flop or transfer control). The pilot uses the controls to edit the standby frequency, then presses this control to transfer it to the active frequency when he’s finished.

This button is marked "FRQ" on the PFC ADF radio.

4.2.1.96 BUTTON_ADF_IDENT (95)Header Value Values: 0. Released

1. Pressed02 00 5F 00 nnAll values are in hexadecimal.

Toggles transmission of an ident by the ADF.

4.2.1.97 BUTTON_ADF_ANTENNA_MODE (96)Header Value Values: 0. Released

1. Pressed02 00 60 00 nnAll values are in hexadecimal.

Not used, available for re-assignment.

4.2.1.98 BUTTON_ADF_BFO (97)Header Value Values: 0. Released

1. Pressed02 00 61 00 nnAll values are in hexadecimal.

Toggle Beat Frequency Oscillator mode.

4.2.1.99 BUTTON_ADF_FLT (98)Header Value Values: 0. Released

1. Pressed02 00 62 00 nnAll values are in hexadecimal.

Select Flight Timer or Elapsed Timer in-flight timer modes.

Page 127: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.100 BUTTON_ADF_SET (99)Header Value Values: 0. Released

1. Pressed02 00 63 00 nnAll values are in hexadecimal.

Set or reset the elapsed timer.

4.2.1.101 SWITCH_TRANSPONDER_MODE (100)Header Value Values: 2. On

02 00 64 00 nn 0. Off 3. Alternate1. Standby 4. Test

All values are in hexadecimal.

Sets the current mode of the transponder.

4.2.1.102 BUTTON_TRANSPONDER_IDENT (101)Header Value Values: 0. Released

1. Pressed02 00 65 00 nnAll values are in hexadecimal.

Pressing this button on a Transponder activates a special thirteenth bit on the mode A reply known as IDENT, short for "identify".

4.2.1.103 BUTTON_GPS_ON (102)Header Value Values: 0. Released

1. Pressed02 00 66 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.104 BUTTON_GPS_NAV_GPS (103)Header Value Values: 0. Released

1. Pressed02 00 67 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

Page 128: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.105 BUTTON_GPS_NAV (104)Header Value Values: 0. Released

1. Pressed02 00 68 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.106 BUTTON_GPS_WPT (105)Header Value Values: 0. Released

1. Pressed02 00 69 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.107 BUTTON_GPS_FPL (106)Header Value Values: 0. Released

1. Pressed02 00 6A 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.108 BUTTON_GPS_CALC (107)Header Value Values: 0. Released

1. Pressed02 00 6B 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.109 BUTTON_GPS_AUX (108)Header Value Values: 0. Released

1. Pressed02 00 6C 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.110 BUTTON_GPS_DIR_TO (109)Header Value Values: 0. Released

Page 129: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

02 00 6D 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.111 BUTTON_GPS_MSG (110)Header Value Values: 0. Released

1. Pressed02 00 6E 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.112 BUTTON_GPS_ENT (111)Header Value Values: 0. Released

1. Pressed02 00 6F 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.113 BUTTON_GPS_APT_VOR (112)Header Value Values: 0. Released

1. Pressed02 00 70 00 nnAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.2.1.114 BUTTON_ALT_PRESELECT_ENG (113)Header Value Values: 0. Released

1. Pressed02 00 71 00 nnAll values are in hexadecimal.

Engages the vertical speed control. Allows the autopilot to control climbing or descent.

4.2.1.115 BUTTON_ALT_PRESELECT_ARM (114)Header Value Values: 0. Released

1. Pressed02 00 72 00 nnAll values are in hexadecimal.

Page 130: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Arms the current altitude setting. Nominally the autopilot will cause the airplane to climb or descend to this altitude and then return to level flight.

4.2.1.116 SWITCH_ALT_PRESELECT_ALT_VS (115)Header Value Values: 0. Altitude

1. Vertical speed02 00 73 00 nn

All values are in hexadecimal.

Controls the current mode for the altitude pre-select encoder. If in altitude mode it will allow the pilot to set the desired altitude; if in vertical speed mode it will allow the pilot to set the climb or descent rate. Usually used in conjunction with BUTTON_ALT_PRESELECT_ENG, BUTTON_ALT_PRESELECT_ARM, and DIGITAL_DISPLAY_ALT_VS_COMBO. See also 4.3.1.37, 4.3.1.38, and 4.12.1.15.

4.2.1.117 BUTTON_PITCH_TRIM_UP (116)Header Value Values: 0. Released

02 xx 74 00 nn 1. PressedAll values are in hexadecimal.

This is usually a three-way toggle or rocker switch, usually mounted on the yoke, with a center off and two momentary positions. If there are two yokes each yoke has a switch. It allows the pilot(s) to control the pitch trim electrically. This message differs from SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED and SWITCH_PITCH_TRIM in that it only commands Trim Up. There is a separate message for Trim Down.

0. Pitch trim motor off.1. Pitch trim motor moves the trim so as to pitch the nose up.

If the device that includes this button also includes a pitch trim wheel, it will also move the pitch trim wheel. Otherwise the plug-in must handle pitch trim wheel movement. The PC host code should trigger an autopilot disconnect when it sees this message sent with value 1.

There are several conditions that would prevent the trim wheel moving at command of the switch:

The wheel has reached a limit, either physical (signaled by a limit switch) or virtual.

The SWITCH_ELEVATOR_TRIM_ONOFF switch is off (see 4.2.1.193). This has only been implemented in the B200 to date.

The CB_TRIM_ELV circuit breaker has been tripped (see 4.10.1.14). This has only been implemented in the B200 to date.

Page 131: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The pilot’s switch overrides the copilot’s switch if the pilot’s and copilot’s switches are moved in opposite directions.

Reception of MODE_ENABLE_PITCH_TRIM_MOTOR with a value of 0 ("Disabled"). This might be sent from the PC if airplane power is unavailable (e.g. all Battery Masters and all Alternators or Generators are turned off), or the trim system is disabled (e.g. simulated faults, including tripped circuit breakers).

There is no conflict resolution specified for the case where a control message comes in while the trim switch is being used. Generally the control message will take precedence until the switch is released, which will simply stop the wheel if it is still moving. This is a “last in is obeyed” situation.

Our recommendation is that when the autopilot is disengaged, the PC host accept positional information from the PFC unit, and when the autopilot is engaged, the PC host ignore incoming positional information and drive the trim wheel servo from the virtual trim wheel position (see 4.9.1.3). Activating the trim wheel switch should disengage the autopilot. There will be no conflict as a result of this combination.

There is also no conflict resolution for the case that BUTTON_PITCH_TRIM_UP and BUTTON_PITCH_TRIM_DN are both active for the same pilot; that is, if first one message is set to 1, then the second, without the first being set to 0 before the second arrives. This is a condition that could theoretically happen but should not; we recommend the plug-in simply obey the last message.

This replaces “SWITCH_DC_SELECTOR” which has never been implemented.

4.2.1.118 BUTTON_PITCH_TRIM_DN (117)Header Value Values: 0. Released

02 00 75 00 nn 1. PressedAll values are in hexadecimal.

This is usually a three-way toggle or rocker switch, usually mounted on the yoke, with a center off and two momentary positions. If there are two yokes each yoke has a switch. It allows the pilot(s) to control the pitch trim electrically. This message differs from SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED and SWITCH_PITCH_TRIM in that it only commands Trim Down. There is a separate message for Trim Up.

2. Pitch trim motor off.3. Pitch trim motor moves the trim so as to pitch the nose down.

If the device that includes this button also includes a pitch trim wheel, it will also move the pitch trim wheel. Otherwise the plug-in must handle pitch trim wheel

Page 132: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

movement. The PC host code should trigger an autopilot disconnect when it sees this message sent with value 1.

There are four conditions that would prevent the trim wheel moving at command of the switch:

The wheel has reached a limit, either physical (signaled by a limit switch) or virtual.

The SWITCH_ELEVATOR_TRIM_ONOFF switch is off (see 4.2.1.193). This has only been implemented in the B200 to date.

The CB_TRIM_ELV circuit breaker has been tripped (see 4.10.1.14). This has only been implemented in the B200 to date.

The pilot’s switch overrides the copilot’s switch if the pilot’s and copilot’s switches are moved in opposite directions.

Reception of MODE_ENABLE_PITCH_TRIM_MOTOR with a value of 0 ("Disabled"). This might be sent from the PC if airplane power is unavailable (e.g. all Battery Masters and all Alternators or Generators are turned off), or the trim system is disabled (e.g. simulated faults, including tripped circuit breakers).

There is no conflict resolution specified for the case where a control message comes in while the trim switch is being used. Generally the control message will take precedence until the switch is released, which will simply stop the wheel if it is still moving. This is a “last in is obeyed” situation.

Our recommendation is that when the autopilot is disengaged, the PC host accept positional information from the PFC unit, and when the autopilot is engaged, the PC host ignore incoming positional information and drive the trim wheel servo from the virtual trim wheel position (see 4.9.1.3). Activating the trim wheel switch should disengage the autopilot. There will be no conflict as a result of this combination.

There is also no conflict resolution for the case that both BUTTON_PITCH_TRIM_UP and BUTTON_PITCH_TRIM_DN are both active for the same pilot; that is, if first one message is set to 1, then the second, without the first being set to 0 before the second arrives. This is a condition that could theoretically happen but should not; we recommend the plug-in simply obey the last message.

This replaces “SWITCH_AC_SELECTOR” which has never been implemented.

4.2.1.119 SWITCH_ANTI_COLLISION (118)Header Value Values: 0. Off

02 00 76 00 nn 1. OnAll values are in hexadecimal.

Page 133: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Anti-collision light switch. Sometimes an alternate name for the beacon switch, but the Cessna Citation Mustang has separate switches for the two.

This replaces “SWITCH_GRD_POWER” which has never been implemented.

4.2.1.120 SWITCH_STANDBY_BATTERY (119)Header Value Values: 1. On

02 00 77 00 nn 0. Off 2. TestAll values are in hexadecimal.

Standby Battery switch with which certain aircraft are equipped, specifically Cessna models 172 and 182.

This replaces “SWITCH_STANDBY_POWER” which has never been implemented.

4.2.1.121 BUTTON_BELOW_GS_P_INHIBIT (120)Header Value Values: 0. Released

02 xx 78 00 nn 1. PressedAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_GALLEY.

4.2.1.122 BUTTON_AP_PRST (121)Header Value Values: 0. Released

02 00 79 00 nn 1. PressedAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_ENTERTAINMENT.

4.2.1.123 BUTTON_AT_PRST (122)Header Value Values: 0. Released

02 00 7A 00 nn 1. PressedAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_CSD_DISCONNECT_1.

Page 134: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.124 BUTTON_FMC_PRST (123)Header Value Values: 0. Released

02 00 7B 00 nn 1. PressedAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_CSD_DISCONNECT_2.

4.2.1.125 SWITCH_N1_SET_SELECT (124)Header Value Values: 0. Auto

02 00 7C 00 nn 1. 12. 23. Both

All values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_HYDRAULIC_PUMP_A.

4.2.1.126 SWITCH_SPEED_REF_SELECT (125)Header Value Values: 3. WT

02 00 7D 00 nn 0. Auto 4. VREF1. V1 5. delta2. VR 6. SET

All values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_HYDRAULIC_PUMP_B.

4.2.1.127 SWITCH_ANN_TEST (126)Header Value Values: 0. Released

1. Pressed02 00 7E 00 nn

All values are in hexadecimal.

When pushed this causes all annunciator lights to go on until released. Some annunciator lights are blank and will not come on during normal operation; this button will light all relevant annunciator lights regardless of that.

737 Jet: “Illuminates all system-associated lights on the forward and aft overhead panels, and some lights on the Captain and FO instrument panels.”

Page 135: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Note: The annunciator test is usually implemented as a button or other momentary control, so intuitively BUTTON_ANN_TEST seems more appropriate. However, button actions ignore button release, as it's the button press that's important; whereas in this case, the button release is quite necessary to monitor. Therefore this is actually a switch in its operation, and not a pushbutton.

4.2.1.128 SWITCH_MAIN_PANEL_DISPLAY_UNITS (127)Header Value Values: 2. INBD ENG PRI

02 xx 7F 00 nn 0. OUTBD PFD 3. INBD PFD1. NORM 4. INBD MFD

All values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_ENGINE_FIRE_SUPPRESSION.

4.2.1.129 SWITCH_LOWER_PANEL_DISPLAY_UNITS (128)Header Value Values: 1. NORM

02 xx 80 00 nn 0. ND 2. ENG PRIAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_APU_FIRE_SUPPRESSION.

4.2.1.130 SWITCH_FUEL_CUTOFF (129)Header Value Values: 0. Off (fuel cutoff)

1. On02 xx 81 00 nnxx = engine number

All values are in hexadecimal.

When engaged, cuts off fuel to the corresponding engine. Note that the value indicates fuel flow rather than the switch position per se. The switch reports “off” when engaged, which will cut off the fuel.

4.2.1.131 BUTTON_STAB_OUT_OF_TRIM (130)Header Value Values: 0. Released

1. Pressed02 00 82 00 nn

All values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_GPWS_SYSTEM_TEST.

Page 136: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This replaces SWITCH_ENGINE_OVERHEAT_TEST which was never implemented.

4.2.1.132 SWITCH_ARTEX_ELT (131)Header Value Values: 0. Armed

1. On02 00 83 00 nn

All values are in hexadecimal.

This is an emergency beacon switch equipped in certain airplane models. It is supposed to activate automatically when the airplane crashes (“Armed” position) but can be manually activated or tested (“On” position).

This replaces SWITCH_BELL_CUTOUT which was never implemented.

Note: "Artex" is actually a manufacturer name. The switch should be called, simply, "SWITCH_ELT".

4.2.1.133 SWITCH_DME_SELECTOR (132)Header Value Values: 0. Off

02 00 84 00 nn 1. Nav 12. Nav 23. Hold

All values are in hexadecimal.

!-

This replaces SWITCH_FAULT_TEST which has never been implemented.

4.2.1.134 SWITCH_TWO_LANDING_LIGHTS (133)Header Value Values: 0. Off

02 00 85 00 nn 1. Forward or Left2. Aft or Right3. Both

All values are in hexadecimal.

This is a landing light switch, nominally for a helicopter, that has two landing lights controlled separately.

This replaces SWITCH_EXTINGUISH_TEST which was never implemented.

This switch has also never been implemented, and the message is available for re-use.

Page 137: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.135 SWITCH_TURN_IND (134)Header Value Values: 0. Off

02 00 86 00 nn 1. OnAll values are in hexadecimal.

!- Bell 206

This replaces SWITCH_STABILIZER_TRIM_MAIN which was never implemented.

4.2.1.136 SWITCH_AUX_POWER (135)Header Value Values: 0. Off

02 00 87 00 nn 1. OnAll values are in hexadecimal.

Backup battery switch.

This replaces SWITCH_STABILIZER_TRIM_AUTOPILOT which was never implemented.

4.2.1.137 SWITCH_IGNITION_LIGHT (136)Header Value Values: 0. Off

02 00 88 00 nn 1. OnAll values are in hexadecimal.

!- Bell 206

This replaces SWITCH_STABILIZER_TRIM_OVERRIDE which was never implemented.

4.2.1.138 BUTTON_LANDING_GEAR_HORN_CUTOUT (137)Header Value Values: 0. Released

02 00 89 00 nn 1. PressedAll values are in hexadecimal.

Press once and release to silence the landing gear warning horn.

4.2.1.139 SWITCH_FUEL_FLOW (138)Header Value Values: 0. Released

02 00 8A 00 nn 1. PressedAll values are in hexadecimal.

Page 138: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

4.2.1.140 BUTTON_GPWS_SYSTEM_TEST (139)Header Value Values: 0. Released

02 00 8B 00 nn 1. PressedAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as SWITCH_GPWS_SYSTEM_TEST.

4.2.1.141 SWITCH_FLAP_INHIBIT (140)Header Value Values: 0. Normal

02 00 8C 00 nn 1. InhibitAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

4.2.1.142 SWITCH_GEAR_INHIBIT (141)Header Value Values: 0. Normal

02 00 8D 00 nn 1. InhibitAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

4.2.1.143 SWITCH_GENERATOR (142)Header Value Values: 0. Off

1. On2. Generator reset (momentary)

02 xx 8E 00 nnxx = engine number

All values are in hexadecimal.

Enables or disables one generator per engine. Once off the generator may need to be reset, or this may depend on whether it has been used as a starter.

"The reset position supplies an excitation current to the generator shunt field (activating the generator portion of the starter-generator) and resets the generator reset relay."

4.2.1.144 BUTTON_GOVERNOR_RPM_UP (143)Header Value Values: 0. Released

Page 139: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

02 00 8F 00 nn 1. PressedAll values are in hexadecimal.

!- Bell 206

This replaces SWITCH_APU_GENERATOR which was never implemented.

4.2.1.145 BUTTON_GOVERNOR_RPM_DN (144)Header Value Values: 0. Released

02 00 90 00 nn 1. PressedAll values are in hexadecimal.

!- Bell 206

This replaces SWITCH_BUS_TRANSFER which was never implemented.

4.2.1.146 SWITCH_RECIRC_FAN (145)Header Value Values: 0. Off

02 00 91 00 nn 1. OnAll values are in hexadecimal.

Controls a cabin fan.

4.2.1.147 SWITCH_CABIN_POWER (146)Header Value Values: 0. Off

02 00 92 00 nn 1. OnAll values are in hexadecimal.

Created only to allow transmitting a message; ignored by the plug-in, though it should show on the test utilities.

This replaces SWITCH_AC_PACK which has never been implemented.

4.2.1.148 SWITCH_HYDRAULIC_SYSTEM (147)Header Value Values: 0. Off

02 00 93 00 nn 1. OnAll values are in hexadecimal.

!- Bell 206

Page 140: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This replaces SWITCH_ISOLATION_VALVE which has never been implemented.

4.2.1.149 SWITCH_ENGINE_BLEED_AIR (148)Header Value Values: 0. Closed

1. Open2. Env off

02 xx 94 00 nnxx = engine number

All values are in hexadecimal.

“In civil aircraft, its primary use is to provide pressure for the aircraft cabin by supplying air to the Environmental Control System. Additionally, bleed air is used to keep critical parts of the aircraft (such as the wing leading edges) ice-free.” (Wikipedia)

4.2.1.150 SWITCH_HYDRAULIC_BOOST (149)Header Value Values: 0. Off

02 00 95 00 nn 1. OnAll values are in hexadecimal.

!- Bell 206

This replaces SWITCH_APU_BLEED_AIR which has never been implemented.

4.2.1.151 SWITCH_GOV_CONT (150)Header Value Values: 0. Off

02 00 96 00 nn 1. OnAll values are in hexadecimal.

!- Bell 206

This replaces SWITCH_FLIGHT_CONTROL_A which has never been implemented.

4.2.1.152 SWITCH_DG_AND_ATT_IND (151)Header Value Values: 0. Off

02 00 97 00 nn 1. OnAll values are in hexadecimal.

!- Bell 206

This replaces SWITCH_SPOILER which has never been implemented.

Page 141: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.153 BUTTON_ENG_FIRE_LEFT (152)Header Value Values: 0. Released

02 xx 98 00 nn 1. Pressedxx = Pilot/Copilot

All values are in hexadecimal.

If BUTTON_BOTTLE_ARMED_LEFT is present on the same device, this uses the Citation method:

"Lifting the guard and depressing the warning light simultaneously closes the respective firewall fuel and hydraulic valves, de-energizes the starter/generator and arms the two Freon extinguishing bottles. Firewall shutoff and extinguisher arming are indicated by illumination of the respective LO FUEL PRESS, LO HYD FLOW, F/W SHUTOFF and GEN OFF annunciator panel lights and both white BOTTLE ARMED lights."

Replaces SWITCH_ALT_FLAPS_MASTER, which was never implemented.

4.2.1.154 BUTTON_ENG_FIRE_RIGHT (153)Header Value Values: 0. Released

02 xx 99 00 nn 1. Pressedxx = Pilot/Copilot

All values are in hexadecimal.

If BUTTON_BOTTLE_ARMED_LEFT is present on the same device, this uses the Citation method:

"Lifting the guard and depressing the warning light simultaneously closes the respective firewall fuel and hydraulic valves, de-energizes the starter/generator and arms the two Freon extinguishing bottles. Firewall shutoff and extinguisher arming are indicated by illumination of the respective LO FUEL PRESS, LO HYD FLOW, F/W SHUTOFF and GEN OFF annunciator panel lights and both white BOTTLE ARMED lights."

Replaces SWITCH_ALT_FLAPS, which was never implemented.

4.2.1.155 SWITCH_CRS_NAV_SOURCE_SELECTOR (154)Header Value Values: 0. NAV1

02 00 9A 00 nn 1. NAV22. GPS

All values are in hexadecimal.

Page 142: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Selects the HSI source.

Note: This replaces SWITCH_VHF_NAV, which was never implemented.

4.2.1.156 BUTTON_CRS_NAV_SOURCE_CYCLE (155)Header Value Values: 0. Released

02 00 9B 00 nn 1. PressedAll values are in hexadecimal.

Cycles through HSI sources: NAV1, NAV2, and GPS.

Note: This replaces SWITCH_IRS which was never implemented.

4.2.1.157 BUTTON_RMI_1 (156)Header Value Values: 0. Released

02 xx 9C 00 nn 1. Pressedxx = pilot number

All values are in hexadecimal.

Selects the source for the RMI instrument's single needle pointer. Source may be ADF or VOR. There may be independent pilot and copilot controls if the airplane has copilot instruments.

The PC tracks the position of a virtual switch, and toggles it between ADF and VOR on every button press.

Page 143: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This button may interact with SWITCH_RMI_1 if one exists for the same pilot, though this would not be a standard configuration. Generally the switch will override the button.

Note: This replaces SWITCH_FMC which was never implemented.

4.2.1.158 BUTTON_RMI_2 (157)Header Value Values: 0. Released

02 xx 9D 00 nn 1. Pressedxx = pilot number

All values are in hexadecimal.

Selects the source for the RMI instrument's double needle pointer. Source may be ADF or VOR. There may be independent pilot and copilot controls if the airplane has copilot instruments.

The PC tracks the position of a virtual switch, and toggles it between ADF and VOR on every button press.

Page 144: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This button may interact with BUTTON_RMI_2 if one exists for the same pilot, though this would not be a standard configuration. Generally the switch will override the button.

Note: This replaces SWITCH_DISPLAY_SOURCE which was never implemented.

4.2.1.159 BUTTON_BOTTLE_ARMED_LEFT (158)Header Value Values: 0. Released

02 xx 9E 00 nn 1. Pressedxx = Pilot/Copilot

All values are in hexadecimal.This button (and the corresponding light, ANN_BOTTLE_ARMED_RIGHT) are armed by pressing the BUTTON_ENG_FIRE_LEFT button.

"Once armed, either bottle may be discharged to the selected engine by pushing the BOTTLE ARMED light. The light will go out as the light is pushed. System plumbing is such that both bottles can be directed to the same engine if necessary."

Replaces SWITCH_CONTROL_PANEL, which was never implemented.

Page 145: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.160 BUTTON_BOTTLE_ARMED_RIGHT (159)Header Value Values: 0. Released

02 xx 9F 00 nn 1. Pressedxx = Pilot/Copilot

All values are in hexadecimal.This button (and the corresponding light, ANN_BOTTLE_ARMED_RIGHT) are armed by pressing the BUTTON_ENG_FIRE_RIGHT button.

"Once armed, either bottle may be discharged to the selected engine by pushing the BOTTLE ARMED light. The light will go out as the light is pushed. System plumbing is such that both bottles can be directed to the same engine if necessary."

Replaces SWITCH_WINDOW_HEAT_SIDE, which was never implemented.

4.2.1.161 BUTTON_TOT_LT_TEST (160)Header Value Values: 0. Released

02 00 A0 00 nn 1. PressedAll values are in hexadecimal.

Helicopter function. This tests the Turbine Outlet Temperature indicator.

Was previously defined as SWITCH_WINDOW_HEAT_FWD, which has never been implemented.

4.2.1.162 SWITCH_CABIN_AC (161)Header Value Values: 0. Off

02 00 A1 00 nn 1. OnAll values are in hexadecimal.

This enables the cabin air conditioning. Not functional in a simulator.

Was previously defined as SWITCH_WINDOW_HEAT_TEST, which has never been implemented.

4.2.1.163 SWITCH_CABIN_AC_BLOWER (162)Header Value Values: 0. Released

02 00 A2 00 nn 1. PressedAll values are in hexadecimal.

This controls the cabin air conditioner blower. Not functional in a simulator.

Page 146: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Was previously defined as SWITCH_EQUIP_COOLING_SUPPLY, which has never been implemented.

4.2.1.164 SWITCH_CABIN_HEATER (163)Header Value Values: 0. Released

02 00 A3 00 nn 1. PressedAll values are in hexadecimal.

This controls the cabin heater. Not functional in a simulator.

Was previously defined as SWITCH_EQUIP_COOLING_EXHAUST, which has never been implemented.

4.2.1.165 SWITCH_CABIN_HEAT (164)Header Value Values: 0. Off

02 00 A4 00 nn 1. OnAll values are in hexadecimal.

This controls the cabin heat. Not functional in a simulator.

Was previously defined as SWITCH_EMERGENCY_EXIT_LIGHT, which has never been implemented.

4.2.1.166 SWITCH_CABIN_OUTFLOW_VALVE (165)Header Value Values: 0. Off

02 00 A5 00 nn 1. OnAll values are in hexadecimal.

4.2.1.167 BUTTON_AT_DISC (166)Header Value Values: 0. Released

1. Pressed02 00 A6 00 nn

All values are in hexadecimal.

Disconnects the Auto Throttle on a Jet throttle quadrant.

Note: This replaces SWITCH_DIG_PRESS_MODE which was never implemented.

Page 147: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.168 SWITCH_STALL_WARNING_TEST (167)Header Value Values: 0. Released

1. Pressed02 00 A7 00 nn

All values are in hexadecimal.

Tests the stall warning horn when pressed.

Note: This should be BUTTON_STALL_WARNING_TEST but it slipped through the cracks.

4.2.1.169 BUTTON_PROP_GOVERNOR_TEST (168)Header Value Values: 0. Released

1. Pressed02 00 A8 00 nnAll values are in hexadecimal.

Temporarily engages the prop governor.

At this time it has only been implemented on the B200.

4.2.1.170 BUTTON_SIM_RESET (169)Header Value Values: 0. Released

1. Pressed02 00 A9 00 nnAll values are in hexadecimal.

Press and release once to reset the simulator to a known state.

4.2.1.171 SWITCH_DEFROST (170)Header Value Values: 0. Off

02 00 AA 00 nn 1. OnAll values are in hexadecimal.

This controls a cabin window defroster. May not be functional in a simulator.

Was previously defined as BUTTON_SIM_START, which has never been implemented.

4.2.1.172 BUTTON_SIM_FREEZE (171)Header Value Values: 0. Released

1. Pressed01 00 AB 00 nnAll values are in hexadecimal.

Page 148: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Press and release once to freeze the simulated airplane’s location, or if already frozen, to release it.

4.2.1.173 SWITCH_PILOT_AIR (172)Header Value Values: 0. Off

02 00 AC 00 nn 1. OnAll values are in hexadecimal.

This controls cabin air flow. May not be functional in a simulator.

Was previously defined as BUTTON_SIM_MAP, which has never been implemented.

4.2.1.174 SWITCH_FLOOD_LIGHTS (173)Header Value Values: 0. Off

02 00 AD 00 nn 1. OnAll values are in hexadecimal.

58-590000-67_Section 7: Hawker Beechcraft Corporation, Systems Description, Model G58, page 7-51: When the FLOOD LIGHTS switch is turned on, the INST FLOOD rheostat may be used to adjust the intensity of the LED flood lights located on the underside of the glare shield.

Was previously defined as BUTTON_SIM_CON, which has never been implemented.

4.2.1.175 SWITCH_PANEL_LIGHTS (174)Header Value Values: 0. Off

02 00 AE 00 nn 1. OnAll values are in hexadecimal.

58-590000-67_Section 7: Hawker Beechcraft Corporation, Systems Description, Model G58, page 7-51: When the PANEL LIGHTS switch is turned on the other three rheostats may be used to control the illumination of the following items:

FLIGHT INST rheostat – Adjusts the lighting intensity of the PFD and MFD and the electro luminescent panels associated with the PFD, MFD, audio panel and clock light.

STANDBY INST rheostat - Adjusts the lighting intensity of the following items:• Rudder Trim Post Light

Page 149: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

• Elevator Trim Post Light• Aileron Trim Post Light• Cowl Flaps Post Light• Prop Deice Ammeter• Standby Airspeed Indicator• Standby Altimeter• Standby Attitude Indicator

SUBPANEL LIGHTING rheostat - Adjusts the lighting intensity of the electroluminescent subpanels and circuit breaker panels.

Was previously defined as BUTTON_SIM_INSTR, which has never been implemented.

4.2.1.176 SWITCH_TANK_SELECT (175)Header Value Values: 0. Off (fuel cutoff)

02 xx AF 00 Nn 1. Onxx = engine number 2+. Feed from tank number nn-2

All values are in hexadecimal.

Controls fuel source for the corresponding engine.

4.2.1.177 BUTTON_AUD_MKR_MUTE (176)Header Value Values: 0. Released

1. Pressed02 00 B0 00 nnAll values are in hexadecimal.

Controls whether the marker beacons’ audio is audible.

4.2.1.178 BUTTON_AUD_COM1 (177)Header Value Values: 0. Released

1. Pressed02 00 B1 00 nnAll values are in hexadecimal.

Audio plays back from COM1 radio.

4.2.1.179 BUTTON_AUD_COM2 (178)Header Value Values: 0. Released

1. Pressed02 00 B2 00 nnAll values are in hexadecimal.

Audio plays back from COM2 radio.

Page 150: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.180 BUTTON_AUD_NAV1 (179)Header Value Values: 0. Released

1. Pressed02 00 B3 00 nnAll values are in hexadecimal.

Audio plays back from NAV1 radio.

4.2.1.181 BUTTON_AUD_NAV2 (180)Header Value Values: 0. Released

1. Pressed02 00 B4 00 nnAll values are in hexadecimal.

Audio plays back from NAV2 radio.

4.2.1.182 BUTTON_AUD_DME (181)Header Value Values: 0. Released

1. Pressed02 00 B5 00 nnAll values are in hexadecimal.

Audio plays back from DME radio.

4.2.1.183 BUTTON_AUD_ADF (182)Header Value Values: 0. Released

1. Pressed02 00 B6 00 nnAll values are in hexadecimal.

Audio plays back from ADF radio.

4.2.1.184 BUTTON_AUD_TEST (183)Header Value Values: 0. Released

1. Pressed02 00 B7 00 nnAll values are in hexadecimal.

Pressing this turns on all audio panel lights until released.

4.2.1.185 BUTTON_AUD_SENS (184)Header Value Values: 0. Released

1. Pressed02 00 B8 00 nnAll values are in hexadecimal.

Pressing this toggles audio sensitivity between low and high. Low or high indicators light respectively.

Page 151: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.186 BUTTON_AUD_COM1_MIC (185)Header Value Values: 0. Released

1. Pressed02 00 B9 00 nnAll values are in hexadecimal.

Microphone is routed to COM1 radio.

4.2.1.187 BUTTON_AUD_COM2_MIC (186)Header Value Values: 0. Released

1. Pressed02 00 BA 00 nnAll values are in hexadecimal.

Microphone is routed to COM2 radio.

4.2.1.188 BUTTON_AUD_COM1_COM2_SPLIT (187)Header Value Values: 0. Released

1. Pressed02 00 BB 00 nnAll values are in hexadecimal.

Per the GMA 1347 Pilot's Guide:

Pressing the COM 1/2 key selects the split COM function. During split COM operation, the COM1, COM1 MIC, COM2 and COM2 MIC keys are active.

When the COM 1/2 key is selected, COM1 is used by the pilot for transmission and COM2 is used by the copilot. The COM1 MIC annunciator blinks when the pilot’s microphone is keyed and the COM2 MIC annunciator blinks when the copilot’s microphone is keyed.

In this mode, both the pilot and the copilot can transmit simultaneously over separate radios. The pilot can still monitor COM3, NAV1, NAV2, DME, ADF, AUX andMKR audio as selected, but the copilot is only able to monitor COM2.

Split COM mode is cancelled by pressing the COM ½ key again.

This replaces BUTTON_AUD_COM12_SPLIT, which in turn replaces BUTTON_AUD_COM12_MIC.

4.2.1.189 BUTTON_AUD_SPKR (188)Header Value Values: 0. Released

1. Pressed02 00 BC 00 nnAll values are in hexadecimal.

Page 152: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Enables the cabin speakers.

4.2.1.190 BUTTON_AUD_PILOT (189)Header Value Values: 0. Released

1. Pressed02 00 BD 00 nnAll values are in hexadecimal.

Uses the Pilot's microphone as the source for voice communications.

4.2.1.191 BUTTON_AUD_COPILOT (190)Header Value Values: 0. Released

1. Pressed02 00 BE 00 nnAll values are in hexadecimal.

Uses the Copilot's microphone as the source for voice communications.

4.2.1.192 BUTTON_AUD_TEST_ALL (191)Header Value Values: 0. Released

1. Pressed02 00 BF 00 nnAll values are in hexadecimal.

Pressing this button lights all display, indicators and annunciators (everywhere) until released. In theory.

4.2.1.193 BUTTON_GROUP_AUD_STARTThis is not actually a message but has the same value as the first message in the group of messages that an audio panel might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.194 BUTTON_GROUP_AUD_ENDThis is not actually a message but has the same value as the last message in the group of messages that an audio panel might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.195 SWITCH_ELEVATOR_TRIM_ONOFF (192)Header Value Values: 0. Off (electric trim not available)

02 00 C0 00 nn 1. OnAll values are in hexadecimal.

Page 153: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Enables/disables the electric trim system. If the system was disabled by pressing the disconnect button (see 4.2.1.197), toggling this off and then on will re-enable it.

At this time it has only been implemented on the B200.

4.2.1.196 BUTTON_MAST_CAUT (193)Header Value Values: 0. Released

1. Pressed02 00 C1 00 nnAll values are in hexadecimal.

Master Caution button. This is a lighted button that blinks to warn of certain conditions. Press to extinguish the light if the conditions have been neutralized.

At this time it has only been implemented on the B200.

4.2.1.197 BUTTON_ELEVATOR_TRIM_DISCONNECT (194)Header Value Values: 0. Off

02 00 1A 00 nn 1. OnAll values are in hexadecimal.

This is a momentary push-button mounted on the yoke, one for each pilot. Pushing this button disables the electric trim until it has been reset. Reset by turning the SWITCH_ELEVATOR_TRIM_ONOFF switch off, then on. (See 4.2.1.193.)

At this time it has only been implemented on the B200.

4.2.1.198 SWITCH_RUDDER_BOOST (195)Header Value Values: 0. Off

1. On02 00 C3 00 nn

All values are in hexadecimal.

Power Steering for the rudder.

At this time it has only been implemented on the B200.

Page 154: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.199 SWITCH_CABIN_PRESSURE_DUMP (196)Header Value Values: 0. Off

1. On2. Test (momentary)

02 00 C4 00 nn

All values are in hexadecimal.

0. Off: Pressurization works as normal.1. On: Dumps air from a pressurized cabin by opening the valve.2. Test: Tests the pressurization system by closing the valve. For on-ground use

only.

4.2.1.200 SWITCH_FLAPS_3WAY_KINGAIR (197)Header Value Values: 0. Raise

1. Lower2. Neutral

02 00 C5 00 nn

All values are in hexadecimal.

The flaps switch for the KingAir B200 has three positions. Each position latches; that is, no position is momentary. Since 0% represents the flaps in the upper position, “below 30%” in this context refers to a position between 30% and 100%.

The flaps may be moved between 0% and 30%. The flaps will never stop between those positions; if the switch is moved while the flaps are in transit they will reverse direction until they reach one location or the other.

Once at or below 30% the flaps may be moved and stopped at any position below 30%.

Therefore: The upper switch position moves the flap towards 0%. If the flaps are below

30% they can be stopped by moving the switch into the middle position. If the flaps are above 30%, moving the switch to the middle position will return the flaps to 30%.

The middle switch position moves the flaps to 30% if it is above 30%, and acts as a neutral position below 30%.

The lower switch position moves the flaps towards 100%. Once past 30% the flaps can be stopped at any time by moving the switch to the middle position, or moved towards 0% by moving the switch to the upper position.

At this time it has only been implemented on the B200.

Page 155: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.201 SWITCH_ICE_LIGHTS (198)Header Value Values: 0. Off

1. On02 00 C6 00 nn

All values are in hexadecimal.

This switch controls floodlights intended to illuminate ice buildup on the wings of an aircraft.

Was previously defined as SWITCH_EXTERNAL_POWER, which has never been implemented.

4.2.1.202 SWITCH_ENGINE_IGNITION_AND_START (199)Header Value Values: 0. Off

1. On2. Starter only

02 xx C7 00 nnxx = engine number

All values are in hexadecimal.

This is used on a turbine engine.

Off does nothing. Note that this does not affect the engine (e.g. it will not shut down the engine if the engine is running).

On engages the ignition and runs the starter function. Starter only runs the starter function with the ignition off.

4.2.1.203 SWITCH_ENGINE_FIRE_WARN_TEST (200)Header Value Values: 0. Off

1+. Engine number02 00 C8 00 nn

All values are in hexadecimal.

Tests the fire warning system for the corresponding engine.

4.2.1.204 SWITCH_FIREWALL_SHUTOFF (201)Header Value Values: 0. Closed (fuel cutoff)

1. Open02 xx C9 00 nnxx = engine number

All values are in hexadecimal.

When engaged, cuts off fuel to the corresponding engine. Note that the value indicates fuel flow rather than the switch position per se. The switch reports “off” when engaged.

Page 156: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.205 SWITCH_VOLT_METER_BUS_SELECTOR (202)Header Value Values: 0. External power

1. Generator: center2. Generator: left3. Generator: right4. Triple feed5. Battery

02 00 CA 00 nn

All values are in hexadecimal.

Switches the volt meter to indicate voltage on the bus(es) selected.

4.2.1.206 SWITCH_RMI_1 (203)Header Value Values: 0. VOR

1. ADF02 xx CB 00 nnxx = pilot number

All values are in hexadecimal.

Selects the source for the RMI instrument's single needle pointer. Source may be ADF or VOR. There may be independent pilot and copilot controls if the airplane has copilot instruments.

Page 157: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This switch may interact with BUTTON_RMI_1 if one exists for the same pilot, though this would not be a standard configuration. Generally the switch will override the button.

4.2.1.207 SWITCH_RMI_2 (204)Header Value Values: 0. VOR

1. ADF02 xx CC 00 nnxx = pilot number

All values are in hexadecimal.

Selects the source for the RMI instrument's double needle pointer. Source may be ADF or VOR. There may be independent pilot and copilot controls if the airplane has copilot instruments.

This switch may interact with BUTTON_RMI_2 if one exists for the same pilot, though this would not be a standard configuration. Generally the switch will override the button.

Page 158: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.208 SWITCH_MOMENTARY_FUEL_QTY (205)Header Value Values: 0. Main

1. Auxiliary (momentary)02 00 CD 00 nn

All values are in hexadecimal.

Selects the fuel tanks to be indicated.

Note: This should be BUTTON_FUEL_QTY but fell through the cracks.

4.2.1.209 BUTTON_430_530_PUSH_SQUELCH (206)Header Value Values: 0. Released

1. Pressedv 00 CE 00 nnAll values are in hexadecimal.

COM Power/Volume Knob. Press momentarily to disable automatic squelch control.

4.2.1.210 BUTTON_430_530_PUSH_IDENT (207)Header Value Values: 0. Released

1. Pressed02 00 CF 00 nnAll values are in hexadecimal.

VLOC Volume Knob. Press momentarily to enable/disable the ident tone.

4.2.1.211 BUTTON_430_530_PUSH_CV (208)Header Value Values: 0. Released

1. Pressed02 00 D0 00 nnAll values are in hexadecimal.

Small left knob (COM/VLOC). Toggles the C/V knob between adjusting the COM frequency and the VLOC frequency.

4.2.1.212 BUTTON_430_530_PUSH_CURSOR (209)Header Value Values: 0. Released

1. Pressed02 00 D1 00 nnAll values are in hexadecimal.

Small right knob. Toggles the cursor function on and off.

Page 159: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.213 BUTTON_430_530_COM_FLIP (210)Header Value Values: 0. Released

1. Pressed02 00 D2 00 nnAll values are in hexadecimal.

Swaps the active and standby COM frequencies. Press and hold to select emergency channel (121.500 MHz).

4.2.1.214 BUTTON_430_530_NAV_FLIP (211)Header Value Values: 0. Released

1. Pressed02 00 D3 00 nnAll values are in hexadecimal.

Toggles between the active and standby COM frequencies (the standby frequency can be changed using the C/V knob).

4.2.1.215 BUTTON_430_530_RANGE_UP (212)Header Value Values: 0. Released

1. Pressed02 00 D4 00 nnAll values are in hexadecimal.

Increases the map range so as to see a larger area (zoom out).

4.2.1.216 BUTTON_430_530_RANGE_DN (213)Header Value Values: 0. Released

1. Pressed02 00 D5 00 nnAll values are in hexadecimal.

Decreases the map range so as to see more detail (zoom in).

4.2.1.217 BUTTON_430_530_DIRECT_TO (214)Header Value Values: 0. Released

1. Pressed02 00 D6 00 nnAll values are in hexadecimal.

Brings up the Direct-To navigation function. The symbol on the button looks like a capital letter “D” bisected with a horizontal arrow. (Approximately: D) Provides access to the direct-to function, which allows the pilot to enter a destination waypoint and establishes a direct course to the selected destination.

Page 160: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.218 BUTTON_430_530_MENU (215)Header Value Values: 0. Released

1. Pressed02 00 D7 00 nnAll values are in hexadecimal.

Garmin 430 or 530 MENU key. Displays a context-sensitive list of options. This options list allows the pilot to access additional features or make settings changes which relate to the currently displayed page.

4.2.1.219 BUTTON_430_530_CLEAR (216)Header Value Values: 0. Released

1. Pressed02 00 D8 00 nnAll values are in hexadecimal.

Garmin 430 or 530 CLR key. Used to erase information, remove map detail, or to cancel an entry. Press and hold the CLR key to immediately display the Default NAV Page.

4.2.1.220 BUTTON_430_530_ENTER (217)Header Value Values: 0. Released

1. Pressed02 00 D9 00 nnAll values are in hexadecimal.

Garmin 430 or 530 ENT key. Used to approve an operation or complete data entry. It is also used to confirm information during power on.

4.2.1.221 BUTTON_430_530_CDI (218)Header Value Values: 0. Released

1. Pressed02 00 DA 00 nnAll values are in hexadecimal.

Garmin 430 or 530 CDI key. Used to toggle which navigation source (GPS or VLOC) provides output to an external HSI or CDI.

4.2.1.222 BUTTON_430_530_OBS (219)Header Value Values: 0. Released

1. Pressed02 00 DB 00 nn

Page 161: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

All values are in hexadecimal.

Garmin 430 or 530 OBS key. Used to select manual or automatic sequencing of waypoints.

4.2.1.223 BUTTON_430_530_MESSAGE (220)Header Value Values: 0. Released

1. Pressed02 00 DC 00 nnAll values are in hexadecimal.

Garmin 430 or 530 MSG key. Used to view system messages and to alert the pilot to important warnings and requirements.

4.2.1.224 BUTTON_430_530_FLIGHT_PLAN (221)Header Value Values: 0. Released

1. Pressed02 00 DD 00 nnAll values are in hexadecimal.

Garmin 430 or 530 FPL key. Allows the pilot to create, edit, activate, and invert flight plans, as well as access approaches, departures, and arrivals.

4.2.1.225 BUTTON_430_530_PROCEDURES (222)Header Value Values: 0. Released

1. Pressed02 00 DE 00 nnAll values are in hexadecimal.

Garmin 430 or 530 PROC key. Allows the pilot to select and remove approaches, departures, and arrivals from the flight plan.

4.2.1.226 BUTTON_530_VERTICAL_NAV (223)Header Value Values: 0. Released

1. Pressed02 00 DF 00 nnAll values are in hexadecimal.

Garmin 430 or 530 VNAV key. Allows the pilot to create a three-dimensional profile which provides guidance to a final (target) altitude at a specified location.

Page 162: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.227 BUTTON_GROUP_430_530_STARTThis is not actually a message but has the same value as the first message in the group of messages that a PFC 430 or PFC 530 might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.228 BUTTON_GROUP_430_530_ENDThis is not actually a message but has the same value as the last message in the group of messages that a PFC 430 or PFC 530 might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.229 STATUS_ELECTRIC_TRIM_AVAILABLE (224)Header Value Values: 0. Electric trim disabled

1. Electric trim available02 00 E0 00 nn

All values are in hexadecimal.

This is a status provided by the hardware controller to the host PC for simulators where the electric trim can be disabled. The HWC necessarily tracks the status of the electric trim; having the PC track it in parallel is redundant and could cause problems if they go out of synch. Instead the HWC simply passes its status upstream.

4.2.1.230 STATUS_430_ALT_PRESELECT_AVAILABLE (225)Header Value Values: 0. Missing

1. Available02 00 E1 00 nn

All values are in hexadecimal.

Reports whether a slave 430 includes the Altitude Pre-Select section. This is mostly intended for use with the test GUI.

Previously called STATUS_ALT_PRESELECT_AVAILABLE, never used.

4.2.1.231 BUTTON_ECU_TEST (226)Header Value Values: 0. Released

1. Pressed02 00 E2 00 nnAll values are in hexadecimal.

Tests the ECU on a FADEC-enabled airplane (DA42).

Page 163: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.232 SWITCH_ECU_SWAP (227)Header Value Values: 0. Auto

1. ECU B02 xx E3 00 nnxx = engine number

All values are in hexadecimal.

Manually forces use of the backup ECU on a FADEC-enabled airplane (DA42).

4.2.1.233 BUTTON_GEAR_HORN_TEST (228)Header Value Values: 0. Released

1. Pressed02 00 E4 00 nnAll values are in hexadecimal.

Tests the gear warning horn.

4.2.1.234 BUTTON_G1000_AP_ENG (229)Header Value Reserved Row Column Values: 0: released

02 xx E5 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Engage. Engages/disengages the autopilot.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.235 BUTTON_G1000_YD (230)Header Value Reserved Row Column Values: 0: released

02 xx E6 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Page 164: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Autopilot Yaw Damper. Engages/disengages the yaw damper.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.236 BUTTON_G1000_FD (231)Header Value Reserved Row Column Values: 0: released

02 xx E7 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Flight Director. Activates/deactivates the flight director only.

Pressing once turns on the flight director in the default pitch and roll modes. Pressing again deactivates the flight director and removes the Command Bars. If the autopilot is engaged, the key is disabled.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

Page 165: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.237 BUTTON_G1000_HDG (232)Header Value Reserved Row Column Values: 0: released

02 xx E8 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Heading. Selects/deselects Heading Select Mode.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.238 BUTTON_G1000_NAV (233)Header Value Reserved Row Column Values: 0: released

02 xx E9 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot ILS Navigation. Selects/deselects Navigation Mode.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore

Page 166: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.239 BUTTON_G1000_APR (234)Header Value Reserved Row Column Values: 0: released

02 xx EA 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot ILS Approach. Selects/deselects Approach Mode.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.240 BUTTON_G1000_VS (235)Header Value Reserved Row Column Values: 0: released

02 xx EB 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Vertical Speed. Selects/deselects Vertical Speed Mode.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the

Page 167: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.241 BUTTON_G1000_FLC (236)Header Value Reserved Row Column Values: 0: released

02 xx EC 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Flight Level Change. Selects/deselects Flight Level Change Mode.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.242 BUTTON_G1000_TRIM (237)Header Value Reserved Row Column Values: 0: released

02 xx ED 00 nn 00 00 00 00 rr cc 1: downxx = panel type 2: up

All values are in hexadecimal.

Autopilot Nose Up and Nose Down. Control the active mode reference in Pitch Hold, Vertical Speed, and Flight Level Change modes.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 168: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

This message is obsolescent. New firmware designs should use BUTTON_G1000_TRIM_UP and BUTTON_G1000_TRIM_DN instead.

4.2.1.243 BUTTON_G1000_ALT (238)Header Value Reserved Row Column Values: 0: released

02 xx EE 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Altitude. Selects/deselects Altitude Hold Mode.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

Page 169: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.244 BUTTON_G1000_VNAV (239)Header Value Reserved Row Column Values: 0: released

02 xx EF 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Vertical Navigation. Selects/deselects Vertical Navigation Mode.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.245 BUTTON_G1000_BC (240)Header Value Reserved Row Column Values: 0: released

02 xx F0 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Back Course. Selects/deselects Back Course Mode.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that, generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We

Page 170: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

also recommend adding a way to configure the A/P cluster selector against future need.

4.2.1.246 BUTTON_G1000_DIRECT_TO (241)Header Value Reserved Row Column Values: 0: released

02 xx F1 00 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Direct-To. Allows the user to enter a destination waypoint and establish a direct course to the selected destination (specified by the identifier, chosen from the active route, or taken from the map pointer position).

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.247 BUTTON_G1000_MENU (242)Header Value Values: 0. released

02 xx F2 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

Menu. Displays a context-sensitive list of options. This list allows the user to access additional features, or to make setting changes that relate to certain pages.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.248 BUTTON_G1000_FPL (243)Header Value Values: 0. released

02 xx F3 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

Flight plan. Displays the active Flight Plan Page for creating and editing the active flight plan, or for accessing stored flight plans.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 171: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.249 BUTTON_G1000_PROC (244)Header Value Values: 0. released

02 xx F4 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

Procedure. Selects approaches, departures and arrivals from the flight plan. If a flight plan is used, available procedures for the departure and/or arrival airport are automatically suggested. If a flight plan is not used, the desired airport and the desired procedure may be selected. This key selects IFR departure procedures (DPs), arrival procedures (STARs) and approaches (IAPs) from the database and loads them into the active flight plan.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.250 BUTTON_G1000_CLR (245)Header Value Values: 0. released

02 xx F5 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

Clear. Erases information, cancels an entry, or removes page menus. To display theNavigation Map Page immediately, press and hold CLR (MFD only).

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.251 BUTTON_G1000_ENT (246)Header Value Values: 0. released

02 xx F6 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

Enter. Accepts a menu selection or data entry. This key is used to approve an operation or complete data entry. It is also used to confirm selections and information entries.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 172: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.252 BUTTON_G1000_SOFT_KEY_1 (247)Header Value Values: 0. released

02 xx F7 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.253 BUTTON_G1000_SOFT_KEY_2 (248)Header Value Values: 0. released

02 xx F8 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.254 BUTTON_G1000_SOFT_KEY_3 (249)Header Value Values: 0. released

02 xx F9 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.255 BUTTON_G1000_SOFT_KEY_4 (250)Header Value Values: 0. released

02 xx FA 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

Page 173: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.256 BUTTON_G1000_SOFT_KEY_5 (251)Header Value Values: 0. released

02 xx FB 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.257 BUTTON_G1000_SOFT_KEY_6 (252)Header Value Values: 0. released

02 xx FC 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.258 BUTTON_G1000_SOFT_KEY_7 (253)Header Value Values: 0. released

02 xx FD 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 174: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.259 BUTTON_G1000_SOFT_KEY_8 (254)Header Value Values: 0. released

02 xx FE 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.260 BUTTON_G1000_SOFT_KEY_9 (255)Header Value Values: 0. released

02 xx FF 00 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.261 BUTTON_G1000_SOFT_KEY_10 (256)Header Value Values: 0. released

02 xx 00 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.262 BUTTON_G1000_SOFT_KEY_11 (257)Header Value Values: 0. released

02 xx 01 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

Page 175: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.263 BUTTON_G1000_SOFT_KEY_12 (258)Header Value Values: 0. released

02 xx 02 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

This is one of a row of twelve keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.264 BUTTON_G1000_PUSH_ID (259)Header Value Values: 0. released

02 xx 03 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

NAV VOL/ID Knob. Press to toggle Morse code identifier audio ON/OFF.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.265 BUTTON_G1000_NAV_1_2 (260)Header Value Values: 0. released

02 xx 04 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

NAV Knob. Press to toggle light blue tuning box between NAV1 and NAV2.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.266 BUTTON_G1000_NAV_FLIP (261)Header Value Values: 0. released

02 xx 05 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Page 176: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

NAV Frequency Transfer Key. Transfers the standby and active NAV frequencies.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.267 BUTTON_G1000_HDG_SYNC (262)Header Value Values: 0. released

02 xx 06 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

HDG knob. Press to display a digital heading momentarily to the left of the HSI and synchronize the Selected Heading to the current heading.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.268 BUTTON_G1000_ALT_PB (263)Header Value Values: 0. released

02 xx 07 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

ALT knob. Press to set the altitude (set by turning the knobs) as the target.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.269 BUTTON_G1000_COM_FLIP (264)Header Value Values: 0. released

02 xx 08 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

COM Frequency Transfer Key (EMERG): Transfers the standby and active COM frequencies. Press and hold two seconds to tune the emergency frequency (121.5 MHz) automatically into the active frequency field.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 177: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.270 BUTTON_G1000_SQUELCH (265)Header Value Values: 0. released

02 xx 09 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

COM VOL/SQ Knob. Press to turn the COM automatic squelch ON/OFF.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.271 BUTTON_G1000_COM_1_2 (266)Header Value Values: 0. released

02 xx 0A 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

COM VOL/SQ Knob. Press to turn the COM automatic squelch ON/OFF.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.272 BUTTON_G1000_JOY_UP (267)Header Value Values: 0. released

02 xx 0B 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Toggle in the eight principal compass point directions to pan around the map.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.273 BUTTON_G1000_JOY_DOWN (268)Header Value Values: 0. released

02 xx 0C 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Toggle in the eight principal compass point directions to pan around the map.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 178: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.274 BUTTON_G1000_JOY_LEFT (269)Header Value Values: 0. released

02 xx 0D 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Toggle in the eight principal compass point directions to pan around the map.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.275 BUTTON_G1000_JOY_RIGHT (270)Header Value Values: 0. released

02 xx 0E 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Toggle in the eight principal compass point directions to pan around the map.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.276 BUTTON_G1000_JOY_UP_LEFT (271)Header Value Values: 0. released

02 xx 0F 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Toggle in the eight principal compass point directions to pan around the map.

On some hardware only the four cardinal compass point directions may be available.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 179: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.277 BUTTON_G1000_JOY_UP_RIGHT (272)Header Value Values: 0. released

02 xx 10 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Toggle in the eight principal compass point directions to pan around the map.

On some hardware only the four cardinal compass point directions may be available.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.278 BUTTON_G1000_JOY_DOWN_LEFT (273)Header Value Values: 0. released

02 xx 11 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Toggle in the eight principal compass point directions to pan around the map.

On some hardware only the four cardinal compass point directions may be available.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.279 BUTTON_G1000_JOY_DOWN_RIGHT (274)Header Value Values: 0. released

02 xx 12 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Toggle in the eight principal compass point directions to pan around the map.

On some hardware only the four cardinal compass point directions may be available.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 180: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.280 BUTTON_G1000_JOY_PUSH_BUTTON (275)Header Value Values: 0. released

02 xx 13 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

Range joystick. Press to activate Map Pointer for map panning .

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.281 BUTTON_G1000_CRS_CTR_CDI (276)Header Value Values: 0. released

02 xx 14 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

CRS knob. Press to re-center the CDI and return course pointer directly TO bearing of active waypoint/station.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.282 BUTTON_G1000_CRSR (277)Header Value Values: 0. released

02 xx 15 01 nn 1. pressedxx = panel type

All values are in hexadecimal.

FMS knob. Press to turn the selection cursor ON/OFF.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

4.2.1.283 SWITCH_G1000_DISPLAY_BACKUP (278)Header Value Values: 0. Off

02 xx 16 01 nn 1. onxx = pilot/copilot

All values are in hexadecimal.

DISPLAY BACKUP Button. Manually selects Reversionary Mode.

This is usually implemented via a push-on-push-off type latching pushbutton. Latch the switch ("in") for normal mode, release ("out") for revisionary mode.

Page 181: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Note that this control is normally found on the GMA 1347, for all that it affects G1000 PFD and MFD operation.

4.2.1.284 BUTTON_G1000_TRIM_UP (279)Header Value Reserved Row Column Values: 0: released

02 xx 17 01 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Nose Up. Control the active mode reference in Pitch Hold, Vertical Speed, and Flight Level Change modes.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

BUTTON_G1000_TRIM_UP and BUTTON_G1000_TRIM_DN replace the obsolescent BUTTON_G1000_TRIM message. New firmware designs should use these two messages.

4.2.1.285 BUTTON_G1000_TRIM_DN (280)Header Value Reserved Row Column Values: 0: released

02 xx 18 01 nn 00 00 00 00 rr cc 1: pressedxx = panel type

All values are in hexadecimal.

Autopilot Nose Dn. Control the active mode reference in Pitch Hold, Vertical Speed, and Flight Level Change modes.

The selector (xx) is 0 for PFD, 1 for MFD and 2 for PFD2.

Page 182: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This button is located on the optional Autopilot cluster of a G1000. Because there are multiple A/P cluster layouts, A/P buttons include row and column information so the Test GUI can show the correct layout.

Note that generally, buttons on a panel will return the same selector as the rest of the panel. On many airplanes only the MFD includes an A/P cluster, if either. However, the A/P cluster does show on the PFD of some airplanes, and often shows on PFC 1000 PFD panels regardless of the actual airplane configuration. Unfortunately certain supporting software doesn't recognize A/P buttons returning a PFD selector; therefore we recommend sending an MFD selector regardless of which panel the button is on. We also recommend adding a way to configure the A/P cluster selector against future need.

BUTTON_G1000_TRIM_UP and BUTTON_G1000_TRIM_DN replace the obsolescent BUTTON_G1000_TRIM message. New firmware designs should use these two messages.

4.2.1.286 BUTTON_G1000_DISPLAY_BACKUP (281)Header Value Values: 0. pressed

02 xx 16 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

DISPLAY BACKUP Button. Manually selects Reversionary Mode.

This message is sent when the Display Backup button is implemented via a momentary pushbutton. Instead of sending "off" and "on" status, the button toggles the status which is maintained in the plug-in. Every button press should toggle the status (except during Full Reports) and every button release should be ignored.

In some cases a simulator may include two GMA 1347s (this is usually only the case with G1000 Retrofit Panels). Two separate toggle switches in the same system will interfere with each other; therefore we implemented this message to allow for a synchronized setting within the plug-in that can be toggled from either source. Of course this requires that the hardware include momentary pushbuttons rather than latching switches.

Note that this control is normally found on the GMA 1347, for all that it affects G1000 PFD and MFD operation.

4.2.1.287 BUTTON_G1000_RESERVED_4 (282)Not implemented, reserved against future need.

Page 183: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.288 BUTTON_G1000_RESERVED_5 (283)Not implemented, reserved against future need.

4.2.1.289 BUTTON_G1000_RESERVED_6 (284)Not implemented, reserved against future need.

4.2.1.290 BUTTON_GROUP_G1000_STARTThis is not actually a message but has the same value as the first message in the group of messages that a G1000 might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.291 BUTTON_GROUP_G1000_ENDThis is not actually a message but has the same value as the last message in the group of messages that a G1000 might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.292 BUTTON_HDG_SYNC (285)Header Value Values: 0. Released

1. Pressed02 00 1D 01 nnAll values are in hexadecimal.

Press and release once to cause the heading bug to be set to the current heading.

4.2.1.293 BUTTON_AUD_PLAY (286)Header Value Values: 0. pressed

02 xx 1E 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

PLAY button on the GMA 1347. Press once to play the last recorded COM audio. Press again while audio is playing and the previous block of recorded audio is played. Each subsequent press plays each previously recorded block.Pressing the MKR/MUTE Key during play of a memory block stops play.

Page 184: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.294 BUTTON_AUD_AUX (287)Header Value Values: 0. pressed

02 xx 1F 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

AUX button on the GMA 1347.

4.2.1.295 BUTTON_AUD_MAN_SQ (288)Header Value Values: 0. pressed

02 xx 20 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

MAN SQ button on the GMA 1347. Enables manual squelch for the intercom. When the intercom is active, press the PILOT Knob to illuminate SQ. Turn the PILOT/PASS Knobs to adjust squelch.

4.2.1.296 BUTTON_AUD_VOL_SQ_TOGGLE (289)Header Value Values: 0. pressed

02 xx 21 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

PILOT Knob on the GMA 1347. Press to switch between volume and squelch control as indicated by illumination of VOL or SQ. The MAN SQ Key must be selected to allow squelch adjustment.

4.2.1.297 BUTTON_AUD_COM3_MIC (290)Header Value Values: 0. pressed

02 xx 22 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

COM3 MIC button on the GMA 1347. Selects the #3 transmitter for transmitting. COM3 receive is simultaneously selected when this key is pressed allowing received audio from the #3 COM receiver to be heard.

Page 185: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.298 BUTTON_AUD_COM3 (291)Header Value Values: 0. pressed

02 xx 23 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

COM3 button on the GMA 1347. When selected, audio from the #3 COM receiver can be heard.

4.2.1.299 BUTTON_AUD_TEL (292)Header Value Values: 0. pressed

02 xx 24 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

TEL button on the GMA 1347. Selects and deselects telephone audio.

4.2.1.300 BUTTON_AUD_PA (293)Header Value Values: 0. pressed

02 xx 25 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

PA button on the GMA 1347. Selects the passenger address system. The selected COM transmitter is deselected when the PA Key is pressed.

4.2.1.301 BUTTON_AUD_RESERVED_1 (294)Not implemented, reserved against future need.

4.2.1.302 BUTTON_AUD_RESERVED_2 (295)Not implemented, reserved against future need.

4.2.1.303 BUTTON_AUD_RESERVED_3 (296)Not implemented, reserved against future need.

4.2.1.304 BUTTON_AUD_RESERVED_4 (297)Not implemented, reserved against future need.

Page 186: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.305 BUTTON_AUD_RESERVED_5 (298)Not implemented, reserved against future need.

4.2.1.306 BUTTON_GROUP_AUD2_STARTThis is not actually a message but has the same value as the first message in the group of messages that an audio panel might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.307 BUTTON_GROUP_AUD2_ENDThis is not actually a message but has the same value as the last message in the group of messages that an audio panel might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.308 BUTTON_G500_HDG (299)Header Value Values: 0. pressed

02 xx 2B 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Heading (HDG): Selects Heading Select mode on the PFD. Pressing the PFD knob in Heading mode will center the Heading Bug on the current Heading. This is the default mode for the PFD knob. Set the heading on the HSI by turning the PFD knob after pressing the HDG key.

This is a PFD Bezel Key.

4.2.1.309 BUTTON_G500_CRS (300)Header Value Values: 0. pressed

02 xx 2C 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Course (CRS): Selects Course Select mode on the PFD. Pressing the PFD knob in Course mode will center the CDI for a VOR or OBS mode course.

This is a PFD Bezel Key.

Page 187: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.310 SWITCH_G500_ALT (301)Header Value Values: 0. pressed

02 xx 2D 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Altimeter (ALT): Selects Altitude Select mode. Pressing the PFD knob in Altitude Select mode will enter the current altitude in the Altitude Select window. Set the Altitude Bug by turning the PFD knob after pressing the ALT key.

This is a PFD Bezel Key.

4.2.1.311 BUTTON_G500_VS (302)Header Value Values: 0. pressed

02 xx 2E 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Vertical Speed (V/S): Selects Vertical Speed (V/S) mode. Pressing the PFD knob in V/S mode will synchronize the bug to the current vertical speed.

This is a PFD Bezel Key.

4.2.1.312 BUTTON_G500_BARO (303)Header Value Values: 0. pressed

02 xx 2F 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Barometer (BARO): Selects Barometric Setting Select mode. Pressing the PFD knob in Baro mode toggles between standard pressure (29.92 in/1013 mb) and the previously selected value.

This is a PFD Bezel Key.

Page 188: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.313 BUTTON_G500_PFD_PB (304)Header Value Values: 0. pressed

02 xx 30 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Pressing the PFD knob performs the default action for the selected mode.Refer to the PFD Bezel Keys for details.

4.2.1.314 BUTTON_G500_UP (305)Header Value Values: 0. pressed

02 xx 31 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Range (RNG): Pressing the Range arrow keys changes the range on the Map pages. The Up arrow zooms out. The Down arrow zooms in. The keys also aid in scrollingup and down text pages.

This is an MFD Bezel Key.

4.2.1.315 BUTTON_G500_DN (306)Header Value Values: 0. pressed

02 xx 32 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Range (RNG): Pressing the Range arrow keys changes the range on the Map pages. The Up arrow zooms out. The Down arrow zooms in. The keys also aid in scrollingup and down text pages.

This is an MFD Bezel Key.

4.2.1.316 BUTTON_G500_MENU (307)Header Value Values: 0. pressed

02 xx 33 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Menu: Displays a context-sensitive list of options. This list allows the user to access additional features or make setting changes that relate to particular pages.

Page 189: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is an MFD Bezel Key.

4.2.1.317 BUTTON_G500_CLR (308)Header Value Values: 0. pressed

02 xx 34 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Clear (CLR): Erases information, cancels entries, or removes page menus. Pressing and holding the CLR key displays the Navigation Map 1 page.

This is an MFD Bezel Key.

4.2.1.318 BUTTON_G500_ENT (309)Header Value Values: 0. pressed

02 xx 35 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Enter (ENT): Validates or confirms a menu selection or data entry.

This is an MFD Bezel Key.

4.2.1.319 BUTTON_G500_MFD_PB (310)Header Value Values: 0. pressed

02 xx 36 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Small (Inner) MFD Knob: Pressing the small MFD knob turns the selection cursor ON and OFF.

4.2.1.320 BUTTON_G500_SOFT_KEY_1 (311)Header Value Values: 0. pressed

02 xx 37 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

Page 190: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

4.2.1.321 BUTTON_G500_SOFT_KEY_2 (312)Header Value Values: 0. pressed

02 xx 38 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

4.2.1.322 BUTTON_G500_SOFT_KEY_3 (313)Header Value Values: 0. pressed

02 xx 39 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

4.2.1.323 BUTTON_G500_SOFT_KEY_4 (314)Header Value Values: 0. pressed

02 xx 3A 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

4.2.1.324 BUTTON_G500_SOFT_KEY_5 (315)Header Value Values: 0. pressed

02 xx 3B 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

Page 191: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.325 BUTTON_G500_SOFT_KEY_6 (316)Header Value Values: 0. pressed

02 xx 3C 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

4.2.1.326 BUTTON_G500_SOFT_KEY_7 (317)Header Value Values: 0. pressed

02 xx 3D 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

4.2.1.327 BUTTON_G500_SOFT_KEY_8 (318)Header Value Values: 0. pressed

02 xx 3E 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

4.2.1.328 BUTTON_G500_SOFT_KEY_9 (319)Header Value Values: 0. pressed

02 xx 3F 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

Page 192: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.329 BUTTON_G500_SOFT_KEY_10 (320)Header Value Values: 0. pressed

02 xx 40 01 nn 1. releasedxx = pilot/copilot

All values are in hexadecimal.

This is one of a row of ten keys found across the bottom of the unit. The keys are not pre-defined; each key's function is dependent on the current context.

4.2.1.330 BUTTON_G500_RESERVED_1 (321)Not implemented, reserved against future need.

4.2.1.331 BUTTON_G500_RESERVED_2 (322)Not implemented, reserved against future need.

4.2.1.332 BUTTON_G500_RESERVED_3 (323)Not implemented, reserved against future need.

4.2.1.333 BUTTON_GROUP_G500_STARTThis is not actually a message but has the same value as the first message in the group of messages that a G500 panel might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.334 BUTTON_GROUP_G500_END This is not actually a message but has the same value as the last message in the group of messages that a G500 panel might send. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.2.1.335 SWITCH_ROTOR_BRAKE (324)Header Value Values: 0. Off

02 00 44 01 nn 1. OnAll values are in hexadecimal.

Page 193: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is a brake for a helicopter rotor. Provides an alternative to the CONTROLS_ROTOR_BRAKE (24) analog control. Operating the switch is equivalent to applying full force on the analog brake.

4.2.1.336 SWITCH_AVI_BUS_TIE (325)Header Value Values: 0. Off

02 00 45 01 nn 1. OnAll values are in hexadecimal.

CESSNA SECTION 7 MODEL 208B G1OOO AIRPLANE AND SYSTEMS DESCRIPTION

AVIONICS BUS TIE SWITCH

The avionics bus tie switch is a two-position guarded toggle-type switch located on the left sidewall switch and circuit breaker panel. The switch connects the number 1 and number 2 avionics buses together in the event of failure of either bus feeder circuit. Because power for each avionics bus is supplied from a separate current limiter on the power distribution bus, failure of a current limiter can cause failure of the affected bus. Placing the bus tie switch to the ON position will restore power to the failed bus. Operation without both bus feeder circuits may require an avionics load reduction, depending on equipment installed.

4.2.1.337 SWITCH_AVI_STBY_PWR (326)Header Value Values: 0. Off

02 00 46 01 nn 1. OnAll values are in hexadecimal.

CESSNA SECTION 7 MODEL 208B G1OOO AIRPLANE AND SYSTEMS DESCRIPTION

STANDBY ELECTRICAL SYSTEM

The standby electrical system serves as a power source in the event the main generator system malfunctions in flight. The system includes an alternator operated at a 75-amp capacity rating. The alternator is belt-driven from an accessory pad on the rear of the engine. The system also includes an alternator control unit located forward of the circuit breaker panel, a standby alternator contactor assembly on the left front side of the firewall and two switches on the left sidewall switch panel, labeled STBY ALT POWER and AVIONICS STBY PWR.

Page 194: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.338 SWITCH_EXTERNAL_POWER (327)Header Value Values: 0. Off

02 00 47 01 nn 1. Bus2. Starter

All values are in hexadecimal.

CESSNA SECTION 7 MODEL 208B G1OOO AIRPLANE AND SYSTEMS DESCRIPTION

EXTERNAL POWER SWITCH

The external power switch is a three-position guarded toggle-type switch located on the left sidewall switch and circuit breaker panel. The switch has OFF, STARTER, and BUS positions and is guarded in the OFF position. When the switch is in the OFF position, battery power is supplied to the main bus and to the starter-generator circuit, external power cannot be applied to the main bus, and, with the generator switch in the ON position, power is applied to the generator control circuit. When the external power switch is in the STARTER position, external power is applied to the starter circuit only and battery power is supplied to the main bus. No generator power is available in this position. When the external power switch is in the BUS position, external power is applied to the main bus and no power is available to the starter. The battery, if desired, can be connected to the main bus and external power by the battery switch; however, battery charge should be monitored to avoid overcharge.

4.2.1.339 SWITCH_GND_AIR (328)Header Value Values: 0. Off (GND)

02 00 48 01 nn 1. On (AIR)All values are in hexadecimal.

CESSNA MODEL 208B SUPERVAN 900 DIFFERENCES TRAINING

GND/AIR Switch - The GND position selects the starter to be used during a ground start sequence. The AIR position selects the unfeathering pump to be used during an air start.

4.2.1.340 SWITCH_UNFEATHER (329)Header Value Values: 0. Off

02 00 49 01 nn 1. OnAll values are in hexadecimal.

CESSNA MODEL 208B SUPERVAN 900 DIFFERENCES TRAINING

Page 195: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

UNFEATHERING PUMP Switch - Operates the propeller unfeathering pump for unfeathering the propeller on the ground and other maintenance functions.

4.2.1.341 SWITCH_STBY_ALT_PWR (330)Header Value Values: 0. Off

02 00 4A 01 nn 1. OnAll values are in hexadecimal.

CESSNA SECTION 7 MODEL 208B G1OOO AIRPLANE AND SYSTEMS DESCRIPTION

STANDBY ALTERNATOR POWER SWITCH

The standby alternator system switch is a two-position toggle-type switch, labeled STBY ALT POWER. There is also an amber LED above the switch that illuminates when the BATTERY switch is in the OFF position with STBY ALT POWER in the ON position. This is an alert to the operator to help prevent accidental discharging of the battery that can occur if the STBY ALT POWER switch is left ON after shutdown.

Note: The above paragraph is incorrect in that the switch is labeled "STBY PWR", not "STBY ALT POWER".

4.2.1.342 SWITCH_GENERATOR_START (331)Header Value Values: 0. Off

02 00 4B 01 nn 1. On2. Start

All values are in hexadecimal.

CESSNA MODEL 208B SUPERVAN 900 DIFFERENCES TRAINING

START/GEN Switch - Controls the starting of the engine and the generating system. The START position initiates the start sequence based on the selection of the GND/AIR switch and the START MODE switch. The GEN position turns the generator on by providing power to the generator control module (GCM).

4.2.1.343 SWITCH_FUEL_VALVE (332)Header Value Values: 0. Off (fuel cutoff)

02 00 4C 01 nn 1. Run2. Enrich/Ignition on

All values are in hexadecimal.

CESSNA MODEL 208B SUPERVAN 900 DIFFERENCES TRAINING

Page 196: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

FUEL VALVE Switch - Electrically controls the fuel shutoff valve on the engine and also controls the fuel purge kit during shutdown. The OFF position electrically turns off the fuel and powers the fuel purge kit during shutdown. The RUN position does nothing other than allow the SRL to turn fuel ON. The ON/ENRICH position turns the fuel and ignition on and also operates the enrichment valve to help the engine accelerate on a manual start.

4.2.1.344 SWITCH_STARTER_MODE (333)Header Value Values: 0. Motor Only

02 00 4D 01 nn 1. Parallel (24v)3. Series (48v)

All values are in hexadecimal.

CESSNA MODEL 208B SUPERVAN 900 DIFFERENCES TRAINING

START MODE Switch - Selects which type of starter mode. The PARA/SERIES start position uses the two batteries In parallel (24V) up to 10% and then two batteries in series (48V) up 60% (starter cut-out). The PARALLEL start position uses two batteries in parallel (48V)[sic] throughout the start. The MOTOR position disables the ignition for motoring to cool the engine off during an aborted start.

4.2.1.345 SWITCH_STARTER (334)Header Value Values: 0. Off

02 00 4E 01 nn 1. Start2. Motor only

All values are in hexadecimal.

CESSNA SECTION 7 MODEL 208B G1OOO AIRPLANE AND SYSTEMS DESCRIPTION

STARTER SWITCH

The starter switch is a three-position toggle-type switch, labeled STARTER, on the left sidewall switch and circuit breaker panel. The switch has OFF, START, and MOTOR positions. For additional details of the starter switch, refer to the Starting System paragraph in this section.

Page 197: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.346 STATUS_CARAVAN_MASTER_AVAIL (335)Header Value Values: 0. Disabled (not available)

02 00 4F 01 nn 1. Enabled (available)All values are in hexadecimal.

The Caravan Starter panel has a special input that can deactivate its controls (just switches, as of this writing) and blank its lighting (backlights and one indicator, as of this writing). The input must be enabled in configuration and active to disable the panel. Other than going dark and not reporting controls, it will behave normally. This feature allows it to be mixed with similar panels on a simulator and have the different sets of panels be enabled or disabled without needing to physically change the wiring, so that the simulator may be easily changed from a Caravan-specific configuration to a general-purpose configuration, or vice-versa.

However, unlike the airplane controls, the Deactivate switch is always reported, as well as changing the panel's function. The report is simple:

0. Zero means the panel is deactivated and will not report normal airplane control switches, as well as blanking any outputs. (However, it will still accept output control messages; it will simply never turn the outputs on.)

1. One means the panel is active and will report control inputs and perform lighting as normal.

When disabled, the control inputs vanish completely; they will not even show up in a Full Report, as though they never existed.

4.2.1.347 SWITCH_CABIN_LIGHTS (336)Header Value Values: 0. Off

02 00 50 01 nn 1. On2. Norm

All values are in hexadecimal.

0. Off: Turns off all cabin lights.1. On: Turns on main cabin lights.2. Norm: Main cabin lights are off, but individually-controlled passenger

reading lights are enabled.

The manual is not clear on whether "On" forces reading lights on, forces them off, or leaves them under individual control. The most obvious function would be to leave them under individual control.

This feature may not actually be functional in a simulator and, if functional, may not function the same as in an airplane.

Page 198: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.348 SWITCH_AUX_BUS (337)Header Value Values: 0. Off

02 00 51 01 nn 1. OnAll values are in hexadecimal.

Controls the auxiliary power bus. On the Quest Kodiak, this powers cabin air conditioner functions; it allows load shedding of non-critical systems to mitigate electrical bus overloading.

4.2.1.349 SWITCH_OXYGEN (338)Header Value Values: 0. Off

02 00 52 01 nn 1. OnAll values are in hexadecimal.

Controls the passenger oxygen supply. Not functional in a simulator.

4.2.1.350 SWITCH_FRESH_AIR (339)Header Value Values: 0. Fresh air cut off

02 00 53 01 nn 1. Fresh air enabledAll values are in hexadecimal.

Cutoff switch for the cabin fresh air supply. May not be functional in a simulator.

4.2.1.351 SWITCH_AILERON_TRIM (340)Header Value Values: 0. Off

02 00 54 01 nn 1. Left2. Right

All values are in hexadecimal.

Operates an electric aileron trim motor.

4.2.1.352 SWITCH_RUDDER_TRIM (341)Header Value Values: 0. Off

02 00 55 01 nn 1. Left2. Right

All values are in hexadecimal.

Operates an electric rudder trim motor.

Page 199: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.353 SWITCH_S_TEC_AP_ON (342)Header Value Values: 0. Off

02 00 56 01 nn 1. AP2. FD only

All values are in hexadecimal.

For the Genesys/S-TEC only. Equivalent to SWITCH_AP_ON.

4.2.1.354 BUTTON_S_TEC_AP_HDG (343)Header Value Values: 0. released

02 00 57 01 nn 1. pressedAll values are in hexadecimal.

For the Genesys/S-TEC only. Equivalent to BUTTON_AP_HDG.

4.2.1.355 BUTTON_S_TEC_AP_NAV (344)Header Value Values: 0. released

02 00 58 01 nn 1. pressedAll values are in hexadecimal.

For the Genesys/S-TEC only. Equivalent to BUTTON_AP_NAV.

4.2.1.356 BUTTON_S_TEC_AP_APR (345)Header Value Values: 0. released

02 00 59 01 nn 1. pressedAll values are in hexadecimal.

For the Genesys/S-TEC only. Equivalent to BUTTON_AP_APR.

4.2.1.357 BUTTON_S_TEC_AP_REV (346)Header Value Values: 0. released

02 00 5A 01 nn 1. pressedAll values are in hexadecimal.

For the Genesys/S-TEC only. Equivalent to BUTTON_AP_BC.

Page 200: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.358 BUTTON_S_TEC_AP_ALT (347)Header Value Values: 0. released

02 00 5B 01 nn 1. pressedAll values are in hexadecimal.

For the Genesys/S-TEC only. Equivalent to BUTTON_AP_ALTITUDE.

4.2.1.359 BUTTON_S_TEC_AP_VS (348)Header Value Values: 0. released

02 00 5C 01 nn 1. pressedAll values are in hexadecimal.

For the Genesys/S-TEC only. Equivalent to BUTTON_ALT_PRESELECT_ENG.

4.2.1.360 BUTTON_GMC7XX_HDG (349)Header Value Values: 0. released

02 00 5D 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head HDG.

4.2.1.361 BUTTON_GMC7XX_APR (350)Header Value Values: 0. released

02 00 5E 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head APR.

4.2.1.362 BUTTON_GMC7XX_NAV (351)Header Value Values: 0. released

02 00 5F 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head NAV.

Page 201: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.363 BUTTON_GMC7XX_BC (352)Header Value Values: 0. released

02 00 60 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head HDG.

4.2.1.364 BUTTON_GMC7XX_AP (353)Header Value Values: 0. released

02 00 61 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head AP.

4.2.1.365 BUTTON_GMC7XX_FD (354)Header Value Values: 0. released

02 00 62 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head FD.

4.2.1.366 BUTTON_GMC7XX_ALT (355)Header Value Values: 0. released

02 00 63 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head ALT.

4.2.1.367 BUTTON_GMC7XX_VS (356)Header Value Values: 0. released

02 00 64 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head VS.

Page 202: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.368 BUTTON_GMC7XX_VNV (357)Header Value Values: 0. released

02 00 65 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710/720 control head VNV.

4.2.1.369 BUTTON_GMC7XX_FLC (358)Header Value Values: 0. released

02 00 66 01 nn 1. pressedAll values are in hexadecimal.

GMC 710/720 control head FLC.

4.2.1.370 BUTTON_GMC7XX_YD (359)Header Value Values: 0. released

02 00 67 01 nn 1. pressedAll values are in hexadecimal.

GMC 700/710 control head YD.

4.2.1.371 BUTTON_GMC7XX_BANK (360)Header Value Values: 0. released

02 00 68 01 nn 1. pressedAll values are in hexadecimal.

GMC 710 control head BANK.

4.2.1.372 BUTTON_GMC7XX_XFR (361)Header Value Values: 0. released

02 00 69 01 nn 1. pressedAll values are in hexadecimal.

GMC 710 control head XFR.

Page 203: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.373 BUTTON_GMC7XX_SPD (362)Header Value Values: 0. released

02 00 6A 01 nn 1. pressedAll values are in hexadecimal.

GMC 710 control head SPD.

4.2.1.374 BUTTON_GMC7XX_HDG_SYNC (363)Header Value Values: 0. released

02 00 6B 01 nn 1. pressedAll values are in hexadecimal.

GMC 710/720 control head HDG SYNC.

4.2.1.375 BUTTON_GMC7XX_ALT_SEL_PB (364)Header Value Values: 0. released

02 00 6C 01 nn 1. pressedAll values are in hexadecimal.

GMC 710/720 control head ALT SEL pushbutton.

4.2.1.376 BUTTON_GMC7XX_CRS1_DIR (365)Header Value Values: 0. released

02 00 6D 01 nn 1. pressedAll values are in hexadecimal.

GMC 710/720 control head CRS pushbutton.

4.2.1.377 BUTTON_GMC7XX_CRS2_DIR (366)Header Value Values: 0. released

02 00 6E 01 nn 1. pressedAll values are in hexadecimal.

GMC 720 control head CRS 2 pushbutton.

Page 204: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.378 BUTTON_GMC7XX_LVL (367)Header Value Values: 0. released

02 00 6F 01 nn 1. pressedAll values are in hexadecimal.

GMC 700 control head LVL.

4.2.1.379 BUTTON_GMC7XX_IAS (368)Header Value Values: 0. released

02 00 70 01 nn 1. pressedAll values are in hexadecimal.

GMC 700 control head IAS.

4.2.1.380 BUTTON_GCU_ASCII (369)Header Value ASCII code Values: 0. released

02 00 71 01 nn aa 1. pressedAll values are in hexadecimal.

GCU 475 ASCII code: 1 byte. Use Code Page 437.

4.2.1.381 BUTTON_GCU_DIRECT_TO (370)Header Value Values: 0. released

02 00 72 01 nn 1. pressedAll values are in hexadecimal.

Brings up the Direct-To navigation function. The symbol on the button looks like a capital letter “D” bisected with a horizontal arrow. (Approximately: D) Provides access to the direct-to function, which allows the pilot to enter a destination waypoint and establishes a direct course to the selected destination.

4.2.1.382 BUTTON_GCU_MENU (371)Header Value Values: 0. released

02 00 73 01 nn 1. pressedAll values are in hexadecimal.

Garmin GCU MENU key. Displays a context-sensitive list of options. This options list allows the pilot to access additional features or make settings changes which relate to the currently displayed page.

Page 205: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.383 BUTTON_GCU_FPL (372)Header Value Values: 0. released

02 00 74 01 nn 1. pressedAll values are in hexadecimal.

Garmin GCU FPL key. Allows the pilot to create, edit, activate, and invert flight plans, as well as access approaches, departures, and arrivals.

4.2.1.384 BUTTON_GCU_PROC (373)Header Value Values: 0. released

02 00 75 01 nn 1. pressedAll values are in hexadecimal.

Garmin GCU PROC key. Allows the pilot to select and remove approaches, departures, and arrivals from the flight plan.

4.2.1.385 BUTTON_GCU_CLR (374)Header Value Values: 0. released

02 00 76 01 nn 1. pressedAll values are in hexadecimal.

Garmin GCU CLR key. Used to erase information, remove map detail, or to cancel an entry.

4.2.1.386 BUTTON_GCU_ENT (375)Header Value Values: 0. released

02 00 77 01 nn 1. pressedAll values are in hexadecimal.

Garmin GCU ENT key. Used to approve an operation or complete data entry. It is also used to confirm information during power on.

4.2.1.387 BUTTON_GCU_SOFT_LEFT (376)Header Value Values: 0. released

02 00 78 01 nn 1. pressedAll values are in hexadecimal.

Page 206: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Highlights the previous soft key. The symbol on the button is a left arrow (◄).

4.2.1.388 BUTTON_GCU_SOFT_RIGHT (377)Header Value Values: 0. released

02 00 79 01 nn 1. pressedAll values are in hexadecimal.

Highlights the next soft key. The symbol on the button is a right arrow (►).

4.2.1.389 BUTTON_GCU_SOFT_SELECT (378)Header Value Values: 0. released

02 00 7A 01 nn 1. pressedAll values are in hexadecimal.

Selects the currently highlighted soft key.

4.2.1.390 BUTTON_GCU_JOY_UP (379)Header Value Values: 0. released

02 00 7B 01 nn 1. pressedAll values are in hexadecimal.

Joystick cardinal direction North.

4.2.1.391 BUTTON_GCU_JOY_DOWN (380)Header Value Values: 0. released

02 00 7C 01 nn 1. pressedAll values are in hexadecimal.

Joystick cardinal direction South.

4.2.1.392 BUTTON_GCU_JOY_LEFT (381)Header Value Values: 0. released

02 00 7D 01 nn 1. pressedAll values are in hexadecimal.

Joystick cardinal direction West.

Page 207: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.393 BUTTON_GCU_JOY_RIGHT (382)Header Value Values: 0. released

02 00 7E 01 nn 1. pressedAll values are in hexadecimal.

Joystick cardinal direction East.

4.2.1.394 BUTTON_GCU_JOY_UP_LEFT (383)Header Value Values: 0. released

02 00 7F 01 nn 1. pressedAll values are in hexadecimal.

Joystick ordinal direction Northwest.

4.2.1.395 BUTTON_GCU_JOY_UP_RIGHT (384)Header Value Values: 0. released

02 00 80 01 nn 1. pressedAll values are in hexadecimal.

Joystick ordinal direction Northeast.

4.2.1.396 BUTTON_GCU_JOY_DOWN_LEFT (385)Header Value Values: 0. released

02 00 81 01 nn 1. pressedAll values are in hexadecimal.

Joystick ordinal direction Southwest.

4.2.1.397 BUTTON_GCU_JOY_DOWN_RIGHT (386)Header Value Values: 0. released

02 00 82 01 nn 1. pressedAll values are in hexadecimal.

Joystick ordinal direction Southeast.

Page 208: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.398 BUTTON_GCU_JOY_PUSH_BUTTON (387)Header Value Values: 0. released

02 00 83 01 nn 1. pressedAll values are in hexadecimal.

Joystick center pushbutton.

4.2.1.399 BUTTON_GCU_CRSR (388)Header Value Values: 0. released

02 00 84 01 nn 1. pressedAll values are in hexadecimal.

GCU FMS encoder pushbutton.

4.2.1.400 BUTTON_GCU_BKSP (389)Header Value Values: 0. released

02 00 85 01 nn 1. pressedAll values are in hexadecimal.

GCU backspace button.

4.2.1.401 BUTTON_650_750_HOME (390)Header Value Values: 0. released

02 00 86 01 nn 1. pressedAll values are in hexadecimal.

GTN 650/750 Home button.

4.2.1.402 BUTTON_650_750_DIRECT_TO (391)Header Value Values: 0. released

02 00 87 01 nn 1. pressedAll values are in hexadecimal.

GTN 650/750 Direct To button.

Page 209: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.403 BUTTON_TEST_FLOAT (392)Header Value Values: 0. released

02 00 88 01 nn 1. pressedAll values are in hexadecimal.

Test button on the Bell 407 GXP main panel.

4.2.1.404 BUTTON_TEST_FIRE (393)Header Value Values: 0. released

02 00 89 01 nn 1. pressedAll values are in hexadecimal.

Test button on the Bell 407 GXP main panel.

4.2.1.405 BUTTON_TEST_PEDAL_STOP (394)Header Value Values: 0. released

02 00 8A 01 nn 1. pressedAll values are in hexadecimal.

Test button on the Bell 407 GXP main panel.

4.2.1.406 BUTTON_TEST_FADEC_OVSPD (395)Header Value Values: 0. released

02 00 8B 01 nn 1. pressedAll values are in hexadecimal.

Test button on the Bell 407 GXP main panel.

4.2.1.407 BUTTON_TEST_FUEL_QTY (396)Header Value Values: 0. released

02 00 8C 01 nn 1. pressedAll values are in hexadecimal.

Test button on the Bell 407 GXP main panel.

Page 210: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.408 BUTTON_FADEC_MODE (397)Header Value Values: 0. released

02 00 8D 01 nn 1. pressedAll values are in hexadecimal.

Button on the Bell 407 main panel. This button has a 2-part illuminated face split horizontally. Pressing the button toggles between AUTO and MAN.

This button switches the FADEC (Full Authority Digital Engine Control, a computer that runs the engine) between automatic and manual.

4.2.1.409 BUTTON_GCU_PLUS_OR_MINUS (398)Header Value Values: 0. released

02 00 8E 01 nn 1. pressedAll values are in hexadecimal.

"+/-" button on a GCU 475, GCU 476, GCU 477 or GCU 478 which toggles a number entry between positive and negative values.

Note: this was originally assigned BUTTON_MASTER_WARN_CAUT which was to transmit a single message that combined the BUTTON_MAST_WARN and BUTTON_MAST_CAUT functions. It was decided later that it was simpler to send both of the older messages per button press. BUTTON_MASTER_WARN_CAUT was never implemented.

4.2.1.410 BUTTON_RPM_WARN_MUTE (399)Header Value Values: 0. released

02 00 8F 01 nn 1. pressedAll values are in hexadecimal.

Button on the Bell 407 main panel. Pressing this button mutes the RPM warning horn. This button has an illuminated face which lights during an RPM warning.

4.2.1.411 BUTTON_IBF (400)Header Value Values: 0. released

02 00 90 01 nn 1. pressedAll values are in hexadecimal.

Button on the Bell 407 main panel. This button has a 2-part illuminated face split horizontally. Pressing the button toggles between FILTER and BYPASS.

Page 211: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This button operates the Inlet Barrier Filters which protect the engine air intake against dust and debris.

4.2.1.412 BUTTON_ELT (401)Header Value Values: 0. released

02 00 91 01 nn 1. pressedAll values are in hexadecimal.

Button on the Bell 407 main panel. This button has a 2-part illuminated face split horizontally. Pressing the button toggles between XMIT and ARM. (See INDICATOR_ELT_BUTTON.)

This button sets the Emergency Locator Transmitter state. It is an alternate to SWITCH_ARTEX_ELT.

4.2.1.413 SWITCH_CABIN_PASS_LIGHTS (402)Header Value Values: 0. off

02 00 92 01 nn 1. cabin on2. passenger on 3. both on

All values are in hexadecimal.

Controls the cabin and passenger lights.

4.2.1.414 SWITCH_FWD_BLOWER (403)Header Value Values: 0. off

02 00 93 01 nn 1. high3. low

All values are in hexadecimal.

Part of the air conditioning system.

4.2.1.415 SWITCH_AFT_BLOWER (404)Header Value Values: 0. off

02 00 94 01 nn 1. high3. low

All values are in hexadecimal.

Part of the air conditioning system.

Page 212: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.416 SWITCH_FLIGHT_INSTR_DG (405)Header Value Values: 0. off

02 00 95 01 nn 1. onAll values are in hexadecimal.

This is one the Flight Instrument switches on a helicopter overhead panel.

4.2.1.417 SWITCH_FLIGHT_INSTR_ATT (406)Header Value Values: 0. off

02 00 96 01 nn 1. onAll values are in hexadecimal.

This is one the Flight Instrument switches on a helicopter overhead panel.

4.2.1.418 SWITCH_FLIGHT_INSTR_TURN (407)Header Value Values: 0. off

02 00 97 01 nn 1. onAll values are in hexadecimal.

This is one the Flight Instrument switches on a helicopter overhead panel.

4.2.1.419 SWITCH_FUEL_BOOST_XFR (408)Header Value Values: 0. off

02 ss 98 01 nn 1. onss=selector (0=left, 1=right)

All values are in hexadecimal.

4.2.1.420 SWITCH_FORCE_TRIM (409)Header Value Values: 0. off

02 00 99 01 nn 1. onAll values are in hexadecimal.

4.2.1.421 SWITCH_POS_LT (410)Header Value Values: 0. off

02 00 9A 01 nn 1. onAll values are in hexadecimal.

Page 213: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.422 SWITCH_PART_SEP (411)Header Value Values: 0. off

02 00 9B 01 nn 1. onAll values are in hexadecimal.

This switch operates an inertial particle separator which protects the engine air intake against dust and debris.

4.2.1.423 BUTTON_GCU_PFD (412)Header Value Values: 0. released

02 00 9C 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 476.

4.2.1.424 BUTTON_GCU_MFD (413)Header Value Values: 0. released

02 00 9D 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 476.

4.2.1.425 BUTTON_GCU_XFER (414)Header Value Values: 0. released

02 00 9E 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 476, 477 and 478. It is marked by a double arrow: ↔

4.2.1.426 BUTTON_GCU_NAV (415)Header Value Values: 0. released

02 00 9F 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 476 and 478. This button selects NAV mode.

Page 214: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.427 BUTTON_GCU_COM (416)Header Value Values: 0. released

02 00 A0 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 476 and 478. This button selects COM mode.

4.2.1.428 BUTTON_GCU_FMS (417)Header Value Values: 0. released

02 00 A1 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 477 and 478.

4.2.1.429 BUTTON_GCU_XPDR (418)Header Value Values: 0. released

02 00 A2 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 477 and 478.

4.2.1.430 BUTTON_GCU_IDENT (419)Header Value Values: 0. released

02 00 A3 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 477.

4.2.1.431 BUTTON_GCU_NAV_SEL (420)Header Value Values: 0. released

02 00 A4 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 477. This toggles between NAV1 and NAV2.

Page 215: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.432 BUTTON_GCU_COM_SEL (421)Header Value Values: 0. released

02 00 A5 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 477. This toggles between COM1 and COM2.

4.2.1.433 BUTTON_GCU_ALT_SYNC (422)Header Value Values: 0. released

02 00 A6 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GCU 478. This is the pushbutton on the ALT SEL encoder knob.

4.2.1.434 BUTTON_GMA_INTR_COM (423)Header Value Values: 0. released

02 00 A7 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GMA 1347D and 1347D-20.

4.2.1.435 BUTTON_GMA_REC (424)Header Value Values: 0. released

02 00 A8 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GMA 1347D.

4.2.1.436 BUTTON_GMA_CABIN (425)Header Value Values: 0. released

02 00 A9 01 nn 1. pressedAll values are in hexadecimal.

A button on the Garmin GMA 1347D-20.

Page 216: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.2.1.437 SWITCH_COUNTThis is not actually a message but a count of digital control messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 217: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3 EncodersEncoders are devices that send digital directional and speed information. A shaft encoder would be a rotational device, similar to a potentiometer, except a pot sends positional information. A linear encoder sends direction and speed along a linear path, similar to a slide pot.

In essence an encoder sends a “forwards” or “reverse” direction signal (called a “step”) every time the input is moved by a certain amount. The speed is known by implication because the message will be repeated proportionally to the speed at which the input is moved.

The actual information coming from the encoder is more complex than described here; the firmware takes care of decoding it and turning into simple step messages. It also may queue several steps and send them in a single message, and for some inputs it turns on a “fast” flag when the input is moved faster than a pre-determined speed.

Encoder messages include three fields:0. The header (see 3.2.1.4).1. The value, a signed number between –128 and +127. Note that zero (0) is a

valid value to send.2. An optional “fast” flag bit.

All unused bytes in the message, and unused bits in the flag byte, are set to 0.

Header Value reserved FlagsClass (03)

Selector Message Index 8 bits signed

00 00 00 00 Bit 0=fastLSB MSB

All values are in hexadecimal.

The value is the number of steps encoded since the previous message and may be any number from –128 (0xFF) to 127 (0x7F).

For a rotational encoder, negative numbers are used to indicate a counter-clockwise rotation, and positive numbers are used to indicate a clockwise rotation.

Zero is a valid number of steps. Messages with zero steps are usually only sent during a Full Report, but the PC host is expected to be able to handle them at any time. Zero steps means exactly what it implies – the encoder has not been moved in either direction since the last report.

In addition the message may contain row and column metadata. This information is intended for telling a user test program how to display the buttons and may be safely discarded.

Page 218: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Header Value reserved Flags Row/ColumnClass (03)

Selector Message Index 8 bits signed

00 00 00 00 Bit 1 = Row/Col

row col clusterLSB MSB

All values are in hexadecimal.

Flags:Bits 7:2 = reserved.Bit 1 = 1 if row/column/cluster data are included.Bit 0 = fast.

Row is the physical row the encoder is in. Valid rows are 1 to 255. If there is only one row it may be sent as 0.

Col is the physical column the encoder is in. Valid columns are 1 to 255. If there is only one column it may be sent as 0.

Cluster is an index that allows a panel to have multiple sets of row/column clusters. For example, the G1000 Retrofit Panel has both an autopilot cluster on the left and an audio panel cluster on the right. These are physically separate clusters of controls but each may be arranged differently depending on the G1000 panel models being simulated. Valid clusters are 1 to 255. If there is only one cluster is may be sent as 0.

4.3.1 Messages

4.3.1.1 ENCODER_NONE (0)This value is invalid and may not be used to send data.

4.3.1.2 ENCODER_N1_SET (1)Header Value reserved Flags

03 00 01 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as ENCODER_ELEV_TRIM.

4.3.1.3 ENCODER_ADF_RA (2)Header Value reserved Flags

03 0x 02 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

Page 219: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

On the 6-encoder RIC this knob adjust the Automatic Direction Finder or the Radio Altimeter, whichever is installed.

4.3.1.4 ENCODER_CRS_DG (3)Header Value reserved Flags

03 0x 03 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

On the 6-encoder RIC this knob adjusts the HSI Course or Directional Gyro, whichever is installed.

4.3.1.5 ENCODER_HDG (4)Header Value reserved Flags

03 0x 04 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

This adjusts the Heading bug on the HSI.

4.3.1.6 ENCODER_ALT (5)Header Value reserved Flags

03 0x 05 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

Adjusts the reference pressure on the pressure altimeter.

4.3.1.7 ENCODER_OBS_1 (6)Header Value reserved Flags

03 0x 06 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

Adjusts the first of two Omni Bearing Selectors.

Page 220: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.8 ENCODER_OBS_2 (7)Header Value reserved Flags

03 0x 07 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

Adjusts the second of two Omni Bearing Selectors.

4.3.1.9 ENCODER_SPEED_REF (8)Header Value reserved Flags

03 00 08 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as ENCODER_HSI.

4.3.1.10 ENCODER_COM1_COARSE_FREQUENCY (9)Header Value reserved Flags

03 00 09 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the COM1 frequency in megahertz.

4.3.1.11 ENCODER_COM1_FINE_FREQUENCY (10)Header Value reserved Flags

03 00 0A 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the COM1 frequency in kilohertz.

4.3.1.12 ENCODER_COM2_COARSE_FREQUENCY (11)Header Value reserved Flags

03 00 0B 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the COM2 frequency in megahertz.

Page 221: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.13 ENCODER_COM2_FINE_FREQUENCY (12)Header Value reserved Flags

03 00 0C 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the COM2 frequency in kilohertz.

4.3.1.14 ENCODER_NAV1_COARSE_FREQUENCY (13)Header Value reserved Flags

03 00 0D 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the NAV1 frequency in megahertz.

4.3.1.15 ENCODER_NAV1_FINE_FREQUENCY (14)Header Value reserved Flags

03 00 0E 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the NAV1 frequency in kilohertz.

4.3.1.16 ENCODER_NAV2_COARSE_FREQUENCY (15)Header Value reserved Flags

03 00 0F 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the NAV2 frequency in megahertz.

4.3.1.17 ENCODER_NAV2_FINE_FREQUENCY (16)Header Value reserved Flags

03 00 10 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the NAV2 frequency in kilohertz.

Page 222: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.18 ENCODER_DME_COARSE_FREQUENCY (17)Header Value reserved Flags

03 00 11 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the DME frequency in megahertz.

4.3.1.19 ENCODER_DME_FINE_FREQUENCY (18)Header Value reserved Flags

03 00 12 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the DME frequency in kilohertz.

4.3.1.20 ENCODER_ADF_COARSE_FREQUENCY (19)Header Value reserved Flags

03 00 13 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the ADF frequency in megahertz.

4.3.1.21 ENCODER_ADF_FINE_FREQUENCY (20)Header Value reserved Flags

03 00 14 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the ADF frequency in kilohertz.

4.3.1.22 ENCODER_TRANSPONDER_DIGIT_1 (21)Header Value reserved Flags

03 00 15 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust digit 1 of four transponder digits.

Page 223: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.23 ENCODER_TRANSPONDER_DIGIT_2 (22)Header Value reserved Flags

03 00 16 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust digit 2 of four transponder digits.

4.3.1.24 ENCODER_TRANSPONDER_DIGIT_3 (23)Header Value reserved Flags

03 00 17 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust digit 3 of four transponder digits.

4.3.1.25 ENCODER_TRANSPONDER_DIGIT_4 (24)Header Value reserved Flags

03 00 18 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust digit 4 of four transponder digits.

4.3.1.26 ENCODER_GPS_COARSE (25)Header Value reserved Flags

03 00 19 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

4.3.1.27 ENCODER_GPS_FINE (26)Header Value reserved Flags

03 00 1A 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Originally provided for the PFC GPS panel, now obsolete. This index may be re-used.

Page 224: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.28 ENCODER_ALT_PRESELECT_SET_VS (27)Header Value reserved Flags

03 00 1B 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the vertical speed of a vertical climb or descent in 10 feet/minute increments.

4.3.1.29 ENCODER_ALT_PRESELECT_SET_ALT (28)Header Value reserved Flags

03 00 1C 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the target altitude for a vertical climb or descent in 100 foot increments.

4.3.1.30 ENCODER_CABIN_CLIMB_RATE (29)Header Value reserved Flags

03 00 1D 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Part of a cabin pressurization system. This sets the rate of pressure change.

4.3.1.31 ENCODER_430_530_COARSE_FREQUENCY (30)Header Value reserved Flags

03 00 1E 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Large Left Knob (COM/VLOC) – Used to tune the megahertz (MHz) value of the standby frequency for the communications transceiver (COM) or the VLOC receiver, whichever is currently selected by the tuning cursor.

4.3.1.32 ENCODER_430_530_FINE_FREQUENCY (31)Header Value reserved Flags

03 00 1F 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Page 225: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Small Left Knob (COM/VLOC) – Used to tune the kilohertz (kHz) value of the standby frequency for the communications transceiver (COM) or the VLOC receiver, whichever is currently selected by the tuning cursor.

4.3.1.33 ENCODER_430_530_COARSE_SELECT (32)Header Value reserved Flags

03 00 20 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Large Right knob – Used to select page groups: NAV, WPT, AUX, or NRST. With the on-screen cursor enabled, the large right knob allows the pilot to move the cursor about the page. The large right knob is also used to move the target pointer right (turn clockwise) or left (counterclockwise) when the map panning function is active.

4.3.1.34 ENCODER_430_530_FINE_SELECT (33)Header Value reserved Flags

03 00 21 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Small Right Knob – Used to select pages within one of the page groups. The small right knob is also used to move the target pointer up (turn clockwise) or down (counterclockwise) when the map panning function is active.

4.3.1.35 ENCODER_430_530_COM_VOLUME (34)Header Value reserved Flags

03 00 22 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

COM Power/Volume Knob – Controls unit power and communications radio volume.

4.3.1.36 ENCODER_430_530_VLOC_VOLUME (35)Header Value reserved Flags

03 00 23 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

VLOC Volume Knob – Controls audio volume for the selected VOR/Localizer frequency.

Page 226: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.37 ENCODER_ALT_PRESELECT_SET_VS_COARSE (36)Header Value reserved Flags

03 00 24 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the vertical speed of a vertical climb or descent in 100 feet/minute increments.

4.3.1.38 ENCODER_ALT_PRESELECT_SET_ALT_COARSE (37)Header Value reserved Flags

03 00 25 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Used to adjust the target altitude for a vertical climb or descent in 1000 foot increments.

4.3.1.39 ENCODER_ADF (38)Header Value reserved Flags

03 0x 26 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

This RIC knob adjusts the Automatic Direction Finder.

4.3.1.40 ENCODER_CRS (39)Header Value reserved Flags

03 0x 27 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

This RIC knob adjusts the Course.

4.3.1.41 ENCODER_RA (40)Header Value reserved Flags

03 0x 28 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

Page 227: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This RIC knob adjusts the Radio Altimeter.

4.3.1.42 ENCODER_DG (41)Header Value reserved Flags

03 0x 29 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

This RIC knob adjusts the Directional Gyro.

4.3.1.43 ENCODER_AIRSPEED (42)Header Value reserved Flags

03 0x 2A 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

This RIC knob adjusts the Air Speed.

4.3.1.44 ENCODER_ATTITUDE_REFERENCE (43)Header Value reserved Flags

03 0x 2B 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

This RIC knob adjusts the attitude indicator ( ).

4.3.1.45 ENCODER_G1000_NAV_COARSE_FREQUENCY (44)Header Value reserved Flags

03 0x 2C 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

NAV Knob: Turn to tune NAV receiver standby frequencies (large knob for MHz; small for kHz)

Page 228: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.46 ENCODER_G1000_NAV_FINE_FREQUENCY (45)Header Value reserved Flags

03 0x 2D 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

NAV Knob: Turn to tune NAV receiver standby frequencies (large knob for MHz; small for kHz)

4.3.1.47 ENCODER_G1000_NAV_VOLUME (46)Header Value reserved Flags

03 0x 2E 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

NAV VOL/ID Knob: Turn to control NAV audio.

4.3.1.48 ENCODER_G1000_HDG (47)Header Value reserved Flags

03 0x 2F 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

Heading Knob: Turn to manually select a heading.

4.3.1.49 ENCODER_G1000_ALT_COARSE (48)Header Value reserved Flags

03 0x 30 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

ALT Knob: Sets the Selected Altitude, shown above the Altimeter (the large knob selects the thousands, the small knob selects the hundreds).

Page 229: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.50 ENCODER_G1000_ALT_FINE (49)Header Value reserved Flags

03 0x 31 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

ALT Knob: Sets the Selected Altitude, shown above the Altimeter (the large knob selects the thousands, the small knob selects the hundreds).

4.3.1.51 ENCODER_G1000_COM_COARSE_FREQUENCY (50)Header Value reserved Flags

03 0x 32 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

COM Knob: Turn to tune COM transceiver standby frequencies (large knob for MHz; small for kHz).

4.3.1.52 ENCODER_G1000_COM_FINE_FREQUENCY (51)Header Value reserved Flags

03 0x 33 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

COM Knob: Turn to tune COM transceiver standby frequencies (large knob for MHz; small for kHz).

4.3.1.53 ENCODER_G1000_COM_VOLUME (52)Header Value reserved Flags

03 0x 34 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

COM VOL/SQ Knob: Turn to control COM audio volume level (shown as a percentage in the COM Frequency Box).

Page 230: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.54 ENCODER_G1000_CRS (53)Header Value reserved Flags

03 0x 35 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

CRS/BARO Knob: Turn small knob to adjust course (only when HSI is in VOR or OBS Mode).

4.3.1.55 ENCODER_G1000_BARO (54)Header Value reserved Flags

03 0x 36 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

CRS/BARO Knob: Turn large knob for altimeter barometric pressure setting.

4.3.1.56 ENCODER_G1000_FMS_COARSE (55)Header Value reserved Flags

03 0x 37 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

FMS Knob (Flight Management System Knob):

Data Entry: With cursor on, turn to enter data in the highlighted field (large knob moves cursor location; small knob selects character for highlighted cursorlocation).

Scrolling: When a list of information is too long for the window/box, a scroll barappears, indicating more items to view. With cursor on, turn large knob to scrollthrough the list.

Page Selection: Turn knob on MFD to select the page to view (large knob selects apage group; small knob selects a specific page from the group).

Page 231: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.57 ENCODER_G1000_FMS_FINE (56)Header Value reserved Flags

03 0x 38 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

FMS Knob (Flight Management System Knob):

Data Entry: With cursor on, turn to enter data in the highlighted field (large knob moves cursor location; small knob selects character for highlighted cursorlocation).

Scrolling: When a list of information is too long for the window/box, a scroll barappears, indicating more items to view. With cursor on, turn large knob to scrollthrough the list.

Page Selection: Turn knob on MFD to select the page to view (large knob selects apage group; small knob selects a specific page from the group).

4.3.1.58 ENCODER_G1000_RANGE (57)Header Value reserved Flags

03 0x 39 00 nn 00 00 00 00 Bit 0=fast0x = 0 for PFD, 1 for MFD

All values are in hexadecimal.

Joystick: Turn to change map range.

4.3.1.59 ENCODER_AUD_PILOT (58)Header Value reserved Flags

03 0x 3A 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

PILOT Knob: Turn to adjust intercom volume or squelch. The MAN SQ Key must be selected to allow squelch adjustment.

Page 232: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.60 ENCODER_AUD_PASSENGER (59)Header Value reserved Flags

03 0x 3B 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

PASS Knob: Turn to adjust Copilot/Passenger intercom volume or squelch. The MAN SQ Key must be selected to allow squelch adjustment.

4.3.1.61 ENCODER_CABIN_ALT (60)Header Value reserved Flags

03 00 3C 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

An alternate to the CONTROLS_CABIN_ALT (4.1.1.9), this sends a number of steps to increase or decrease the current value.

The resolution of the steps is implementation-dependent. The resolution should be chosen so as not to make the adjustment too slow or too sensitive. This may have to be determined empirically, but should probably be chosen to approximate the feel of the actual airplane.

4.3.1.62 ENCODER_G500_PFD (61)Header Value reserved Flags

03 0x 3D 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

PFD encoder on the G500/600. Once the correct mode has been selected via one of the PFD Bezel Keys, turn the PFD knob to select the desired value.

4.3.1.63 ENCODER_G500_MFD_SM (62)Header Value reserved Flags

03 0x 3E 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

MFD encoder on the G500/600. Inner knob of dual-concentric encoder.

The MFD knobs are for navigating and selecting information on the MFD

Page 233: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

pages.

Small (Inner) MFD Knob: Selects a specific page within a page group. Pressing the small MFD knob turns the selection cursor ON and OFF (4.2.1.319). When the cursor is ON, data may be entered in the applicable window by turning the small and large MFD knobs. In this case, the large MFD knob moves the cursor on the page and the small MFD knob selects individual characters or values for the highlighted cursor location.

4.3.1.64 ENCODER_G500_MFD_LG (63)Header Value reserved Flags

03 0x 3F 00 nn 00 00 00 00 Bit 0=fast0x = 0 for pilot, 1 for co-pilot

All values are in hexadecimal.

MFD encoder on the G500/600. Outer knob of dual-concentric encoder.

Large (Outer) MFD Knob: Selects the MFD page group. When the cursor is ON, the large MFD knob moves the cursor to highlight available fields.

4.3.1.65 ENCODER_S_TEC_VS_FINE (64)Header Value reserved Flags

03 00 40 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

For the Genesys/S-TEC only. Equivalent to ENCODER_ALT_PRESELECT_SET_VS.

4.3.1.66 ENCODER_GMC7XX_TRIM (65)Header Value reserved Flags

03 00 41 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GMC 700/710/720 Trim up/down encoder.

4.3.1.67 ENCODER_GMC7XX_ALT_SEL (66)Header Value reserved Flags

03 00 42 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

Page 234: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

GMC 710/720 Autopilot ALT SEL knob.

4.3.1.68 ENCODER_GMC7XX_CRS1 (67)Header Value reserved Flags

03 00 43 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GMC 710/720 Autopilot first CRS knob.

4.3.1.69 ENCODER_GMC7XX_CRS2 (68)Header Value reserved Flags

03 00 44 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GMC 710 Autopilot second CRS knob.

4.3.1.70 ENCODER_GMC7XX_HDG (69)Header Value reserved Flags

03 00 45 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GMC 710 Autopilot HDG knob.

4.3.1.71 ENCODER_AUD_VOL (70)Header Value reserved Flags

03 00 46 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GMA 350H audio volume control.

4.3.1.72 ENCODER_AUD_CRSR (71)Header Value reserved Flags

03 00 47 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GMA 350H cursor control.

Page 235: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.73 ENCODER_GCU_FMS_COARSE (72)Header Value reserved Flags

03 00 48 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GCU 475-478 FMS encoder, large knob.

4.3.1.74 ENCODER_GCU_FMS_FINE (73)Header Value reserved Flags

03 00 49 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GCU 475-478 FMS encoder, small knob.

4.3.1.75 ENCODER_GCU_RANGE (74)Header Value reserved Flags

03 00 4A 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GCU 475-478 range encoder.

4.3.1.76 ENCODER_GTN_650_750_VOL (75)Header Value reserved Flags

03 00 4B 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GTN 650/750 volume/squelch knob.

4.3.1.77 ENCODER_GTN_650_750_SM (76)Header Value reserved Flags

03 00 4C 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GTN 650/750 right knob, small.

Page 236: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.78 ENCODER_GTN_650_750_LG (77) Header Value reserved Flags

03 00 4D 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GTN 650/750 right knob, large.

4.3.1.79 ENCODER_GCU_HDG (78)Header Value reserved Flags

03 00 4D 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GCU 478 HDG encoder.

4.3.1.80 ENCODER_GCU_CRS (79)Header Value reserved Flags

03 00 4D 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GCU 478 CRS encoder.

4.3.1.81 ENCODER_GCU_ALT_SEL (80)Header Value reserved Flags

03 00 4D 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GCU 478 ALT_SEL encoder.

4.3.1.82 ENCODER_GMA_ICS_KNOB (81)Header Value reserved Flags

03 00 4D 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GMA 1347D intercom volume or squelch encoder.

Page 237: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.3.1.83 ENCODER_GMA_MSTR_KNOB (82)Header Value reserved Flags

03 00 4D 00 nn 00 00 00 00 Bit 0=fastAll values are in hexadecimal.

GMA 1347D Master volume control (nav, com, and intercom).

4.3.1.84 ENCODER_COUNTThis is not actually a message but a count of encoder messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 238: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.4 Analog SendersNone defined.

Page 239: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.5 Digital SendersNone defined.

Page 240: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6 AnnunciatorsAlerting devices. Usually a small lighted indicator with a meaningful label, it may also be a sounder, vibrating control (e.g. stick shaker), or other device meant to get the pilot’s attention.

Note: An annunciator is meant to alert; an indicator is meant to inform.

4.6.1 Annunciator PanelsThese are included here for easy reference. We have far too few photographs and diagrams of the B200 annunciator panels.

4.6.1.1 B200 20-Annunciator PanelThis is called the "Warning Annunciator Panel" in the Pilot Training Manual. Our version of the panel does not support the "L GEN OVHT" or "R GEN OVHT" warnings.

L ENG FIRE INVERTER CABIN DOOR ALT WARN R ENG FIRE

L FUEL PRESS -------------- -------------- -------------- R FUEL PRESS

L OIL PRESS -------------- A/P TRIM FAIL -------------- R OIL PRESS

L CHIP DETECT L BL AIR FAIL A/P DISC R BL AIR FAIL R CHIP DETECT

This is an illustration extracted from the Pilot Training manual.

4.6.1.2 B200 36-Annunciator PanelThis is called the " Caution-Advisory Annunciator Panel" in the Pilot Training Manual. Our version of the panel does not support the "HYD FLUID LOW" or "PROP SYNC ON" advisories.

L DC GEN ----------- ----------- RVS NOT READY ----------- R DC GEN

----------- ----------- ----------- DUCT OVERTEMP ----------- -----------

L ICE VANE ----------- BATTERY CHARGE EXT PWR ----------- R ICE VANE

L AUTO FEATHER ----------- ELEC TRIM OFF AIR COND N1 LOW ----------- R AUTO FEATHER

L ICE VANE EXT BRAKE DEICE ON LDG/TAXI LIGHT PASS OXY ON ----------- R ICE VANE EXT

L IGNITION ON L BL AIR OFF ----------- FUEL CROSSFEED R BL AIR OFF R IGNITION ON

Page 241: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is an illustration extracted from the Pilot Training manual.

4.6.2 MessagesAll annunciator messages are sent from the host PC to the controller.

Header ValueClass (06)

Selector Message Index 8 bits unsignedLSB MSB

All values are in hexadecimal.

4.6.2.1 ANN_NONE (0)This value is invalid and may not be used in messages.

4.6.2.2 ANN_AP_DISCONNECT (1)Header Value

06 00 01 00 nnAll values are in hexadecimal.

B200 annunciator indicates when the autopilot has been disconnected.

4.6.2.3 ANN_AP_TRIM_FAIL (2)Header Value

06 00 02 00 nnAll values are in hexadecimal.

B200 annunciator indicates improper trim or no trim from autopilot trim command.

Page 242: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.4 ANN_BLEEDAIR_FAIL (3)Header Value

06 0x 03 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates melted or failed plastic left or right bleed air failure warning line.

Engine number 0 = left, 1 = right.

4.6.2.5 ANN_CABIN_ALT_12500 (4)Header Value

06 00 04 00 nnAll values are in hexadecimal.

B200 annunciator indicates when the cabin pressure exceeds 12,500 feet.

4.6.2.6 ANN_CABIN_DOOR_OPEN (5)Header Value

06 00 05 00 nnAll values are in hexadecimal.

B200 annunciator indicates when cabin/cargo door open or not secure.

4.6.2.7 ANN_CHIP_DETECT (6)Header Value

06 0x 06 00 nn0x = engine#

All values are in hexadecimal.

Indicates that contamination is detected in left engine oil.

Engine number 0 = left, 1 = right.

Page 243: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.8 ANN_ENGINE_FIRE (7)Header Value

06 0x 07 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates fire in left or right engine compartment.

Engine number 0 = left, 1 = right.

4.6.2.9 ANN_FUEL_PRESS_LO (8)Header Value

06 0x 08 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates fuel pressure failure on left or right side.

Engine number 0 = left, 1 = right.

4.6.2.10 ANN_INVERTER_OFF (9)Header Value

06 00 09 00 nnAll values are in hexadecimal.

B200 annunciator indicates when the inverter selected is inoperative.

Engine number 0 = left, 1 = right.

4.6.2.11 ANN_MAST_CAUT (10)Header Value

06 00 0A 00 nnAll values are in hexadecimal.

When an annunciator-covered fault occurs that requires the pilot’s attention, the appropriate amber caution annunciator in the caution-advisory panel illuminates, and both MASTER CAUTION flashers begin flashing (Figure 4-2). The flashing MASTER CAUTION lights can be extinguished by pressing the face of either of the flashing lights to reset the circuit. Subsequently, when any other caution annunciator illuminates, the MASTER CAUTION flashers will be activated again.

Page 244: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Most illuminated caution annunciators on the caution-advisory annunciator panel will remain on until the fault condition is corrected, at which time they will extinguish. The MASTER CAUTION flashers will continue flashing until one of the flashers is depressed.

4.6.2.12 ANN_MAST_WARN (11)Header Value

06 00 0B 00 nnAll values are in hexadecimal.

If a fault requires the immediate attention and reaction of the pilot, the appropriate red warning annunciator in the warning annunciator panel illuminates and both MASTER WARNING flashers begin flashing (Figure 4-2). Illuminated lenses in the warning annunciator panel will remain on until the fault is corrected. However, the MASTER WARNING flashers can be extinguished by depressing the face of either MASTER WARNING flasher, even if the fault is not corrected. In such a case, the MASTER WARNING flashers will again be activated if an additional warning annunciator illuminates. When a warning fault is corrected, the affected warning annunciator will extinguish, but the MASTER WARNING flashers will continue flashing until one of the flashers is depressed to reset the circuit.

4.6.2.13 ANN_OIL_PRESS_LOW (12)Header Value

06 0x 0C 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates when oil pressure is below safe limits.

Engine number 0 = left, 1 = right.

4.6.2.14 ANN_GROUP_B200_20_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to a B200’s 20-element annunciator (mounted on the top of the dash). It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

Page 245: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.15 ANN_GROUP_B200_20_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to a B200’s 20-element annunciator (mounted on the top of the dash). It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.6.2.16 ANN_BOTTLE_ARMED_LEFT (13)Header Value

06 0x 0D 00 nn0x = pilot/copilot

All values are in hexadecimal.

"Lifting the guard and depressing the [BUTTON_ENG_FIRE] warning light simultaneously closes the respective firewall fuel and hydraulic valves, de-energizes the starter/generator and arms the two freon extinguishing bottles. Firewall shutoff and extinguisher arming are indicated by illumination of the respective LO FUEL PRESS, LO HYD FLOW, F/W SHUTOFF and GEN OFF annunciator panel lights and both white BOTTLE ARMED lights.

"Once armed, either bottle may be discharged to the selected engine by pushing the BOTTLE ARMED light. The light will go out as the light is pushed. System plumbing is such that both bottles can be directed to the same engine if necessary."

4.6.2.17 ANN_BOTTLE_ARMED_RIGHT (14)Header Value

06 0x 0E 00 nn0x = pilot/copilot

All values are in hexadecimal.

"Lifting the guard and depressing the [BUTTON_ENG_FIRE] warning light simultaneously closes the respective firewall fuel and hydraulic valves, de-energizes the starter/generator and arms the two freon extinguishing bottles. Firewall shutoff and extinguisher arming are indicated by illumination of the respective LO FUEL PRESS, LO HYD FLOW, F/W SHUTOFF and GEN OFF annunciator panel lights and both white BOTTLE ARMED lights.

"Once armed, either bottle may be discharged to the selected engine by pushing the BOTTLE ARMED light. The light will go out as the light is pushed. System plumbing is such that both bottles can be directed to the same engine if necessary."

Page 246: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.18 ANN_ENGINE_FIRE_LEFT (15)Header Value

06 0x 0F 00 nn0x = pilot/copilot

All values are in hexadecimal.

This lighted button announces the presence of a fire in the left engine. Associated with BUTTON_ENG_FIRE_LEFT.

4.6.2.19 ANN_ENGINE_FIRE_LEFT (16)Header Value

06 0x 10 00 nn0x = pilot/copilot

All values are in hexadecimal.

This lighted button announces the presence of a fire in the right engine. Associated with BUTTON_ENG_FIRE_RIGHT.

4.6.2.20 ANN_AP_FAIL (20)Header Value

06 00 14 00 nnAll values are in hexadecimal.

Indicates when there has been any failure of the autopilot system.

4.6.2.21 ANN_BAGGAGE_DOOR (21)Header Value

06 00 15 00 nnAll values are in hexadecimal.

C90 annunciator indicates when the baggage door is open.

4.6.2.22 ANN_ENGINE_DEICE (22)Header Value

06 0x 16 00 nn0x = engine#

All values are in hexadecimal.

Page 247: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

C90 annunciator indicates when the engine de-icing system is active.

Engine number 0 = left, 1 = right.

4.6.2.23 ANN_ENGINE_DEICE_FAIL (23)Header Value

06 0x 17 00 nn0x = engine#

All values are in hexadecimal.

C90 annunciator indicates when there has been a failure of the engine de-icing system.

Engine number 0 = left, 1 = right.

4.6.2.24 ANN_PITOT_HEAT (24)Header Value

06 0x 18 00 nn0x = engine#

All values are in hexadecimal.

C90 annunciator indicates when pitot heat is active.

Engine number 0 = left, 1 = right.

4.6.2.25 ANN_MAN_TIES_CLOSED (25)Header Value

06 0x 19 00 nn0x = engine#

All values are in hexadecimal.

C90 annunciator indicates when indicates generator bus ties have been manually closed.

Engine number 0 = left, 1 = right.

Page 248: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.26 ANN_BATTERY_TIE_OPEN (26)Header Value

06 00 1A 00 nnAll values are in hexadecimal.

C90 annunciator indicates when the battery is isolated from generator buses.

4.6.2.27 ANN_GENERATOR_TIE_OPEN (27)Header Value

06 0x 1B 00 nn0x = engine#

All values are in hexadecimal.

C90 annunciator indicates when generator bus is isolated from center bus.

Engine number 0 = left, 1 = right.

4.6.2.28 ANN_HYDRAULIC_PRESSURE (28)Header Value

06 00 1C 00 nnAll values are in hexadecimal.

C90 annunciator indicates when hydraulic fluid is low in the primary hydraulic fluid reservoir.

4.6.2.29 ANN_BELOW_GS_P_INHIBIT (30)Header Value

06 0x 1E 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

4.6.2.30 ANN_AP_PRST (31)Header Value

06 0x 1F 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

Page 249: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.31 ANN_AT_PRST (32)Header Value

06 0x 20 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

4.6.2.32 ANN_FMC_PRST (33)Header Value

06 0x 21 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

4.6.2.33 ANN_STAB_OUT_OF_TRIM (34)Header Value

06 0x 22 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.

4.6.2.34 ANN_AUTO_FEATHER_ARM (50)Header Value

06 0x 32 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates autofeather armed with power levers advanced above approximately 90% N1 power lever position.

4.6.2.35 ANN_AUTO_IGNITION_ON (51)Header Value

06 0x 33 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates left or right starter/ignition switch is in the engine/ignition mode or auto-ignition system is armed and engine torque is below 400 ft-lbs.

Page 250: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.36 ANN_BATTERY_CHARGE_HIGH (52)Header Value

06 00 34 00 nnAll values are in hexadecimal.

B200 annunciator indicates excessive charge rate on the battery.

4.6.2.37 ANN_BLEEDAIR_OFF (53)Header Value

06 0x 35 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates when the engine bleed air system has been turned off.

Engine number 0 = left, 1 = right.

4.6.2.38 ANN_BRAKE_DEICE_ON (54)Header Value

06 00 36 00 nnAll values are in hexadecimal.

B200 annunciator indicates when the brake de-icing system is active.

4.6.2.39 ANN_CROSSFEED_ON (55)Header Value

06 00 37 00 nnAll values are in hexadecimal.

B200 annunciator indicates when fuel crossfeed has been selected.

4.6.2.40 ANN_DUCT_OVERTEMP (56)Header Value

06 00 38 00 nnAll values are in hexadecimal.

B200 annunciator indicates the duct air is too hot.

Page 251: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.41 ANN_ELEC_TRIM_OFF (57)Header Value

06 00 39 00 nnAll values are in hexadecimal.

B200 annunciator indicates electric trim de-engergized by a trim disconnect switch on the control wheel with the system power switch on the pedestal turned on.

4.6.2.42 ANN_EXT_POWER_ON (58)Header Value

06 00 3A 00 nnAll values are in hexadecimal.

B200 annunciator indicates when the airplane is connected to external power.

4.6.2.43 ANN_GENERATOR_OFF (59)Header Value

06 0x 3B 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates when a generator is offline.

Engine number 0 = left, 1 = right.

4.6.2.44 ANN_ICE_VANE_EXT (60)Header Value

06 0x 3C 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates when the ice vanes have been extended.

Engine number 0 = left, 1 = right.

Page 252: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.45 ANN_ICE_VANE_FAIL (61)Header Value

06 0x 3D 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates ice vane malfunction. Ice vane has not attained proper position.

Engine number 0 = left, 1 = right.

4.6.2.46 ANN_LAND_TAXI_LIGHT (62)Header Value

06 00 3E 00 nnAll values are in hexadecimal.

B200 annunciator indicates landing lights on with landing gear up.

4.6.2.47 ANN_N1_LOW (63)Header Value

06 00 3F 00 nnAll values are in hexadecimal.

B200 annunciator indicates right engine rpm is too low for air-conditioning load.

4.6.2.48 ANN_PASSENGER_OXYGEN_ON (64)Header Value

06 00 40 00 nnAll values are in hexadecimal.

B200 annunciator indicates that oxygen is available to the passengers.

4.6.2.49 ANN_RVS_NOT_READY (65)Header Value

06 00 41 00 nnAll values are in hexadecimal.

B200 annunciator indicates propeller levers are not in the high-rpm, low-pitch position with landing gear extended.

Page 253: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.50 ANN_FUEL_NO_TRANSFER (66)Header Value

06 0x 42 00 nn0x = engine#

All values are in hexadecimal.

B200 annunciator indicates when there is not enough fuel for aux transfer.

Engine number 0 = left, 1 = right.

4.6.2.51 ANN_GROUP_B200_36_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to a B200’s 36-element annunciator (mounted on the top of the center console). It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.6.2.52 ANN_GROUP_B200_36_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to a B200’s 36-element annunciator (mounted on the top of the center console). It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.6.2.53 ANN_H_PITOT_HEAT (86)Header Value

06 00 56 00 nnAll values are in hexadecimal.

Helicopter annunciator reports that the pitot heat is on.

4.6.2.54 ANN_H_FUEL_LOW (87)Header Value

06 00 57 00 nnAll values are in hexadecimal.

Helicopter annunciator reports remaining fuel is at about or less than 20 gallons.

Page 254: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.55 ANN_H_GEN_FAIL (88)Header Value

06 00 58 00 nnAll values are in hexadecimal.

Helicopter annunciator reports generator is not running or has been failed to initialize.

4.6.2.56 ANN_H_AF_FUEL_FILTER (89)Header Value

06 00 59 00 nnAll values are in hexadecimal.

Helicopter annunciator reports the AirFrame Fuel Filter has become too clogged to allow normal fuel flow.

4.6.2.57 ANN_H_FUEL_PUMP (90)Header Value

06 00 5A 00 nnAll values are in hexadecimal.

Helicopter annunciator reports fuel boost pump dropped to 4.0 +/- 0.5 psi due to pump failure.

4.6.2.58 ANN_H_FUEL_FILTER (91)Header Value

06 00 5B 00 nnAll values are in hexadecimal.

Helicopter annunciator reports fuel filter assembly got clogged and dropped below safe operation limits.

4.6.2.59 ANN_H_T_R_CHIP (92)Header Value

06 00 5C 00 nnAll values are in hexadecimal.

Helicopter annunciator reports metal chips in the tail gearbox.

Page 255: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.60 ANN_H_ENGINE_CHIP (93)Header Value

06 00 5D 00 nnAll values are in hexadecimal.

Helicopter annunciator reports metal chips in the engine.

4.6.2.61 ANN_H_TRANS_CHIP (94)Header Value

06 00 5E 00 nnAll values are in hexadecimal.

Helicopter annunciator reports metal chips in the transmission.

4.6.2.62 ANN_H_BATTERY_TEMP (95)Header Value

06 00 5F 00 nnAll values are in hexadecimal.

Helicopter annunciator reports battery temp has reached 130F or higher.

4.6.2.63 ANN_H_BATTERY_HOT (96)Header Value

06 00 60 00 nnAll values are in hexadecimal.

Helicopter annunciator reports battery temp has reached 140F or higher.

4.6.2.64 ANN_H_ENGINE_OUT (97)Header Value

06 00 61 00 nnAll values are in hexadecimal.

Helicopter annunciator reports N1 less than 55%.

Page 256: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.65 ANN_H_LOW_ROTOR_RPM (98)Header Value

06 00 62 00 nnAll values are in hexadecimal.

Helicopter annunciator reports Rotor RPM is less than 90%.

4.6.2.66 ANN_H_BAGGAGE_DOOR (99)Header Value

06 00 63 00 nnAll values are in hexadecimal.

Helicopter annunciator reports baggage door open.

4.6.2.67 ANN_H_TRANS_OIL_PRESS (100)Header Value

06 00 64 00 nnAll values are in hexadecimal.

Helicopter annunciator reports main transmission pressure low.

4.6.2.68 ANN_H_TRANS_OIL_TEMP (101)Header Value

06 00 65 00 nnAll values are in hexadecimal.

Helicopter annunciator reports main transmission oil temperature is at or above red line.

4.6.2.69 ANN_H_FIRE (102)Header Value

06 00 66 00 nnAll values are in hexadecimal.

Helicopter annunciator reports an engine fire.

Page 257: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.70 ANN_H_SC_FAIL (103)Header Value

06 00 67 00 nnAll values are in hexadecimal.

This is a SimConnect Fail, and not actually a helicopter function. It is found on Ruscool's Bell 206 helicopter annunciator panel and probably nowhere else.

4.6.2.71 ANN_H_LOW_INLET_PRESSURE (104)Header Value

06 00 68 00 nnAll values are in hexadecimal.

Helicopter annunciator reports an engine fire.

4.6.2.72 ANN_H_LITTER_DOOR_OPEN (105)Header Value

06 00 69 00 nnAll values are in hexadecimal.

Helicopter annunciator reports a door open.

4.6.2.73 ANN_H_FLOAT_ARM (106)Header Value

06 00 6A 00 nnAll values are in hexadecimal.

Helicopter annunciator reports a float arm error.

4.6.2.74 ANN_H_FLOAT_TEST (107)Header Value

06 00 6B 00 nnAll values are in hexadecimal.

Helicopter annunciator reports successful test of the float arm.

Page 258: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.6.2.75 ANN_H_DUCT_HIGH_TEMP (108)Header Value

06 00 6C 00 nnAll values are in hexadecimal.

Helicopter annunciator reports high temperatures in the ducting.

4.6.2.76 ANN_H_BATTERY_RLY (109)Header Value

06 00 6D 00 nnAll values are in hexadecimal.

Helicopter annunciator reports an error in the battery relay.

4.6.2.77 ANN_GROUP_ BELL_206_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to a Bell 206's annunciator. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.6.2.78 ANN_GROUP_BELL_206_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to a Bell 206's annunciator. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.6.2.79 ANN_COUNTThis is not actually a message but a count of encoder messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 259: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7 Indicator Messages

4.7.1 MessagesAll indicator messages are sent from the host PC to the controller.

Header ValueClass (07)

Selector Message Index 8 or 16 bits unsignedLSB MSB

All values are in hexadecimal.

As of this writing, all messages use an 8-bit value except INDICATOR_LANDING_GEAR_STATUS, and even then the MSB can be ignored in virtually all cases.

4.7.1.1 INDICATOR_NONE (0)This value is invalid and may not be used to send data.

4.7.1.2 INDICATOR_LANDING_GEAR_STATUS (1)Header Value

07 00 01 00 nnnnAll values are in hexadecimal.

Provides indication of the current status of three landing gears, assumed to be Front, Left and Right. There is no explicit support for any other configuration at this time.

The command provides for four status values for each indicator: Down & Safe, Unsafe, Down & Locked and In Transition. Most simulators will use the Down & Safe and Unsafe values.

Each status is a single bit corresponding to a single on/off indicator. A single 16-bit word contains all 12 bits. Different simulators may handle these indications differently as needed, but the colors given are the most commonly used.

Page 260: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Bit Indicator Bit Indicator0 Front gear Down & Safe (green) 8 Front gear Down & Locked (green)1 Front gear Unsafe (red) 9 Front gear In Transition (red)2 Left gear Down & Safe (green) 10 Left gear Down & Locked (green)3 Left gear Unsafe (red) 11 Left gear In Transition (red)4 Right gear Down & Safe (green) 12 Right gear Down & Locked (green)5 Right gear Unsafe (red) 13 Right gear In Transition (red)

Bits not shown must be set to 0.

The first 6 bits correspond to the original serial protocol message format.

Note that prior to Jun, 2014 the document PFC_enums.xls showed bits 1, 3 and 5 to be "in transition", which was incorrect: the bits actually have been showing an "unsafe" condition all this time. That document was corrected and this paragraph and the new "in transition" bits 9, 11 and 13 were added at the same time. "Down & Locked" were added later.

4.7.1.3 INDICATOR_ELEVATOR_TRIM (2)Header Value

07 00 02 00 nnnnAll values are in hexadecimal.

Indicates elevator trim position based on a value from 0 (down) to 1023 (up). The indicator will scale this value as needed.

Obsolete; the elevator trim supports its own indicator based on its position.

4.7.1.4 INDICATOR_MARKER_BEACON_STATUS (3)Header Value

07 00 03 00 nnAll values are in hexadecimal.

Lights zero, one, or three of three marker beacons.

Values: 0. All marker beacons off.1. Outer beacon on.2. Middle beacon on.3. Inner or Airway beacon on.4. All marker beacons on (test).

Note that this command simply turns the lights on or off; no attempt is made to have them blink. To blink a light, the PC must send multiple on and off commands.

Page 261: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.5 INDICATOR_AUTOPILOT_AP (4)Header Value

07 00 04 00 nnAll values are in hexadecimal.

Autopilot engaged.

4.7.1.6 INDICATOR_AUTOPILOT_FD (5)Header Value

07 00 05 00 nnAll values are in hexadecimal.

Autopilot Flight Director engaged.

4.7.1.7 INDICATOR_AUTOPILOT_ALT (6)Header Value

07 00 06 00 nnAll values are in hexadecimal.

Autopilot Altitude Hold mode active.

4.7.1.8 INDICATOR_AUTOPILOT_HDG (7)Header Value

07 00 07 00 nnAll values are in hexadecimal.

Autopilot Heading mode active.

4.7.1.9 INDICATOR_AUTOPILOT_BC (8)Header Value

07 00 08 00 nnAll values are in hexadecimal.

Autopilot ILS Back Course mode active. The indicator blinks until it captures the localizer, after which it remains steady.

Page 262: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.10 INDICATOR_AUTOPILOT_GS (9)Header Value

07 00 09 00 nnAll values are in hexadecimal.

Autopilot ILS Glide Slope mode active. The indicator blinks until it captures the Glide Slope, after which it remains steady.

4.7.1.11 INDICATOR_AUTOPILOT_NAV (10)Header Value

07 00 0A 00 nnAll values are in hexadecimal.

Autopilot ILS Navigation mode active. The indicator blinks until it captures the localizer, after which it remains steady.

4.7.1.12 INDICATOR_AUTOPILOT_APR (11)Header Value

07 00 0B 00 nnAll values are in hexadecimal.

Autopilot ILS Approach mode active. The indicator blinks until it captures the localizer, after which it remains steady.

4.7.1.13 INDICATOR_GROUP_AP_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to an autopilot. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.14 INDICATOR_GROUP_AP_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to an autopilot. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

Page 263: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.15 INDICATOR_LOLLYPOP (12)Header Value

07 00 0C 00 nnAll values are in hexadecimal.

This is a variant on INDICATOR_LANDING_GEAR_STATUS that is nominally a Gear Unsafe condition. You can use a small bit of logic to 'OR' the Gear Unsafe bits of INDICATOR_LANDING_GEAR_STATUS together into a single status, so from that perspective this indicator is redundant. However, the real B200 actually combines a number of conditions to turn on this indicator that are not common to all aircraft.

Illumination of the landing gear intransit light indicates on or more of the following conditions:

landing gear handle is in the UP position and aircraft on the ground with weight on gear

one or both power levers are retarded below a preset 79% N1 level and at least one landing gear is not down and locked

any one or more landing gear is not fully retracted or in the down and locked position

one or more of the landing gear is not down and locked and the flaps are selected past approach. Warning horn only can be silenced by retracting flaps or extending the landing gear.

4.7.1.16 INDICATOR_SPEEDBRAKE_ARMED (13)Header Value

07 00 0D 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as INDICATOR_APU_FIRE_DISCH.

4.7.1.17 INDICATOR_SPEEDBRAKE_DO_NOT_ARM (14)Header Value

07 00 0E 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as INDICATOR_ENGINE_FIRE_DISCH.

Page 264: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.18 INDICATOR_SPEEDBRAKE_EXTENDED (15)Header Value

07 00 0F 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as INDICATOR_APU_GREEN.

4.7.1.19 INDICATOR_AUTO_BRAKE_DISARM (16)Header Value

07 00 10 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as INDICATOR_ENGINE_GREEN.

4.7.1.20 INDICATOR_ANTI_SKID_INOP (17)Header Value

07 00 11 00 nnAll values are in hexadecimal.

Custom, 737 Jet only. Not implemented in the main product as of April 2011.Previously defined as INDICATOR_ENGINE_OVERHEAT.

4.7.1.21 INDICATOR_APU_DET_INOP (18)Header Value

07 00 12 00 nnAll values are in hexadecimal.

Not implemented as of July 2015. May be available for re-assignment.

4.7.1.22 INDICATOR_FAULT (19)Header Value

07 00 13 00 nnAll values are in hexadecimal.

Not implemented as of July 2015. May be available for re-assignment.

Page 265: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.23 INDICATOR_APU_BOTTLE_DISCH (20)Header Value

07 00 14 00 nnAll values are in hexadecimal.

Not implemented as of July 2015. May be available for re-assignment.

4.7.1.24 INDICATOR_ENGINE_BOTTLE_DISCH (21)Header Value

07 00 15 00 nnAll values are in hexadecimal.

Not implemented as of July 2015. May be available for re-assignment.

4.7.1.25 INDICATOR_WHEEL_WELL (22)Header Value

07 00 16 00 nnAll values are in hexadecimal.

Not implemented as of July 2015. May be available for re-assignment.

4.7.1.26 INDICATOR_DME_NM (23)Header Value

07 00 17 00 nnAll values are in hexadecimal.

Reports that the DME display is showing distance from the localizer in Nautical Miles.

4.7.1.27 INDICATOR_DME_KT (24)Header Value

07 00 18 00 nnAll values are in hexadecimal.

Reports that the DME display is showing current airspeed in knots.

Page 266: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.28 INDICATOR_DME_MHZ (25)Header Value

07 00 19 00 nnAll values are in hexadecimal.

Reports that the DME display is showing the radio frequency.

4.7.1.29 INDICATOR_DME_MIN (26)Header Value

07 00 1A 00 nnAll values are in hexadecimal.

Reports that the DME display is showing estimated time from the localizer.

4.7.1.30 INDICATOR_GROUP_DME_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to a DME. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.31 INDICATOR_GROUP_DME_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to a DME. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.32 INDICATOR_ADF_ADF (27)Header Value

07 00 1B 00 nnAll values are in hexadecimal.

The Automatic Direction Finder is in ADF mode.

4.7.1.33 INDICATOR_ADF_ANT (28)Header Value

07 00 1C 00 nnAll values are in hexadecimal.

Page 267: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The Automatic Direction Finder's loop antenna is disabled and all receiving is done through the sense antenna.

4.7.1.34 INDICATOR_ADF_BFO (29)Header Value

07 00 1C 00 nnAll values are in hexadecimal.

The Automatic Direction Finder is in Beat Frequency Oscillator mode.

4.7.1.35 INDICATOR_GROUP_ADF_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to an ADF. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.36 INDICATOR_GROUP_ADF_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to an ADF. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.37 INDICATOR_TRANSPONDER_IDENT (30)Header Value

07 00 1E 00 nnAll values are in hexadecimal.

Reports that the transponder is currently squawking its ident code.

4.7.1.38 INDICATOR_ALT_VS (31)Header Value

07 00 1F 00 nnAll values are in hexadecimal.

Reports that the autopilot is currently controlling the aircraft's vertical speed.

Page 268: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.39 INDICATOR_ALT_ALERT (32)Header Value

07 00 20 00 nnAll values are in hexadecimal.

Reports that the aircraft's altitude is within 100 feet of the target altitude while in Vertical Speed mode and while Altitude Capture is armed.

4.7.1.40 INDICATOR_ALT_ARM (33)Header Value

07 00 21 00 nnAll values are in hexadecimal.

Altitude Capture is armed. The autopilot will go into Altitude Hold mode once the target altitude is reached.

4.7.1.41 INDICATOR_ALT_CAPT (34)Header Value

07 00 22 00 nnAll values are in hexadecimal.

The autopilot has captured the target altitude and is now in Altitude Hold mode.

4.7.1.42 INDICATOR_ALT_FT_PER_MIN (35)Header Value Values: 0. Both off

07 00 23 00 Nn 1. Both on2. FT only3. MIN only

All values are in hexadecimal.

Reports whether a dual-mode Altitude Pre-select/Vertical Speed display and its control knob are currently in Vertical Speed mode or Altitude Set mode.

The original design merely turned FT/MIN on or off, and the first two values were maintained for backwards compatibility. Later hardware supports turning either indicator on independently. However, the usual operation will be either Both off, FT only (Altitude Set mode), or FT/MIN (Vertical Speed mode). MIN only was only included for completeness.

Page 269: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.43 INDICATOR_ALT_UP_ARROW (36)Header Value

07 00 24 00 nnAll values are in hexadecimal.

While Vertical Speed is active, reports that the vertical speed is positive (aircraft is ascending).

4.7.1.44 INDICATOR_ALT_DN_ARROW (37)Header Value

07 00 25 00 nnAll values are in hexadecimal.

While Vertical Speed is active, reports that the vertical speed is negative (aircraft is descending).

4.7.1.45 INDICATOR_GROUP_ALT_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to an altitude pre-select panel. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.46 INDICATOR_GROUP_ALT_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to an altitude pre-select panel. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.47 INDICATOR_AUD_MKR_MUTE (38)Header Value

07 00 26 00 nnAll values are in hexadecimal.

Indicates that the Marker Beacon audio is enabled.

Page 270: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.48 INDICATOR_AUD_COM1 (39)Header Value

07 00 27 00 nnAll values are in hexadecimal.

Indicates that COM1 is the current audio source.

4.7.1.49 INDICATOR_AUD_COM2 (40)Header Value

07 00 28 00 nnAll values are in hexadecimal.

Indicates that COM2 is the current audio source.

4.7.1.50 INDICATOR_AUD_NAV1 (41)Header Value

07 00 29 00 nnAll values are in hexadecimal.

Indicates that NAV1 is the current audio source.

4.7.1.51 INDICATOR_AUD_NAV2 (42)Header Value

07 00 2A 00 nnAll values are in hexadecimal.

Indicates that NAV2 is the current audio source.

4.7.1.52 INDICATOR_AUD_DME (43)Header Value

07 00 2B 00 nnAll values are in hexadecimal.

Indicates that the DME is the current audio source.

Page 271: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.53 INDICATOR_AUD_ADF (44)Header Value

07 00 2C 00 nnAll values are in hexadecimal.

Indicates that the ADF is the current audio source.

4.7.1.54 INDICATOR_AUD_TEST (45)Header Value

07 00 2D 00 nnAll values are in hexadecimal.

Indicates that the TEST button is being pressed on the audio panel. This indicator is only lit during a lamp test and so is somewhat self-referential.

4.7.1.55 INDICATOR_AUD_SENS (46)Header Value

07 00 2E 00 nnAll values are in hexadecimal.

This indicator was mistakenly added to the original Audio Panel design. It actually has no purpose, as INDICATOR_AUD_HI and INDICATOR_AUD_LO indicate the sensitivity setting.

If this indicator is present on a panel it should be lit during a lamp test; otherwise, it should be ignored. (If the panel supports the METADATA_TEST command then it need not be lit explicitly.) The reasoning for lighting it during the lamp test, regardless of its uselessness, is that customers will complain of a non-working lamp if it does not light. This is not entirely unreasonable – a lamp test is there to test all the lamps, after all.

4.7.1.56 INDICATOR_AUD_COM1_MIC (47)Header Value

07 00 2F 00 nnAll values are in hexadecimal.

Indicates that the microphone is tied to COM1 for voice transmissions.

Page 272: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.57 INDICATOR_AUD_COM2_MIC (48)Header Value

07 00 30 00 nnAll values are in hexadecimal.

Indicates that the microphone is tied to COM2 for voice transmissions.

4.7.1.58 INDICATOR_AUD_COM1_COM2_SPLIT (49)Header Value

07 00 31 00 nnAll values are in hexadecimal.

Indicates that both COM1 and COM2 are being used as the current audio source. Both radios will be heard.

This replaces INDICATOR_AUD_COM12_SPLIT which in turn replaces INDICATOR_AUD_COM12_MIC.

4.7.1.59 INDICATOR_AUD_SPKR (50)Header Value

07 00 32 00 nnAll values are in hexadecimal.

Indicates that the in-cabin speakers are enabled.

4.7.1.60 INDICATOR_AUD_PILOT (51)Header Value

07 00 33 00 nnAll values are in hexadecimal.

Indicates that the pilot's microphone is selected for voice transmissions.

4.7.1.61 INDICATOR_AUD_COPILOT (52)Header Value

07 00 34 00 nnAll values are in hexadecimal.

Indicates that the copilot's microphone is selected for voice transmissions.

Page 273: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.62 INDICATOR_AUD_TEST_ALL (53)Header Value

07 00 35 00 nnAll values are in hexadecimal.

Indicates that the ANNUN TEST button is being pressed on the audio panel. This indicator is only lit during a lamp test and so is somewhat self-referential.

4.7.1.63 INDICATOR_AUD_HI (54)Header Value

07 00 36 00 nnAll values are in hexadecimal.

Indicates that the marker beacon radio is set to high sensitivity.

4.7.1.64 INDICATOR_AUD_LO (55)Header Value

07 00 37 00 nnAll values are in hexadecimal.

Indicates that the marker beacon radio is set to low sensitivity.

4.7.1.65 INDICATOR_GROUP_AUD_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to an audio panel. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.66 INDICATOR_GROUP_AUD_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to an audio panel. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.67 INDICATOR_AUTOPILOT_VORAPR (56)Header Value

07 00 38 00 nnAll values are in hexadecimal.

Page 274: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

VHF Omni-directional Range Approach mode engaged.

4.7.1.68 INDICATOR_AUTOPILOT_ALTSEL (57)Header Value

07 00 39 00 nnAll values are in hexadecimal.

Altitude Pre-Select mode is engaged.

4.7.1.69 INDICATOR_AUTOPILOT_VS (58)Header Value

07 00 3A 00 nnAll values are in hexadecimal.

Indicates that Vertical Speed mode is engaged. The autopilot is causing the aircraft to ascend or descend.

4.7.1.70 INDICATOR_AUTOPILOT_IAS (59)Header Value

07 00 3B 00 nnAll values are in hexadecimal.

Indicates that Indicated Air Speed mode is engaged. The autopilot is attempting to use auto-throttles to maintain a constant air speed.

4.7.1.71 INDICATOR_AUTOPILOT_TRIM (60)Header Value

07 00 3C 00 nnAll values are in hexadecimal.

This indicator was assigned by mistake. Not used, available for re-assignment.

4.7.1.72 INDICATOR_AUTOPILOT_SBY (61)Header Value

07 00 3D 00 nnAll values are in hexadecimal.

Flight Director has been disabled and all modes cleared.

Page 275: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.73 INDICATOR_AUTOPILOT_BANK_LIMIT (62)Header Value

07 00 3E 00 nnAll values are in hexadecimal.

Bank Limit is engaged. The autopilot reduces the banking angle during turns.

4.7.1.74 INDICATOR_AUTOPILOT_SOFT_RIDE (63)Header Value

07 00 3F 00 nnAll values are in hexadecimal.

Soft Ride is engaged. The autopilot reduces the pitch during vertical maneuvers.

4.7.1.75 INDICATOR_AUTOPILOT_NAV_SOURCE (64)Header Value

07 00 40 00 nnAll values are in hexadecimal.

Originally INDICATOR_AUTOPILOT_RESERVED_64, this was renamed to INDICATOR_AUTOPILOT_NAV_SOURCE in 2011 to support a function that was never implemented. Available for re-assignment.

4.7.1.76 INDICATOR_AUTOPILOT_YD (65)Header Value

07 00 41 00 nnAll values are in hexadecimal.

Yaw Damper engaged. Used to eliminate Dutch Roll.

4.7.1.77 INDICATOR_AUTOPILOT_PITCH_ASCEND (66)Header Value

07 00 42 00 nnAll values are in hexadecimal.

A positive value has been entered into the Vertical Speed.

Page 276: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.78 INDICATOR_AUTOPILOT_PITCH_DESCEND (67)Header Value

07 00 43 00 nnAll values are in hexadecimal.

A negative value has been entered into the Vertical Speed.

4.7.1.79 INDICATOR_GROUP_APB200_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to a B200 autopilot. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.80 INDICATOR_GROUP_APB200_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to a B200 autopilot. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.81 INDICATOR_FLAPS_STATUS (68)Header Value

07 00 44 00 nnAll values are in hexadecimal.

Drives one or more flaps position indicators. Indicators show flaps in any of several pre-determined positions, rather than displaying the actual position; contrast with ANALOG_DISPLAY_FLAPS_GAUGE (1).

4.7.1.81.1 Value0. Flaps up (usually no indicator)1. Flaps in transit2. Flaps in approach position3. Flaps down (landing position)4. All lights on (test)

4.7.1.82 INDICATOR_AUD_PLAY (69)Header Value Values: 0: Off

07 00 45 00 nn 1: OnAll values are in hexadecimal.

Page 277: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

GMA 1347: Play mode engaged.

4.7.1.83 INDICATOR_AUD_AUX (70)Header Value Values: 0: Off

07 00 46 00 nn 1: OnAll values are in hexadecimal.

GMA 1347: AUX input selected as an audio source.

4.7.1.84 INDICATOR_AUD_MAN_SQ (71)Header Value Values: 0: Off

07 00 47 00 nn 1: OnAll values are in hexadecimal.

GMA 1347: Manual squelch adjustment is selected.

4.7.1.85 INDICATOR_AUD_COM3_MIC (72)Header Value Values: 0: Off

07 00 48 00 nn 1: OnAll values are in hexadecimal.

GMA 1347: COM3 is using the microphone for voice communications.

4.7.1.86 INDICATOR_AUD_COM3 (73)Header Value Values: 0: Off

07 00 49 00 nn 1: OnAll values are in hexadecimal.

GMA 1347: COM3 is being used as an audio source.

4.7.1.87 INDICATOR_AUD_TEL (74)Header Value Values: 0: Off

07 00 4A 00 nn 1: OnAll values are in hexadecimal.

GMA 1347: The dedicated telephone interface is being used as an audio source.

Page 278: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.88 INDICATOR_AUD_PA (75)Header Value Values: 0: Off

07 00 4B 00 nn 1: OnAll values are in hexadecimal.

GMA 1347: The passenger address system is selected.

4.7.1.89 INDICATOR_AUD_VOLSQ_VOL (76)Header Value Values: 0: Off

07 00 4C 00 nn 1: OnAll values are in hexadecimal.

GMA 1347: Volume/Squelch knob is in Volume mode.

4.7.1.90 INDICATOR_AUD_VOLSQ_SQ (77)Header Value Values: 0: Off

07 00 4D 00 nn 1: OnAll values are in hexadecimal.

GMA 1347: Volume/Squelch knob is in Squelch mode. Note that this is only valid when MAN SQ is selected.

4.7.1.91 INDICATOR_GROUP_AUD2_STARTThis is not actually a message but has the same value as the first message in the second group of messages that might be sent to an audio panel. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.92 INDICATOR_GROUP_AUD2_ENDThis is not actually a message but has the same value as the last message in the second group of messages that might be sent to an audio panel. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.7.1.93 INDICATOR_STANDBY_BATTERY (78)Header Value Values: 0. Off

1. On07 00 4E 00 nn

All values are in hexadecimal.

Page 279: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Currently on Cessna-specific simulators. This turns on when the standby battery switch is in “Test” if the battery is good.

4.7.1.94 INDICATOR_ENGINE_STARTING (79)Header Value Values: 0. Off

07 0x 4F 00 nn 1. On0x = engine selector

All values are in hexadecimal.

Currently on the Citation jet starter panel. For this panel:1. Push and release the starter button. (BUTTON_ENGINE_START)2. The starter engages and runs until:

a. The engine starts running, orb. The pilot pushes the Starter Disengage button.

(BUTTON_STARTER_DISENGAGE)While the starter is running the INDICATOR_ENGINE_STARTING indicator should be lit.

4.7.1.95 INDICATOR_IGNITION_CONTINUOUS (80)Header Value Values: 0. Auto

1. On07 00 50 00 nn

All values are in hexadecimal.

Currently on the Citation jet starter panel. This indicator should be lit when: SWITCH_IGNITION is on, or SWITCH_ENGINE_DEICE is sending “on with continuous ignition”.

4.7.1.96 INDICATOR_TRANSPONDER_SPI (81)Header Value Values: 0. Off

1. On07 00 51 00 nn

All values are in hexadecimal.

"Pressing the IDENT key activates the Special Position Identification (SPI) Pulse for 18 seconds, identifying your transponder return from others on the air traffic controller’s screen." This lights an indicator on the transponder during that period.

Page 280: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.97 INDICATOR_PRECISE_FLIGHT_O2 (82)Header Value

07 00 52 00 nn

All values are in hexadecimal.

A bitmapped indicator for the Precise Flight oxygen system control panel found in the Quest Kodiak and the Cirrus SR-22 airplanes, and possibly others.

Bit Indicator0 EMPTY (red)1 400 (green)2 800 (green)3 1200 (green)4 1600 (green)5 FULL (green)6 O2 Required (yellow)7 FAULT (red)

This is a manufacturer-specific indicator and no attempt is being made to turn it into an abstract.

4.7.1.98 INDICATOR_ELT_ON (83)Header Value Values: 0. Off

1. On07 00 53 00 nn

All values are in hexadecimal.

Emergency Locator Transmitter indicator found on some aircraft.

4.7.1.99 INDICATOR_ELT_BUTTON (84)Header Value Values: 0. Off

07 00 54 00 nn 1. Xmit2. Arm3. Test (all on)

All values are in hexadecimal.

Emergency Locator Transmitter indicator found on some aircraft. This is the face of a lighted momentary pushbutton. The face is divided into upper and lower segments that indicate one of two current settings:

Upper: ELT ARM (green)Lower: ELT XMIT (yellow)

Page 281: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

"Off" and "Test" values are also provided for turning both indicators off or on.

See also BUTTON_ELT.

4.7.1.100 INDICATOR_RPM (85)Header Value Values: 0. Off

1. On07 00 55 00 nn

All values are in hexadecimal.

Lights to indicate an out-of-range RPM condition.

See also BUTTON_RPM_MUTE.

4.7.1.101 INDICATOR_FADEC (86)Header Value Values: 0. Off

07 00 56 00 nn 1. Manual2. Auto3. Test (all on)

All values are in hexadecimal.

FADEC indicator found on some aircraft. This is the face of a lighted momentary pushbutton. The face is divided into upper and lower segments that indicate one of two current settings:

Upper: AUTO (green)Lower: MANUAL (yellow)

"Off" and "Test" values are also provided for turning both indicators off or on.

See also BUTTON_FADEC.

4.7.1.102 INDICATOR_IBF (87)Header Value Values: 0. Off

07 00 57 00 nn 1. Filter2. Bypass3. Test (all on)

All values are in hexadecimal.

IBF (Inlet Barrier Filters) indicator found on some aircraft. This is the face of a lighted momentary pushbutton. The face is divided into upper and lower segments that indicate one of two current settings:

Upper: AUTO (green)Lower: MANUAL (yellow)

Page 282: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

"Off" and "Test" values are also provided for turning both indicators off or on.

See also BUTTON_IBF.

4.7.1.103 INDICATOR_AUD_TEL_MUSIC (88)Header Value Values: 0. Off

1. On07 00 58 00 nn

All values are in hexadecimal.

This is an indicator for the GMA 1347D.

4.7.1.104 INDICATOR_AUD_PASS (89)Header Value Values: 0. Off

1. On07 00 59 00 nn

All values are in hexadecimal.

This is an indicator for the GMA 1347D.

4.7.1.105 INDICATOR_AUD_MUSIC (90)Header Value Values: 0. Off

1. On07 00 5A 00 nn

All values are in hexadecimal.

This is an indicator for the GMA 1347D.

4.7.1.106 INDICATOR_AUD_MUSIC_2 (91)Header Value Values: 0. Off

1. On07 00 5B 00 nn

All values are in hexadecimal.

This is an indicator for the GMA 1347D.

4.7.1.107 INDICATOR_AUTOPILOT_XFR_1 (92)Header Value Values: 0. Off

1. On07 00 5C 00 nn

All values are in hexadecimal.

This is an indicator for the GMC 710.

Page 283: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.108 INDICATOR_AUTOPILOT_XFR_2 (93)Header Value Values: 0. Off

1. On07 00 5D 00 nn

All values are in hexadecimal.

This is an indicator for the GMC 710.

4.7.1.109 INDICATOR_AUTOPILOT_VNV (94)Header Value Values: 0. Off

1. On07 00 5E 00 nn

All values are in hexadecimal.

This is an indicator for the GMC 710.

4.7.1.110 INDICATOR_AUTOPILOT_FLC (95)Header Value Values: 0. Off

1. On07 00 5F 00 nn

All values are in hexadecimal.

This is an indicator for the GMC 710.

4.7.1.111 INDICATOR_GCU_PFD (96)Header Value Values: 0. Off

1. On07 00 60 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 476.

4.7.1.112 INDICATOR_GCU_MFD (97)Header Value Values: 0. Off

1. On07 00 61 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 476.

Page 284: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.113 INDICATOR_GCU_NAV (98)Header Value Values: 0. Off

1. On07 00 62 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 476.

4.7.1.114 INDICATOR_GCU_COM (99)Header Value Values: 0. Off

1. On07 00 63 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 476.

4.7.1.115 INDICATOR_GCU_FMS (100)Header Value Values: 0. Off

1. On07 00 64 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 477.

4.7.1.116 INDICATOR_GCU_XPDR (101)Header Value Values: 0. Off

1. On07 00 65 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 477.

4.7.1.117 INDICATOR_GCU_COM1 (102)Header Value Values: 0. Off

1. On07 00 66 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 477.

Page 285: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.118 INDICATOR_GCU_COM2 (103)Header Value Values: 0. Off

1. On07 00 67 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 477.

4.7.1.119 INDICATOR_GCU_NAV1 (104)Header Value Values: 0. Off

1. On07 00 68 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 477.

4.7.1.120 INDICATOR_GCU_NAV2 (105)Header Value Values: 0. Off

1. On07 00 69 00 nn

All values are in hexadecimal.

This is an indicator for the GCU 477.

4.7.1.121 INDICATOR_GMA_INTR_COM (106)Header Value Values: 0. Off

1. On07 00 5B 00 nn

All values are in hexadecimal.

This is an indicator for the GMA 1347D and GMA 1347D-20.

4.7.1.122 INDICATOR_GMA_REC (107)Header Value Values: 0. Off

1. On07 00 5C 00 nn

All values are in hexadecimal.

This is an indicator for the GMA 1347D.

Page 286: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.7.1.123 INDICATOR_GMA_CABIN (108)Header Value Values: 0. Off

1. On07 00 5D 00 nn

All values are in hexadecimal.

This is an indicator for the GMA 1347D-20.

4.7.1.124 INDICATOR_COUNTThis is not actually a message but a count of indicator messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 287: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.8 Illuminator and Mode Control MessagesThis class controls lights that illuminate but do not themselves contain information. Panel lights, panel backlighting, floodlights, reading lights, spotlights, landing lights, etc. can be controlled through illuminator messages.

It also can control the current mode of a panel or of a control on that panel. For example, ILLUMINATOR_POWER controls a simulation of whether a panel has power, based on various controls and states within the simulated airplane. If the engines are running and alternators turned on, or if the Battery Master is turned on and the battery contains a charge, the airplane would be considered to be powered, and so a panel would behave as though powered; where it may extinguish backlighting and indicators if it is told that power is off.

This class was originally intended to be used to control illuminators only. However, in March, 2012 we determined the need for a mode control class. When we considered the options we realized that we had already perverted the intention of the Illuminator class somewhat when we used it for power control, and decided to go the rest of the way and declare it a Mode Control class. Conceptually, it’s easier to justify lumping panel illumination brightness into “mode control” than it is to justify lumping power, avionics power, and simulator power control into “illumination”. (We originally justified the inclusion by claiming that “the power modes are just there to control lights anyway,” but that’s not entirely true.) We will not rename any existing constants but we may provide both “MODE_” and “ILLUMINATOR_” versions.

4.8.1 MessagesAll illuminator messages are sent from the host PC to the controller.

Header ValueClass (08)

Selector Message Index 8 bits unsignedLSB MSB

All values are in hexadecimal.

4.8.1.1 ILLUMINATOR_NONE (0)This value is invalid and may not be used to send data.

4.8.1.2 ILLUMINATOR_BACKLIGHT (1)Header Value

08 xx 01 00 nnAll values are in hexadecimal.

Controls the backlighting for panels that support it.

Page 288: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.8.1.2.1 ValueThe value uses 8 bits to describe the relative brightness, from 0 (0% or “off”) to 255 (100% or “on full”).

Backlighting does not need much precision and, in fact, 256 levels is more than sufficient for this function. If anything deals with a different range – for example, an analog input to a 10-bit A/D converter, or a slave with a 4-bit level value field – it will just have to scale to or from 0 to 255 before sending CONTROLS_BACKLIGHT or after receiving ILLUMINATOR_BACKLIGHT.

Some devices may want to treat 0 differently from others. Generally a “real” device that would really have backlighting on a real airplane will treat 0 as “off”. However, some devices might not actually exist on a real airplane, such as the RIC (Remote Instrument Console). In this case the backlighting illuminates the labels used to show what each control is. On the real airplane there would be no such thing.

I reasoned thus: if the user is dimming the lights it’s because it’s getting dark and he doesn’t want the panels to glare. But if he turns it off completely it’s because there is full sunlight in the cabin and he doesn’t need backlighting. However, the RIC’s labels are behind dead fronts and are not clearly visible unless they’re backlit. So when the backlight value goes to zero, devices like the RIC want to set their backlighting to 100% so the labels are readable in a well-lit cockpit.

4.8.1.2.2 Selector

4.8.1.2.2.1 Normal operation (calibration mode off)The selector is normally zero (0), but may be used to distinguish multiple lighting systems. This was originally added for the Cessna, which supports four different backlight systems; each switch panel input controls a different system. Other systems are added as needed.

0. Universal. This is the default if only one system is supported.1. Switch panel. This controls the lighting on the switch panel and, on the

Cessna, the circuit breaker panel. It may encompass other panels that do not fall into any of the other categories.

2. Standby Instruments.3. Pedestal. This controls the lighting on the pedestal, which usually includes

trim controls and fuel select, and may include other controls as well.4. Avionics.5. Annunciator Lights.6. G1000 backlights under control of a dedicated brightness knob.7. G1000 panel and button backlights under control of G1000 software.8. G1000 monitor backlighting under control of G1000 software.9. Instrument flood. This may control brow lights, stalk lights (post lamps), or

illumination of that nature.

Page 289: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Note that selectors 7 and 8 are prohibited use by CONTROLS_BACKLIGHT. If you need such a control, use selector 6 for both the control and the panel. Selectors 7 and 8 are reserved for exclusive use by the G1000 simulation software (or for testing of same).

Selector 6 may control panel and button backlights, monitor backlights, or both depending on the firmware configuration. Enabling selector 6 control for either of those will disable the corresponding selector 7 or 8, and vice-versa. So for example, it is possible to enable selector 6 for the panel and button backlights but leave the monitor backlights under G1000 simulator software control by enabling selector 8. Selector 7 would not be supported in that configuration, and the dedicated brightness control would only control panel and button backlights.

During full-report time, each device that supports lighting should report an INDICATOR_BACKLIGHT for each selector that it supports, and should set the appropriate selector in each report. The plug-in should then send only appropriate backlight messages to each reporting device. Each device should filter and obey incoming messages as appropriate.

It is possible for one device to control lighting for more than one system, so it is important for the plug-in to be able to support multiple backlight selectors on a device.

4.8.1.2.2.2 Calibration modeA device might include multiple backlight subsystems due to having e.g. different types of LEDs that need to be scaled differently from each other in order to match in brightness. (One example would be the PFC 530, which includes panel backlights and button backlights; different LEDs are used to support each, and they have different characteristics.) While a full report may or may not reveal multiple backlights for one of these devices, a calibration report will. During calibration the ILLUMINATOR_BACKLIGHT messages will include a selector value for each backlight that needs to be calibrated. For more information see CALIBRATE_BACKLIGHT_SCALING (4.14.3.18).

4.8.1.3 ILLUMINATOR_POWER (2)Header Value Values: 0. Off

1. On08 00 02 00 nnAll values are in hexadecimal.

Simulates aircraft power on or off. When power is simulated off the device should extinguish all lights, annunciators, displays, and illuminators. It should also cease any electric functioning: for example the electric trim should no longer operate. However, manual functions should continue to work, e.g. the elevator trim should

Page 290: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

continue to send trim information if moved by hand. Such a control would be mechanically coupled in a real airplane and not be affected by the power being off.

Some indicators should stay on with this command. For example, the RIC-8 has selector lights that show which of two controls a single knob may be addressing; these lights do not exist in a real airplane, which would have two separate knobs. Another example is the LED indicator on the stepper trim, which simulates a mechanical indicator. The mechanical indicator would not disappear when the power goes off; neither should the LED indicator extinguish.

4.8.1.4 ILLUMINATOR_AVI_MASTER (3)Header Value Values: 0. Off

1. On08 00 03 00 nnAll values are in hexadecimal.

Simulates power on or off for the avionics (usually controlled by the avionics master switch). When power is simulated off the avionics device should extinguish all lights, annunciators, displays, and illuminators. It should also cease any electronic-based functioning.

4.8.1.5 ILLUMINATOR_SIMULATOR_POWER (4)Header Value Values: 0. Off

1. On08 00 04 00 nnAll values are in hexadecimal.

Tells the simulator that we are powering off to shut down (stopping simulation). All lights should go off, even those that would normally stay on when we are simulating a power-off condition. This command does not get used during normal operation and is not part of the actual simulation.

4.8.1.6 MODE_ALT_PRESELECT_ALT_VS (5)Header Value Values: 0. Altitude

08 00 05 00 nn 1. Vertical SpeedAll values are in hexadecimal.

Most of our altitude pre-select panels have a single display and a single control with two modes: altitude pre-select, and vertical speed. The user selects the mode via switch or pushbutton, which changes the mode of the control and sends a SWITCH_ALT_PRESELECT_ALT_VS message to the PC. The PC changes the display to the same mode and alters its content to fit. The PC may also pass on the new mode to other panels via MODE_ALT_PRESELECT_ALT_VS; if there are other dual-mode

Page 291: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

(ALT and VS) controls in the simulator, all their modes can be synchronized via the use of this message, so that all controls and displays are in the same mode.

A device that receives this message should not follow up by sending a corresponding SWITCH_ALT_PRESELECT_ALT_VS message.

4.8.1.7 MODE_ENABLE_PITCH_TRIM_MOTOR (6)Header Value Values: 0. Disable

08 00 06 00 nn 1. Enable (default)All values are in hexadecimal.

Traditionally we have placed the pitch trim wheel and the pitch trim yoke rocker switches on the same controller; that controller uses the switches to directly control the motor operation. In later simulators we have sometimes been separating the two.

If the switches and motor are on different controllers, then the plug-in can determine when the motor is disabled (e.g. the appropriate circuit breaker has been pulled) and refuse to run the motor regardless of switch position. It can also decline to run the motor in servo mode. But when the controller handles both, it bypasses the plug-in for manually running the motor.

This command allows the plug-in to disable the manual trim motor function on a single controller. It will not affect turning the trim wheel by hand, of course.

0. Disable the trim motor. The controller will not run the motor under any provocation.

1. Enable the trim motor (default).

The controller will revert to enabling the motor under any of the following circumstances:

At power-up time. If it times out. Most of our controllers will time out in 30 seconds if they do

not receive any commands from the PC. If it receives an ILLUMINATOR_SIMULATOR_POWER command. If simulator

power is disabled, the motor will be enabled nonetheless, as the user will expect the motor to run when the switches are operated.

4.8.1.8 MODE_SIMULATOR (7)Header Value Values:

08 00 06 00 nn 0. Pause 2. Reset1. Run 3. Reposition

All values are in hexadecimal.

Page 292: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The PC can report the current simulator state to a controller, allowing it to suspend sequences while the simulator is paused without burdening the plug-in. Also receives notice of reset and reposition events.

Note that "Pause" and "Run" are ongoing statuses, while "Reset" and "Reposition" are events. The latter do not affect the former; if a Reset is associated with a Pause in the simulator software, for example, the plug-in would need to send two messages.

4.8.1.9 ILLUMINATOR_G1000_POWER (8)Header Value Values: 0. Off

08 xx 08 00 nn 1. On (default)All values are in hexadecimal.

This command allows the G1000 software to control power to each G1000 panel in conjunction with ILLUMINATOR_POWER and ILLUMINATOR_SIMULATOR_POWER. As usual with such power modes, all must be 'on' for the panel to be on (logical 'and').

The G1000 software will presumably synthesize this mode from a number of inputs determined by specific airplane configurations. ILLUMINATOR_G1000_POWER gives individual G1000 panel power control to the G1000 simulation software without interfering with the normal operation of other power modes.

4.8.1.9.1.1 SelectorSelectors correspond to G1000 selectors used elsewhere.

0. PFD1. MFD2. PFD2

4.8.1.10 MODE_DIGITAL_CONTROL_OPERATED (9)Header Value reserved Switch Values: Control-dependent

08 xx 09 00 nn 00 ss ss Switch: Digital Control indexAll values are in hexadecimal.

This message is part of a system that allows a USB device to read a switch on a different USB device without requiring specific handling code in the plug-in, and without requiring the two panels be directly connected by other means (such as a signal wire). By doing so, a device may handle logic operations on multiple controls that would normally require adding overhead and complexity into the plug-in.

Page 293: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Instead, the device handling the logic ("Handling Device") simply asks for the plug-in to keep it up to date on the status of other devices' specific controls.

During Supported Reports, the Handling Device transmits a message to the PC (see METADATA_REPORT_SUPPORTED Response 4 4.15.1.16.1.4.5) with the following information:

The Device Class is always CLASS_MODE_CONTROL (0x08). The Selector is the selector of the desired switch or button. The Message Index is the index of this message (0x0009). Control is the message index of the desired switch.

The PC will record this information for the duration of run time. From then on, any time another device operates the requested control, the PC will inform the Handling Device by way of this message.

Selector is the reported switch's selector, which must match the requested switch's selector.

Value is the value the switch reported. Switch is the same as Message Index from the Report Supported metadata

command.

The Handling Device will parse the incoming message, check the switch and selector, and use the incoming value as needed.

4.8.1.10.1 ExampleIn a real world example, the GTX Baron Flaps panel requests three digital controls that are located on the Master Panel. We'll focus on the Annunciator Test button. The message is SWITCH_ANN_TEST and its index is 0x007E.

During Full Reports, the Flaps Panel sends the following message to the PC:Response 4: Header Device Class Selector Message Index Control(HWC to PC) FF 0D 08 00 0009 007E

Afterwards, whenever the switch is operated, the PC transmits the following to the Flaps Panel:

Header Value reserved Switch08 00 09 00 nn 00 007E

… where nn is 0x01 (pressed) or 0x00 (released).

When the Flaps Panel receives an Illuminator message it checks for message index 0x0009; if it finds it, it checks the Control field for 0x007E (or either of the other two controls; remember, there are three of them on the actual simulator). It also verifies that the Selector field is zero. Assuming those all match, it then uses the value to

Page 294: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

either turn on all the indicators, or return them to their current operational state. (Or, in the case of the other two controls, process them appropriately.)

4.8.1.11 ILLUMINATOR _COUNTThis is not actually a message but a count of illuminator messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 295: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.9 Actuator Messages

4.9.1 MessagesAll actuator messages are sent from the host PC to the controller.

Header ValueClass (09)

Selector Message Index 16 bits unsignedLSB MSB LSB MSB

All values are in hexadecimal.

4.9.1.1 ACTUATOR_NONE (0)This value is invalid and may not be used in a message.

4.9.1.2 ACTUATOR_PITCH_TRIM_CONTROL (1)Header Value

09 00 01 00 nnnnAll values are in hexadecimal.

Directly controls the electric elevator trim motor.

4.9.1.2.1 Value0. Off. Stop the electric trim from moving.1. Down. Move the trim towards nose down.2. Up. Move the trim towards nose up.

4.9.1.3 ACTUATOR_PITCH_TRIM_SERVO (2)Header Value

09 00 02 00 nnnnAll values are in hexadecimal.

In order to avoid feedback loop delay issues this command allows the PC to specify a target position to the electric pitch trim motor instead of controlling the motor directly.

The value is a 16-bit value whose limits are determined by either the METADATA_ELEVATOR_TRIM_LIMITS response (see 4.15.1.6) or the calibration data returned with a CONTROLS_ELEVATOR_TRIM message (4.1.1.2). If neither of those values is available then the default range is 0 to 1023.

Page 296: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The elevator trim will attempt to move to the requested position and stop. If the requested position is out of range, the elevator trim will move to the appropriate limit and stop.

4.9.1.4 ACTUATOR_HOBBS (3)Header Value Values: 0. Off

1. On09 00 03 00 nn

All values are in hexadecimal.

Allows the Hobbs meter to be turned off and on under program control.

Generally the Hobbs meter will be controlled by ILLUMINATOR_SIM_POWER.

4.9.1.5 ACTUATOR_GEAR_LOCK (4)Header Value Values: 0. Off

1. On09 00 04 00 nn

All values are in hexadecimal.

“On” unlocks the J-hook that holds the gear lever in the down position.

4.9.1.6 ACTUATOR_PITCH (5)Header Value Values: 0xFE02 = Down

0x01FE = Up09 00 05 00 nnnn

All values are in hexadecimal.

Controls the torque for pitch control loading. Signed 16-bit two's-complement number. Actual range established during full report. Default range is -510 to +510 and 0=neutral.

This message was intended for control loading usage and is obsolescent.

4.9.1.7 ACTUATOR_ROLL (6)Header Value Values: 0xFE02 = Left

0x01FE = Right09 00 06 00 nnnn

All values are in hexadecimal.

Controls the torque for roll control loading. Signed 16-bit two's-complement number. Actual range established during full report. Default range is -510 to +510 and 0=neutral.

Page 297: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This message was intended for control loading usage and is obsolescent.

4.9.1.8 ACTUATOR_YAW (7)Header Value Values: 0xFE02 = Left

0x01FE = Right09 00 04 00 nnnn

All values are in hexadecimal.Controls the torque for yaw control loading. Signed 16-bit two's-complement number. Actual range established during full report. Default range is -510 to +510 and 0=neutral.

This message was intended for control loading usage and is obsolescent.

4.9.1.9 ACTUATOR_PFD (8)Header Value Values: 0. Off

1. On09 00 08 00 nn

All values are in hexadecimal.

Controls power to the G1000 PFD on G1000 glass cockpit simulators.

4.9.1.10 ACTUATOR_MFD (9)Header Value Values: 0. Off

1. On09 00 09 00 nn

All values are in hexadecimal.

Controls power to the G1000 MFD on G1000 glass cockpit simulators.

4.9.1.11 ACTUATOR_YAW_TRIM_SERVO (10)Header Value

09 00 0A 00 nnnnAll values are in hexadecimal.

In order to avoid feedback loop delay issues this command allows the PC to specify a target position to the electric yaw trim motor instead of controlling the motor directly.

The value is a 16-bit value whose limits are determined by either the METADATA_TRIM_LIMITS response (see 4.15.1.7) or the calibration data returned with a CONTROLS_RUDDER_TRIM message (4.1.1.4). If neither of those values is available then the default range is 0 to 1023.

Page 298: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The rudder trim will attempt to move to the requested position and stop. If the requested position is out of range, the trim will move to the appropriate limit and stop.

As of this writing this message has never been implemented and is not expected to be implemented. It is included for completeness and against possible future need, however unlikely.

4.9.1.12 ACTUATOR_ROLL_TRIM_SERVO (11)Header Value

09 00 0B 00 nnnnAll values are in hexadecimal.

In order to avoid feedback loop delay issues this command allows the PC to specify a target position to the electric roll trim motor instead of controlling the motor directly.

The value is a 16-bit value whose limits are determined by either the METADATA_TRIM_LIMITS response (see 4.15.1.7) or the calibration data returned with a CONTROLS_ELEVATOR_TRIM message (4.1.1.3). If neither of those values is available then the default range is 0 to 1023.

The aileron trim will attempt to move to the requested position and stop. If the requested position is out of range, the trim will move to the appropriate limit and stop.

As of this writing this message has never been implemented and is not expected to be implemented. It is included for completeness and against possible future need, however unlikely.

4.9.1.13 ACTUATOR_YAW_TRIM_CONTROL (12)Header Value

09 00 0C 00 nnnnAll values are in hexadecimal.

Directly controls the electric rudder trim motor.

4.9.1.13.1 Value0. Off. Stop the electric trim from moving.1. Left. Move the trim towards the left.2. Right. Move the trim towards the right.

Page 299: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

As of this writing this message has never been implemented and is not expected to be implemented. It is included for completeness and against possible future need, however unlikely.

4.9.1.14 ACTUATOR_ROLL_TRIM_CONTROL (13)Header Value

09 00 0D 00 nnnnAll values are in hexadecimal.

Directly controls the electric aileron trim motor.

4.9.1.14.1 Value0. Off. Stop the electric trim from moving.1. Left. Move the trim towards the left.2. Right. Move the trim towards the right.

As of this writing this message has never been implemented and is not expected to be implemented. It is included for completeness and against possible future need, however unlikely.

4.9.1.15 ACTUATOR_CLOCK (14)Header Value Values: 0. Off

09 00 0E 00 nn 1. OnAll values are in hexadecimal.

Controls the console clock.

4.9.1.16 ACTUATOR_STICK_SHAKER (15)Header Value Values: 0. Off

09 00 0F 00 nn 1. OnAll values are in hexadecimal.

Controls a stick shaker.

4.9.1.17 ACTUATOR_COUNTThis is not actually a message but a count of actuator messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 300: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10Circuit Breaker Messages

4.10.1 MessagesCircuit breaker messages are sent in both directions between the host PC and the controller.

Messages from the controller to the host PC describe the current condition of the circuit breaker.

Header Value reserved Bus #Class (0A)

Selector Message Index 8 bits unsigned

24 bits(00 00 00)

Electrical busLSB MSB

All values are in hexadecimal.

Values:0. The breaker is closed and is not tripped (or has been reset since the last trip)

and is allowing current to flow; as a switch it is turned on.1. The breaker has been tripped; as a switch it is turned off. In other words it is

in an open position.

Bus # is reserved for the electrical bus number. This value has not yet been fully defined; for now leave it at zero (0). This is the beginning of an attempt to resolve the fact that while a number of otherwise identical circuit breakers may appear on different airplanes, or in multiple places on the same airplane, they may deal with different electrical busses and have to be handled differently. Rather than create duplicate breakers we are hoping to put enough information in the breaker messages to allow the software to handle each with a single section of code while still allowing maximum versatility. (Note however that our plug-in programmer strongly prefers to create separate breakers.)

In addition the message may contain row and column metadata. This information is intended for telling a user test program how to display the buttons and may be safely discarded anywhere it's not needed, such as the plug-in.

Header Value reserved Bus # Flags Row/ColumnClass (0A)

Selector Message Index 8 bits unsigned

00 00 00 Electrical bus

Bit 1 = Row/Col

row col cluster

LSB MSB

All values are in hexadecimal.

Flags:Bits 7:2 = reserved.Bit 1 = 1 if row/column/cluster data are included.Bit 0 = reserved.

Page 301: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Row is the physical row the breaker is in. Valid rows are 1 to 255. If there is only one row it may be sent as 0.

Col is the physical column the breaker is in. Valid columns are 1 to 255. If there is only one column it may be sent as 0.

Cluster is an index that allows a panel to have multiple sets of row/column clusters. For (a non-circuit-breaker) example, the G1000 Retrofit Panel has both an autopilot cluster on the left and an audio panel cluster on the right. These are physically separate clusters of controls but each may be arranged differently depending on the G1000 panel models being simulated. Valid clusters are 1 to 255. If there is only one cluster is may be sent as 0.

Messages from the host PC to the controller tell it to pop the breaker or (if supported) reset it.

Header ValueClass (0A)

Selector Message Index 8 bits unsignedLSB MSB

All values are in hexadecimal.

Values:0. Clear the breaker.1. Trip the breaker.2. Reset the breaker.

4.10.1.1.1 Clear the BreakerIf the breaker is in “trip” mode, this will clear trip mode and allow the breaker to be manually reset.

4.10.1.1.2 Trip the BreakerThis will apply whatever voltage or force is necessary to trip the circuit breaker.

On some boards this action may have delays and time limits to prevent circuit burn-out, as well as limiting the number of simultaneous circuit breaker trips. Also in general it takes a finite amount of time to trip a breaker; the action is not usually instantaneous. The firmware must be able to queue multiple "trip" messages such that they are all processed eventually. It is not required that they be processed in the order received.

4.10.1.1.3 Reset the BreakerWe included this feature to account for the possibility that someday we might use some kind of electronic breaker that could be reset automatically. All our current breakers can only be reset manually.

Page 302: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

In the case that this is sent to a breaker that does not support automatic resetting, this will be treated as a “Clear the Breaker” command and allow the breaker to be reset manually.

4.10.1.2 CB_NONE (0)This value is invalid and may not be used in messages. If this value is used in a message the message will be ignored.

4.10.1.3 CB_EBUS1 (1)Header Value Cmd Response

0A 0x 01 00 nn 0=clear 0=closed0x = 0 for left, 1 for right 1=trip 1=tripped

All values are in hexadecimal.

Electrical bus 1 failure.

4.10.1.4 CB_EBUS2 (2)Header Value Cmd Response

0A 0x 02 00 nn 0= clear 0=closed0x = 0 for left, 1 for right 1=trip 1=tripped

All values are in hexadecimal.

Electrical bus 2 failure.

4.10.1.5 CB_EBUS3 (3)Not implemented to date.

4.10.1.6 CB_EBUS4 (4)Not implemented to date.

4.10.1.7 CB_ELEC_FLAP_MOTOR (5)Header Value Cmd Response

0A 0x 05 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Flaps motor inoperative.

Page 303: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.8 CB_ELEC_FLAP_CONTROL (6)Header Value Cmd Response

0A 0x 06 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Flaps controls inoperative.

4.10.1.9 CB_ELEC_GEN_CONTROL (7)Not implemented to date.

4.10.1.10 CB_INST_ENG_TORQUE (8)Header Value Cmd Response

0A 0x 08 00 nn 0= clear 0=closed0x = 0 for left, 1 for right 1=trip 1=tripped

All values are in hexadecimal.

Engine torque gauges inoperative.

4.10.1.11 CB_N1 (9)Header Value Cmd Response

0A 0x 09 00 nn 0= clear 0=closed0x = 0 for left, 1 for right 1=trip 1=tripped

All values are in hexadecimal.

4.10.1.12 CB_OIL_P (10)Header Value Cmd Response

0A 0x 09 00 nn 0= clear 0=closed0x = 0 for left, 1 for right 1=trip 1=tripped

All values are in hexadecimal.

Oil pressure gauges inoperative.

4.10.1.13 CB_STALL_WARN (11)Header Value Cmd Response

0A 00 0B 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Stall warning horn inoperative.

Page 304: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.14 CB_TRIM_ELV (12)Header Value Cmd Response

0A 00 0C 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Electric trim inoperative.

4.10.1.15 CB_WARNS_LANDING_GEAR_IND (13)Header Value Cmd Response

0A 00 0D 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Landing gear indicators inoperative.

4.10.1.16 CB_WARNS_LANDING_GEAR_POWER (14)Header Value Cmd Response

0A 00 0E 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Landing gear power inoperative.

4.10.1.17 CB_AUTO_SERVO (15)Not implemented to date.

4.10.1.18 CB_GROUP_B200_24_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to a B200 relay board. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.10.1.19 CB_GROUP_B200_24_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to a B200 relay board. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

Page 305: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.20 CB_PROP_DEICE (16)Header Value Cmd Response

0A 00 10 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Propeller ice removal system inoperative.

4.10.1.21 CB_AVIONICS_MASTER (17)Header Value Cmd Response

0A 00 11 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Avionics power removed.

4.10.1.22 CB_COM_1 (18)Header Value Cmd Response

0A 00 12 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for primary COM radio.

4.10.1.23 CB_GPS_NAV_1 (19)Header Value Cmd Response

0A 00 13 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for primary GPS and NAV radio.

Page 306: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.24 CB_XPNDR (20)Header Value Cmd Response

0A 00 14 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for transponder radio.

4.10.1.25 CB_GPS_NAV_2 (21)Header Value Cmd Response

0A 00 15 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for secondary GPS and NAV radio.

4.10.1.26 CB_COM_2 (22)Header Value Cmd Response

0A 00 16 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for secondary COM radio.

4.10.1.27 CB_AUDIO_PANEL (23)Header Value Cmd Response

0A 00 17 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for audio panel.

Page 307: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.28 CB_AUTO_PILOT (24)Header Value Cmd Response

0A 00 18 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for autopilot.

4.10.1.29 CB_ALT_2 (25)Header Value Cmd Response

0A 00 19 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Right-engine alternator disconnected from power bus.

4.10.1.30 CB_FLAPS_POS_IND (26)Header Value Cmd Response

0A 00 1A 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Flaps position indicator inoperative.

4.10.1.31 CB_FLAPS (27)Header Value Cmd Response

0A 00 1B 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Flaps motor inoperative.

Page 308: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.32 CB_LDG_GEAR (28)Header Value Cmd Response

0A 00 1C 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Landing gear inoperative.

4.10.1.33 CB_LDG_GR_POS_LTS (29)Header Value Cmd Response

0A 00 1D 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Landing gear position lights inoperative.

4.10.1.34 CB_FUEL_PUMP_L (30)Header Value Cmd Response

0A 00 1E 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Left fuel boost pump inoperative.

4.10.1.35 CB_FUEL_PUMP_R (31)Header Value Cmd Response

0A 00 1F 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Right fuel boost pump inoperative.

Page 309: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.36 CB_ANTI_ICE (32)Header Value Cmd Response

0A 00 20 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Anti-ice systems inoperative.

4.10.1.37 CB_MFD_STALL_WARN (33)Header Value Cmd Response

0A 00 21 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Stall warning system inoperative.

4.10.1.38 CB_BATT_1 (34)Header Value Cmd Response

0A 00 22 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Main battery disconnected from the bus.

4.10.1.39 CB_PITOT_HEAT (35)Header Value Cmd Response

0A 00 23 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Pitot heat inoperative.

Page 310: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.40 CB_NAV_LTS (36)Header Value Cmd Response

0A 00 24 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Navigation lights inoperative.

4.10.1.41 CB_TAXI_LTS (37)Header Value Cmd Response

0A 00 25 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Taxi lights inoperative.

4.10.1.42 CB_LDG_LTS (38)Header Value Cmd Response

0A 00 26 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Landing lights inoperative.

4.10.1.43 CB_STROBE_LTS (39)Header Value Cmd Response

0A 00 27 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Strobe lights inoperative.

Page 311: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.44 CB_PANEL_LTS (40)Header Value Cmd Response

0A 00 28 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Panel lights inoperative.

4.10.1.45 CB_LDG_TAXI_LTS (41)Header Value Cmd Response

0A 00 29 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Landing and taxi lights inoperative.

Formerly CB_PROP_DE_ICE, which duplicated CB_PROP_DEICE and has never been implemented.

4.10.1.46 CB_ALT_1 (42)Header Value Cmd Response

0A 00 2A 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Left-engine alternator disconnected from power bus.

4.10.1.47 CB_BATT_2 (43)Header Value Cmd Response

0A 00 2B 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Secondary battery disconnected from the bus.

Page 312: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.48 CB_AUDIO_MARKER (44)Header Value Cmd Response

0A 00 2C 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Marker beacon annunciators inoperative.

4.10.1.49 CB_STBY_HORIZ (45)Header Value Cmd Response

0A 00 2D 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Standby artificial horizon is inoperative.

4.10.1.50 CB_HOUR_METER (46)Header Value Cmd Response

0A 00 2E 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Hobbs meter is inoperative. This has not actually been implemented, as the Hobbs meter is often used to show simulator usage statistics.

4.10.1.51 CB_STBY_BATT (47)Header Value Cmd Response

0A 00 2F 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Standby battery is disconnected from the power bus.

Page 313: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.52 CB_LDG_WARN (48)Header Value Cmd Response

0A 00 30 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Landing gear warning horn inoperative.

4.10.1.53 CB_CLOCK (49)Header Value Cmd Response

0A 00 31 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Clock(s) inoperative.

4.10.1.54 CB_BLANK (50)Unused breaker which has nevertheless been populated. However, since we have absolutely no support for this breaker (not even any indication in the test GUI), and our efforts to keep the circuit breakers divided into neat little groups for range testing is an absolute failure (and turns out not to really be necessary), this breaker is now available for re-use.

4.10.1.55 CB_GROUP_MFD_PANEL_STARTThis is not actually a message but has the same value as the first message in the group of messages that might be sent to an MFD circuit breaker board. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

4.10.1.56 CB_GROUP_MFD_PANEL_ENDThis is not actually a message but has the same value as the last message in the group of messages that might be sent to an MFD circuit breaker board. It is included as a courtesy to programmers to give them known limits for easy range testing without having to depend on knowing the messages’ actual values.

Page 314: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.57 CB_PFD (51)Header Value Cmd Response

0A 00 33 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Disconnects the Primary Flight Display from the main bus.

4.10.1.58 CB_MFD (52)Header Value Cmd Response

0A 00 34 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Disconnects the Multifunction Flight Display from the main bus.

4.10.1.59 CB_LDG_GEAR_RELAY (53)Header Value Cmd Response

0A 00 35 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Landing Gear Relay is inoperative.

4.10.1.60 CB_COM1_NAV1_GPS (54)Header Value Cmd Response

0A 00 36 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for primary GPS, Navigation radio, and Com radio.

Page 315: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.61 CB_COM2_NAV2_GPS (55)Header Value Cmd Response

0A 00 37 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for secondary GPS, Navigation radio, and Com radio.

4.10.1.62 CB_ENG_PROP_SYNC (56)Header Value Cmd Response

0A 00 38 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Prop sync inoperative.

4.10.1.63 CB_ALT_FIELD (57)Duplicate of CB_ALT_1, re-use.

4.10.1.64 CB_WARN_STALL_AP_ELT (58)Header Value Cmd Response

0A 00 3A 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Power not available for Stall Warning, Autopilot Warning, ELT Warning, Main Bus Voltmeter, Hourmeter, Starter Relay, Stdby Battery, and Main Bus Sense (Cessna 172).

4.10.1.65 CB_NAV1 (59)Header Value Cmd Response

0A 00 3B 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Primary navigation radio inoperative.

Page 316: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.66 CB_NAV2 (60)Header Value Cmd Response

0A 00 3C 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Secondary navigation radio inoperative.

4.10.1.67 CB_BEACON_LTS (61)Header Value Cmd Response

0A 00 3D 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Beacon lights inoperative.

4.10.1.68 CB_CABIN_LTS_PWR (62)Header Value Cmd Response

0A 00 3E 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

No power available for the cabin lights and cabin power.

4.10.1.69 CB_BUS_AVN_1 (63)Duplicate of CB_AVIONICS_MASTER, re-use.

4.10.1.70 CB_BUS_AVN_2 (64)Header Value Cmd Response

0A 00 40 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Disconnects the secondary avionics bus from the main bus.

Page 317: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.71 CB_ADC_AHRS_ESS (65)Header Value Cmd Response

0A 00 41 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

The Air Data Computer and the Attitude Heading Reference System are disconnected from the essential bus.

4.10.1.72 CB_PFD_ESS (66)Header Value Cmd Response

0A 00 42 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Disconnects the Primary Flight Display from the essential bus.

4.10.1.73 CB_NAV1_ESS (67)Header Value Cmd Response

0A 00 43 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Disconnects the primary navigation radio from the essential bus.

4.10.1.74 CB_ADC_AHRS (68)Header Value Cmd Response

0A 00 44 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

The Air Data Computer and the Attitude Heading Reference System are disconnected from the avionics bus.

Page 318: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.75 CB_STDBY_IND_LTS (69)Header Value Cmd Response

0A 00 45 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

The Standby Indicator Lights are disconnected from the avionics bus.

4.10.1.76 CB_FIS (70)Header Value Cmd Response

0A 00 46 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

The Flight Information System is disconnected from the avionics bus.

4.10.1.77 CB_ADF (71)Header Value Cmd Response

0A 00 47 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

The Automatic Direction Finder and, if installed, the Distance Measuring Equipment, are disconnected from the avionics bus.

4.10.1.78 CB_GPS (88)Header Value Cmd Response

0A 00 58 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

GPS is disconnected from the avionics bus.

Page 319: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.79 CB_DC_500 (89)Header Value Cmd Response

0A 00 59 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Unknown function for the Bell 206.

4.10.1.80 CB_SAS (90)Header Value Cmd Response

0A 00 5A 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Stability Augmentation System for the Bell 206.

4.10.1.81 CB_INST_LTS (91)Header Value Cmd Response

0A 00 5B 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Instrument lights.

4.10.1.82 CB_COCKPIT_LTS (92)Header Value Cmd Response

0A 00 5C 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Cockpit lights.

4.10.1.83 CB_TOT_IND (93)Header Value Cmd Response

0A 00 5D 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Total Outlet Temperature indicator.

Page 320: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.84 CB_IGN_ENG (94)Header Value Cmd Response

0A 00 5E 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Engine ignition.

4.10.1.85 CB_START_ENG (95)Header Value Cmd Response

0A 00 5F 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Engine starter.

4.10.1.86 CB_ENG_HEAT (96)Header Value Cmd Response

0A 00 60 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Unknown function for the Bell 206.

4.10.1.87 CB_CAUTION_LTS (97)Header Value Cmd Response

0A 00 61 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Annunciator panel.

Page 321: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.88 CB_ICS_PHONES (98)Header Value Cmd Response

0A 00 62 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Inter-Communications Systems (intercom).

4.10.1.89 CB_GEN_FIELD (99)Header Value Cmd Response

0A 00 63 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Generator field winding breaker.

4.10.1.90 CB_GEN_RESET (100)Header Value Cmd Response

0A 00 64 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Overvoltage sensing relay trips the generator reset relay, disconnecting the generator from the circuit, when line voltage reaches 31 volts.

4.10.1.91 CB_NIGHTSCANNER_CONT (101)Header Value Cmd Response

0A 00 65 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Page 322: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.92 CB_NIGHTSCANNER_PWR (102)Header Value Cmd Response

0A 00 66 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.93 CB_STEREO (103)Header Value Cmd Response

0A 00 67 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.94 CB_CEL_TEL (104)Header Value Cmd Response

0A 00 68 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.95 CB_COM2_NAV2 (105)Header Value Cmd Response

0A 00 69 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.96 CB_ADC (106)Header Value Cmd Response

0A 00 6A 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Page 323: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.97 CB_ALT_FIELD (107)Header Value Cmd Response

0A 00 6B 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.98 CB_STALL_HEAT (108)Header Value Cmd Response

0A 00 6C 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.99 CB_PITOT_HEAT_R (109)Header Value Cmd Response

0A 00 6D 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.100 CB_PFD_2 (110)Header Value Cmd Response

0A 00 6E 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.101 CB_ICE_VANE (111)Header Value Cmd Response

0A 00 6F 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.102 CB_ENG_AFM_INST (112)Header Value Cmd Response

0A 00 70 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Page 324: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.103 CB_ENG_GAUGES (113)Header Value Cmd Response

0A 00 71 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.104 CB_ICE_INSP_LIGHTS (114)Header Value Cmd Response

0A 00 72 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.105 CB_AUDIO_2 (115)Header Value Cmd Response

0A 00 73 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.106 CB_ELT (116)Header Value Cmd Response

0A 00 74 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.107 CB_TRIM_RDR (117)Header Value Cmd Response

0A 00 75 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.108 CB_TRIM_AIL (118)Header Value Cmd Response

0A 00 76 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

Page 325: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.109 CB_YAW_DAMP (119)Header Value Cmd Response

0A 00 77 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.110 CB_OVERSPEED_GOV (120)Header Value Cmd Response

0A 00 78 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.111 CB_LOW_FUEL_WARN (121)Header Value Cmd Response

0A 00 79 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.112 CB_AUX_FUEL_PUMP (122)Header Value Cmd Response

0A 00 7A 00 nn 0= clear 0=closed1=trip 1=tripped

All values are in hexadecimal.

4.10.1.113 CB_ALT_ENCODING (123)Header Value Cmd Response

0A 00 7B 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.114 CB_ICS_SPKR (124)Header Value Cmd Response

0A 00 7C 00 nn 0= clear 0=closed1=trip 1=tripped

Page 326: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.115 CB_LDG_LTS_CONT (125)Header Value Cmd Response

0A 00 7D 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.116 CB_FLOATS (126)Header Value Cmd Response

0A 00 7E 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.117 CB_CARGO_HOOK (127)Header Value Cmd Response

0A 00 7F 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.118 CB_HYD_SYSTEM (128)Header Value Cmd Response

0A 00 80 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.119 CB_ENG_IGNITOR (129)Header Value Cmd Response

0A 00 81 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.120 CB_INST_ENG_OIL_PRESS (130)Header Value Cmd Response

0A 00 82 00 nn 0= clear 0=closed1=trip 1=tripped

Page 327: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.121 CB_INST_ENG_OIL_TEMP (131)Header Value Cmd Response

0A 00 83 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.122 CB_INSTR_DAT_V (132)Header Value Cmd Response

0A 00 84 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.123 CB_INSTR_AMPS (133)Header Value Cmd Response

0A 00 85 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.124 CB_IBF (134)Header Value Cmd Response

0A 00 86 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.125 CB_FADEC (135)Header Value Cmd Response

0A 00 87 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.126 CB_PEDAL_STOP (136)Header Value Cmd Response

0A 00 88 00 nn 0= clear 0=closed1=trip 1=tripped

Page 328: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.127 CB_INST_ENG_NG (137)Header Value Cmd Response

0A 00 89 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.128 CB_INST_ENG_NP (138)Header Value Cmd Response

0A 00 8A 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.129 CB_INST_ENG_NR (139)Header Value Cmd Response

0A 00 8B 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.130 CB_FUEL_VALVE (140)Header Value Cmd Response

0A 00 8C 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.131 CB_FUEL_INSTR_QTY (141)Header Value Cmd Response

0A 00 8D 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.132 CB_FUEL_INSTR_PRESS (142)Header Value Cmd Response

0A 00 8E 00 nn 0= clear 0=closed1=trip 1=tripped

Page 329: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.10.1.133 CB_INST_XMSN_OIL_TEMP (143)Header Value Cmd Response

0A 00 8F 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.134 CB_INST_XMSN_OIL_PRESS (144)Header Value Cmd Response

0A 00 90 00 nn 0= clear 0=closed1=trip 1=tripped

4.10.1.135 CB_COUNTThis is not actually a message but a count of circuit breaker messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 330: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.11Analog DisplaysThis is a device such as a gauge that indicates a continuous range of values from 0 to n. Theoretically the range has an infinite set of values, but in reality the output is digital and has a limited resolution. The value is unsigned. Its theoretical limits are 0 to 232-1 (4,294,967,295) but most displays will only use a fraction of that range. The actual range will be specified to the PC via a METADATA_REPORT_SUPPORTED command (4.15.1.16).

Analog display messages consist of 2 fields.

1. The header, described in 3.2.1.4, which includes a device class, selector in case of multiple objects, and a message number. Analog displays have a device class of 11 (0x0B).

2. The actual value of the current setting or position of the control.

The actual value occupies four (4) bytes in little-endian format (LSB first).

4.11.1 Supported ReportsWhen asked for a Full Report, the device will include a message in this format:

Header Device Class Selector Message Index Dig Ctrl DataFF 0D 0B 8 bits 16 bits 16 bits × 1 32 bits x 2

All values are in hexadecimal except bit counts.

Analog displays must use this report to specify their limits. The first unsigned 32-bit field specifies the lowest value, the second specifies the highest value. If no range is specified (if both values are 0) assume 0-1023. The Dig Ctrl field serves two purposes:

1. It's included as a courtesy to programmers, to align the next two fields to 32-bit boundaries; set it to zero if not used otherwise.

2. As of May 2018 it may be used to tie the display to a digital control. How that control affects the display is defined per display. The number is the message index of the digital control. Set this field to zero if no control is to be associated with the display.

4.11.2 MessagesAnalog control messages are sent from the host PC to the hardware controller.

All values are in hexadecimal.

Header ValueClass (0B)

Selector IndexLSB MSB LSB NLSB NMSB MSB

Page 331: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

(Note: “NLSB” stands for “Next Least Significant Byte” and “NMSB” stands for “Next Most Significant Byte”.)

4.11.2.1 ANALOG_DISPLAY_NONE (0)This value is invalid and may not be used to send data.

4.11.2.2 ANALOG_DISPLAY_FLAPS_GAUGE (1)Header Value

0B 00 01 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Displays the current flaps location on a gauge or bar graph display. The value is unsigned. The actual range of the value is established during the full report (field type 3).

4.11.2.3 ANALOG_DISPLAY_VSI (2)Header Value (signed)

0B 00 02 ss LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

This is a readout of the current Vertical Speed of the airplane. The selector determines which of several formats are used for the display:

0. Altitude is in Feet.1. Altitude is in Flight Level (Feet ÷ 100).2. Altitude is in Meters.

The actual range of the value is inherent in the format selected and in the physical limitations of the simulated aircraft. In fact, if a real VSI's range were exceeded it would simply peg the needle. Any display presented with an out-of-range value should rail the display at its maximum or minimum value. Since Vertical Speed may be positive or negative, this is a signed two's-complement value.

Generally an instrument will be able to display only one format at a time. Even an electronic instrument capable of different formats will have one set at installation time that may not change for the lifetime of the device. At Full Report time this device should report only the selector that corresponds to its current setting, if configurable. If not configurable it should report the selector that corresponds to its format.

Page 332: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.11.2.4 ANALOG_DISPLAY_AUD_VOL_GAUGE (3)Header Value (signed)

0B 00 03 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Displays the current Audio volume on a gauge or bar graph display. The value is unsigned. The actual range of the value is established during the full report (field type 3).

This is the current audio volume setting controlled by a volume knob, and is not a live equalizer-style volume indicator.

4.11.2.5 ANALOG_DISPLAY_GYRO_SUCTN_GAUGE (4)Header Value (signed)

0B 00 04 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Gyro suction in inHg.

Found in Kingair cockpits.

4.11.2.6 ANALOG_DISPLAY_PNEUMTC_PRESS_GAUGE (5)Header Value (signed)

0B 00 05 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Pneumatic pressure in PSI.

Found in Kingair cockpits.

4.11.2.7 ANALOG_DISPLAY_CABIN_AIR_TEMP_GAUGE (6)Header Value (signed)

0B 00 06 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Cabin air temperature in °F.

Found in Kingair cockpits.

Page 333: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.11.2.8 ANALOG_DISPLAY_OXY_PRESS_GAUGE (7)Header Value (signed)

0B 00 07 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Oxygen supply pressure in PSI.

Found in Kingair cockpits.

4.11.2.9 ANALOG_DISPLAY_GEN_VOLT_GAUGE (8)Header Value (signed)

0B 0s 08 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Generator output in Volts. The Selector is used to choose which generator is being monitored:

0. Left generator.1. Right generator.

Found in Kingair cockpits.

4.11.2.10 ANALOG_DISPLAY_GEN_LOAD_GAUGE (9)Header Value (signed)

0B 0s 09 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Generator load in percent. The Selector is used to choose which generator is being monitored:

0. Left generator.1. Right generator.

Found in Kingair cockpits.

4.11.2.11 ANALOG_DISPLAY_BATT_VOLT_GAUGE (10)Header Value (signed)

0B 00 0A 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Battery output in Volts.

Page 334: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Found in Kingair cockpits.

4.11.2.12 ANALOG_DISPLAY_BATT_AMP_GAUGE (11)Header Value (signed)

0B 00 0B 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Battery load in Amperes.

Found in Kingair cockpits.

4.11.2.13 ANALOG_DISPLAY_TPL_FED_VOLTS_GAUGE (12)Header Value (signed)

0B 00 0C 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Triple-fed electrical bus output in Volts.

Found in Kingair cockpits.

4.11.2.14 ANALOG_DISPLAY_EXT_VOLTS_GAUGE (13)Header Value (signed)

0B 00 0D 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

External electrical feed in Volts.

Found in Kingair cockpits.

4.11.2.15 ANALOG_DISPLAY_PROP_AMPS_GAUGE (14)Header Value (signed)

0B 00 0E 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Prop load in Amperes.

Page 335: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Found in Kingair cockpits.

4.11.2.16 ANALOG_DISPLAY_FUEL_GAUGE (15)Header Value (signed)

0B 0s 0F 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Available fuel quantity in pounds x 100. The Selector is used to choose which generator is being monitored:

0. Left generator.1. Right generator.

Found in Kingair cockpits.

4.11.2.17 ANALOG_DISPLAY_FLAPS_GAUGE (16)Header Value (signed)

0B 00 10 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Flaps in degrees of angle.

Found in Kingair cockpits.

4.11.2.18 ANALOG_DISPLAY_CABIN_CLIMB_GAUGE (17)Header Value (signed)

0B 00 11 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Cabin climb rate in ft/min.

Found in Kingair cockpits.

4.11.2.19 ANALOG_DISPLAY_CABIN_ALT_GAUGE (18)Header Value (signed)

0B 00 12 00 LSB NLSB NMSB MSBAll values are in hexadecimal unless otherwise specified.

Page 336: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Cabin altitude in feet x 1000.

Found in Kingair cockpits.

4.11.2.20 ANALOG_DISPLAY_COUNTThis is not actually a message but a count of analog display messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 337: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.12Digital Displays

4.12.1 Messages

Header Decimal point + sign 10 Packed BCD digits(most significant first)Class

(0C)Selector Index decimal sign ½ digit

LSB MSB 5 bits 1 bit 2 bits 10,9 8,7 6,5 3,2 1,0All values are in hexadecimal.

4.12.1.1 DIGITAL_DISPLAY_NONE (0)This value is invalid and may not be used to send data.

4.12.1.2 DIGITAL_DISPLAY_COM1_LEFT (1)Header DP only 5 Packed BCD digits

0C 00 01 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the active COM1 radio frequency.

4.12.1.3 DIGITAL_DISPLAY_COM1_RIGHT (2)Header DP only 5 Packed BCD digits

0C 00 02 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the standby COM1 radio frequency.

4.12.1.4 DIGITAL_DISPLAY_COM2_LEFT (3)Header DP only 5 Packed BCD digits

0C 00 03 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the active COM2 radio frequency.

Page 338: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.12.1.5 DIGITAL_DISPLAY_COM2_RIGHT (4)Header DP only 5 Packed BCD digits

0C 00 04 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the standby COM2 radio frequency.

4.12.1.6 DIGITAL_DISPLAY_NAV1_LEFT (5)Header DP only 5 Packed BCD digits

0C 00 05 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the active NAV1 radio frequency.

4.12.1.7 DIGITAL_DISPLAY_NAV1_RIGHT (6)Header DP only 5 Packed BCD digits

0C 00 06 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the standby NAV1 radio frequency.

4.12.1.8 DIGITAL_DISPLAY_NAV2_LEFT (7)Header DP only 5 Packed BCD digits

0C 00 07 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the active NAV2 radio frequency.

4.12.1.9 DIGITAL_DISPLAY_NAV2_RIGHT (8)Header DP only 5 Packed BCD digits

0C 00 08 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the standby NAV2 radio frequency.

Page 339: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.12.1.10 DIGITAL_DISPLAY_DME_LEFT (9)Header DP only 3 Packed BCD digits

0C 00 09 00 ppppp000 FF FF FF Fd ddppppp=0 to 3 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the active DME radio frequency.

4.12.1.11 DIGITAL_DISPLAY_DME_RIGHT (10)Header DP only 5 Packed BCD digits

0C 00 0A 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the standby DME radio frequency.

4.12.1.12 DIGITAL_DISPLAY_ADF_LEFT (11)Header DP only 4 Packed BCD digits

0C 00 0B 00 ppppp000 FF FF FF dd ddppppp=0 to 4 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the active ADF radio frequency.

4.12.1.13 DIGITAL_DISPLAY_ADF_RIGHT (12)Header DP only 5 Packed BCD digits

0C 00 0C 00 ppppp000 FF FF Fd dd ddppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bits

All values are in hexadecimal unless otherwise specified.

Displays the standby ADF radio frequency.

4.12.1.14 DIGITAL_DISPLAY_TRANSPONDER (13)Header 4 Packed BCD digits

0C 00 0D 00 00 FF FF FF dd DdSelector is always 0

All values are in hexadecimal.

Page 340: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Header 1 Packed BCD digit0C 0x 0D 00 00 FF FF FF FF Fd

Selector specifies digit 1, 2, 3, or 4 (x=1 to 4)All values are in hexadecimal.

Displays the Transponder ident.

If the selector is 0, the message contains all four digits as a single number.

If the selector is 1 – 4, the message contains a single digit corresponding to the selector, where 1 is the leftmost digit and 4 is the rightmost digit.

4.12.1.15 DIGITAL_DISPLAY_ALTITUDE orDIGITAL_DISPLAY_ALT_VS_COMBO (14)

Header DP only 5 Packed BCD digits0C 00 0E 00 ppppp000 FF FF Fd dd dd

ppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bitsAll values are in hexadecimal unless otherwise specified.

Most of our Altitude Pre-Select displays are actually combination displays that toggle between Altitude and Vertical Speed settings. (Note that these are the settings and not readouts of the actual airplane altitude or altitude trend.) This display is used for both; the user uses SWITCH_ALT_PRESELECT_ALT_VS to change functions (4.2.1.116).

This message was previously called DIGITAL_DISPLAY_ALTITUDE. It has been renamed to reflect its dual nature. Both labels are being maintained for backwards compatibility at this time.

4.12.1.16 DIGITAL_DISPLAY_ADF_LEFT_5 (15)Header DP only 5 Packed BCD digits

0C 00 0F 00 ppppp000

FF FF Fd dd dd

ppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bitsAll values are in hexadecimal unless otherwise specified.

Displays the active ADF radio frequency.

The new ADF hardware supports a 5-digit left display and all decimal places.

The host will know that the hardware supports 5 digits when the Avionics master sends a supported report message with this command. (See 4.15.1.16.)

Page 341: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.12.1.17 DIGITAL_DISPLAY_ALT (16)Header DP only 5 Packed BCD digits

0C 00 10 00 ppppp000

FF FF Fd dd dd

ppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bitsAll values are in hexadecimal unless otherwise specified.

This is used to display the current Altitude Pre-Select setting. This is the same as displaying Altitude on a DIGITAL_DISPLAY_ALT_VS_COMBO, except that this is a single-mode display that will never display Vertical Speed. (Note that this is the setting, not a readout of the actual airplane altitude.)

4.12.1.18 DIGITAL_DISPLAY_VS (17)Header DP only 5 Packed BCD digits

0C 00 11 00 ppppp000

FF FF Fd dd dd

ppppp=0 to 5 Sign=0 ½digit=0 DP column shown as bitsAll values are in hexadecimal unless otherwise specified.

This is used to display the current Vertical Speed setting. This is the same as displaying Vertical Speed on a DIGITAL_DISPLAY_ALT_VS_COMBO, except that this is a single-mode display that will never display Altitude. (Note that this is the setting, not a readout of the actual altitude trend.)

4.12.1.19 DIGITAL_DISPLAY_PRESS_ALT (18)Header DP only 5x2 Packed BCD digits

0C 00 12 00 ppppp000

mm mm md dd dd

ppppp=0 Sign=0 ½digit=0 DP column shown as bitsAll values are in hexadecimal unless otherwise specified.

This is a readout of the current Pressure Altitude of the airplane. The altitude is sent simultaneously in two different formats:

Digits 1-5 (the leftmost 5 digits) are the altitude in meters. Digits 6-10 (the rightmost 5 digits) are the altitude in feet.

Since the instrument does not display fractions, no decimal point is required. If Flight Level is required, the instrument can simply discard the last two digits of the altitude in feet.

Page 342: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.12.1.20 DIGITAL_DISPLAY_FLIGHT_TIME (19)Header DP only 6 Packed BCD digits

0C 00 13 00 ppppp000

FF FF dd dd dd

ppppp=0 Sign=0 ½digit=0 DP column shown as bitsAll values are in hexadecimal unless otherwise specified.

This displays the flight time in HH:MM:SS format.

4.12.1.21 DIGITAL_DISPLAY_COUNTThis is not actually a message but a count of digital display messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 343: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.13Alphanumeric Input MessagesNote that "alphameric" is a widely recognized abbreviation for "alphanumeric". We are using it in the label names and other places for the sake of brevity.

4.13.1 Messages

4.13.1.1 ALPHAMERIC_INPUT_NONE (0)This value is invalid and may not be used to send data.

4.13.1.2 ALPHAMERIC_INPUT_COM1 (1)Header Sel/Enc Base/Func res Active Standby

0E 00 01 00 00 9f 0 0a 0a 1a 0a 0a 0s 0s 1s 0s 0sAll values are in hexadecimal.

Transmits the current active and standby values of a COM1 radio.

4.13.1.2.1 Panel Selector (Sel)There is only ever one COM1. COM1 uses a panel selector of 0.

4.13.1.2.2 Encoding (Enc)COM1 uses Format 0.

4.13.1.2.3 BaseThe COM1 radio uses base 10.

4.13.1.2.4 Function (Func)0. Transfer. This is transmitted when the user hits the Transfer button (a.k.a.

Flip-Flop, Arrow Key, ↔) to transfer the Standby value to the Active field and vice-versa.

1. Standby. This is transmitted any time the user changes the value in the Standby field during a normal edit. Its purpose is to allow the PC to capture and retain the current Standby field value.

4.13.1.2.5 Reserved (res)Set to 0.

4.13.1.2.6 Active, StandbyCOM1 only supports unsigned (positive) values and the decimal place is always after the third digit.

Page 344: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.13.1.3 ALPHAMERIC_INPUT_COM2 (2)Header Sel/Enc Base/Func res Active Standby

0E 00 02 00 00 9f 0 0a 0a 1a 0a 0a 0s 0s 1s 0s 0sAll values are in hexadecimal.

Transmits the current active and standby values of a COM2 radio.

4.13.1.3.1 Panel Selector (Sel)There is only ever one COM2. COM2 uses a panel selector of 0.

4.13.1.3.2 Encoding (Enc)COM2 uses Format 0.

4.13.1.3.3 BaseThe COM2 radio uses base 10.

4.13.1.3.4 Function (Func)0. Transfer. This is transmitted when the user hits the Transfer button (a.k.a.

Flip-Flop, Arrow Key, ↔) to transfer the Standby value to the Active field and vice-versa.

1. Standby. This is transmitted any time the user changes the value in the Standby field during a normal edit. Its purpose is to allow the PC to capture and retain the current Standby field value.

4.13.1.3.5 Reserved (res)Set to 0.

4.13.1.3.6 Active, StandbyCOM2 only supports unsigned (positive) values and the decimal place is always after the third digit.

4.13.1.4 ALPHAMERIC_INPUT_NAV1 (3)Header Sel/Enc Base/Func res Active Standby

0E 00 03 00 00 9f 0 0a 0a 1a 0a 0a 0s 0s 1s 0s 0sAll values are in hexadecimal.

Transmits the current active and standby values of a NAV1 radio.

4.13.1.4.1 Panel Selector (Sel)There is only ever one NAV1. NAV1 uses a panel selector of 0.

4.13.1.4.2 Encoding (Enc)NAV1 uses Format 0.

Page 345: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.13.1.4.3 BaseThe NAV1 radio uses base 10.

4.13.1.4.4 Function (Func)0. Transfer. This is transmitted when the user hits the Transfer button (a.k.a.

Flip-Flop, Arrow Key, ↔) to transfer the Standby value to the Active field and vice-versa.

1. Standby. This is transmitted any time the user changes the value in the Standby field during a normal edit. Its purpose is to allow the PC to capture and retain the current Standby field value.

4.13.1.4.5 Reserved (res)Set to 0.

4.13.1.4.6 Active, StandbyNAV1 only supports unsigned (positive) values and the decimal place is always after the third digit.

4.13.1.5 ALPHAMERIC_INPUT_NAV2 (4)Header Sel/Enc Base/Func res Active Standby

0E 00 04 00 00 9f 0 0a 0a 1a 0a 0a 0s 0s 1s 0s 0sAll values are in hexadecimal.

Transmits the current active and standby values of a NAV2 radio.

4.13.1.5.1 Panel Selector (Sel)There is only ever one NAV2. NAV2 uses a panel selector of 0.

4.13.1.5.2 Encoding (Enc)NAV2 uses Format 0.

4.13.1.5.3 BaseThe NAV2 radio uses base 10.

4.13.1.5.4 Function (Func)0. Transfer. This is transmitted when the user hits the Transfer button (a.k.a.

Flip-Flop, Arrow Key, ↔) to transfer the Standby value to the Active field and vice-versa.

1. Standby. This is transmitted any time the user changes the value in the Standby field during a normal edit. Its purpose is to allow the PC to capture and retain the current Standby field value.

4.13.1.5.5 Reserved (res)

Page 346: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Set to 0.

4.13.1.5.6 Active, StandbyNAV2 only supports unsigned (positive) values and the decimal place is always after the third digit.

4.13.1.6 ALPHAMERIC_INPUT_TRANSPONDER (5)Header Sel/Enc Base/Func res/Count Active

0E 00 05 00 01 70 04 0a 0a 0a 0aAll values are in hexadecimal.

Transmits the current active value of a Transponder.

4.13.1.6.1 Panel Selector (Sel)There is only ever one Transponder. The Transponder uses a panel selector of 0.

4.13.1.6.2 Encoding (Enc)The Transponder uses Format 1.

4.13.1.6.3 BaseThe NAV2 radio uses base 8.

4.13.1.6.4 Function (Func)0. Execute. This is transmitted when the user finalizes the Transponder value.

4.13.1.6.5 Reserved (res)Set to 0.

4.13.1.6.6 Digit Count (Count)The Transponder supports four octal digits.

4.13.1.6.7 ActiveThe Transponder only supports unsigned (positive) values and there is no decimal place.

4.13.1.7 ALPHAMERIC_INPUT_COUNTThis is not actually a message but a count of alphanumeric input messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 347: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.14Calibration MessagesCalibration is an offline procedure and is not expected to be performed during normal operation. We expect that the user will run a special program to handle this.

Because there are several different simulators with different types of controls, not all the same controls will need calibration. In addition, there are several different kinds of calibration. Rather than have the PC program know how each simulator is configured, the simulator will tell the PC what relevant options it has.

Once the PC knows what needs to be calibrated, it can prompt the user and direct the HWC to capture calibration data.

This is complex enough and the interaction between the commands is confusing enough that we will describe it procedurally as well as describing the commands in order.

Please note that even while in calibration mode, a hardware controller (HWC) may continue to operate normally, sending input readings and responding to directives from the PC as it always does. It is up to the PC to ignore irrelevant messages.

All calibration messages follow the format specified in General Message Format (3.2.1.4).

Page 348: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.14.1 Message IndexLabel Value

CALIBRATE_NONE 0x00CALIBRATE_REPORT_LIST 0x01

CALIBRATE_MODE 0x02CALIBRATE_BAD 0x03

CALIBRATE_RESPONSE 0x04CALIBRATE_EQUIPMENT_PRESENT 0x05

CALIBRATE_TQ_IS_JOYSTICK 0x06CALIBRATE_AILERON_TRIM_PRESENT 0x07CALIBRATE_COWL_FLAPS_PRESENT 0x08

CALIBRATE_LEGACY_NON_CARB_HEAT 0x09CALIBRATE_MFD_OPTIONS 0x0A

CALIBRATE_RIC_TWO_PILOTS 0x0BCALIBRATE_TWO_PILOTS 0x0C

CALIBRATE_JOYSTICK_REPORTS 0x0DCALIBRATE_FLAPS_INVERTED 0x0E

CALIBRATE_FUEL_SWITCH_4WAY 0x0FCALIBRATE_SET_SELECTOR 0x10

CALIBRATE_YOKE_DISABLED 0x11CALIBRATE_FACTORY_DEFAULTS 0x12

CALIBRATE_ELEV_TRIM 0x32CALIBRATE_AILERON_TRIM 0x33CALIBRATE_RUDDER_TRIM 0x34

CALIBRATE_BREAKERS 0x35CALIBRATE_COWL_FLAPS 0x36

CALIBRATE_TILLER 0x37CALIBRATE_AP_ROLL 0x38

CALIBRATE_CABIN_ALT 0x39CALIBRATE_TURBO_THROTTLE 0x3A

CALIBRATE_RUDDER 0x3BCALIBRATE_TOE_BRAKES 0x3C

CALIBRATE_THROTTLE 0x3DCALIBRATE_PROP_PITCH 0x3E

CALIBRATE_MIX 0x3FCALIBRATE_THROTTLE_QUADRANT 0x40

CALIBRATE_AILERONS 0x41CALIBRATE_ELEVATORS 0x42

CALIBRATE_BACKLIGHT_SCALING 0x43CALIBRATE_FLAPS 0x44All values are in hexadecimal.

Page 349: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.14.1.1 CALIBRATE_NONE (0)This is an invalid message. CALIBRATE_NONE is a placeholder; 0x0000 should never be used.

4.14.1.2 CALIBRATE_REPORT_LIST (1)The PC sends this command to the HWC to get a list of items that need to be calibrated. The HWC responds by sending one CALIBRATE_input message for each item that qualifies, followed by a CALIBRATE_REPORT_LIST message after the last one. If the device has no items that require calibration it will send only the CALIBRATE_REPORT_LIST message.

Message IndexCalibration List (request) (0x0001)Zero or more calibration list response messages (4.14.1.24)Calibration List (response) (0x0001)

All values are in hexadecimal except document cross-references.

If the HWC has no items to calibrate, it is not required to respond to any calibration messages.

4.14.1.3 CALIBRATE_MODE (2)This message is followed by a single byte that selects its mode:

0. Take out of calibration mode. The HWC will do whatever it needs to clean up and return to normal operation, and then respond with the same message.

1. The PC sends this to put the HWC into a calibration mode. The HWC will do whatever it needs to enable such a state, and then respond with the same message.

If the HWC does not support calibration it will return 255 (0xFF) instead of 1. If the HWC cannot go into calibration mode at this time, but otherwise supports calibration, it will respond with a 0.

The HWC also has a third response to this message:255. Response only: calibration not supported. The HWC may respond with this

message to show that it will not go into calibration mode.

Message Index Request/ ResponseCalibrate Mode (request) (0x0002) Exit Calibrate Mode (0x00)Calibrate Mode (response) (0x0002) Exit Calibrate Mode (0x00)

Message Index Request/ ResponseCalibrate Mode (request) (0x0002) Enter Calibrate Mode (0x01)

Calibrate Mode (response) (0x0002)Cannot Enter (0x00)Entered Calibrate Mode (0x01)Calibrate Not Supported (0xFF)

Page 350: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

All values are in hexadecimal.

4.14.1.4 CALIBRATE_BAD (3)This message is only sent from the HWC to the PC if the HWC could not verify the calibration data stored in ROM. It is sent during a Full Report and is intended to be used to tell the user that he should run calibration on his simulator.

Message IndexCalibration Bad (response) (0x0003)

All values are in hexadecimal.

4.14.1.5 CALIBRATE_RESPONSE (4)The HWC sends this in response to CALIBRATE_input messages (4.14.1.6).

Message Index Error Class Error Flash Report

Calibrate (response) (0x0004)

Error (0x00)

Unknown/Undefined (0x01) 00Calibration not supported (0x02) 00Value out of range (0x03) 00Point out of range (0x04) 00Finalize failed (0x05)1 See 4.14.1.5.21

Command out of sequence (0x06)

00

Not all points captured (0x07) 00Not in calibration mode (0x08) 00Success (0x10)2 00Selected calibration block out of range (0x11)

00

Program block too large (0x12) 00Flash programming failed on erase (0x13)

00

Flash programming failed on write (0x14)

00

Flash programming failed on verify (0x15)

00

(0x0004) Success (0x01) Success (0x00) 00All values are in hexadecimal except document cross-references.

1 Finalize Failed and the flash report are obsolescent.2 Included for backwards compatibility.

4.14.1.5.1 Error Class: ErrorThe HWC was unable to complete the request. Byte 5 tells why, and byte 6 adds more information in some cases.

Page 351: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.14.1.5.2 Flash Report0. Success, no error1. Selected calibration block out of range2. Program block too large3. Flash programming failed on erase4. Flash programming failed on write5. Flash programming failed on verify

Finalize Failed and the flash report are obsolescent and are being phased out.

4.14.1.6 CALIBRATE_EQUIPMENT_PRESENT (5)Message Index Value / Command Values: 0. Never

Rudder Pedals Present (0x0005)

Value (nn) 1. AlwaysFinalize calibration (0xFF) 2. AutoAll values are in hexadecimal.

If supported, the simulator can bypass its automatic rudder detection and force it always present (1. Always) or always absent (0. Never). The default condition is automatic (2. Auto).

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value.

4.14.1.7 CALIBRATE_TQ_IS_JOYSTICK (6)Message Index Value / Command Values: 0. PFC HID

TQ is Joystick (0x0006)

Value (nn) 1. JoystickFinalize calibration (0xFF)

All values are in hexadecimal.

If supported, the simulator can switch its throttle quadrant reports between joystick and PFC HID reports. The default is to use PFC HID reports.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message.

Page 352: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

It will respond to a Finalize command (0xFF) with success even though it has already stored the value.

It can be repurposed at run time via text override.

4.14.1.8 CALIBRATE_AILERON_TRIM_PRESENT (7)Message Index Value / Command Values: 0. Absent

Aileron Trim Present (0x0007)

Value (nn) 1. PresentFinalize calibration (0xFF)

All values are in hexadecimal.

This controller can disable its aileron trim. This is intended to allow a model-specific simulator to emulate model variations. If disabled, the controller will not report the presence of an aileron trim or its current position, even if the hardware is physically present.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.9 CALIBRATE_COWL_FLAPS_PRESENT (8)Message Index Value / Command Values: 0. Absent

Cowl Flaps Control Present (0x0008)

Value (nn) 1. PresentFinalize calibration (0xFF)All values are in hexadecimal.

This controller can disable its cowl flaps control. This is intended to allow a model-specific simulator to emulate model variations. If disabled, the controller will not report the presence of a cowl flaps control or its current position, even if the hardware is present.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message.

Page 353: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

It will respond to a Finalize command (0xFF) with success even though it has already stored the value.

It can be repurposed at run time via text override.

4.14.1.10 CALIBRATE_LEGACY_NON_CARB_HEAT (9)Message Index Value / Command Values: 0. Current

Legacy C2Pro (0x0009)

Value (nn) 1. LegacyFinalize calibration (0xFF)All values are in hexadecimal.

The C2Pro went through some design changes in mid-2010 that added two Carb Heat switches and inverted the Cowl Flaps switches. Starting version 4.2 (late August 2010) the C2Pro firmware supports either configuration by way of the CALIBRATE_LEGACY_NON_CARB_HEAT command.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.11 CALIBRATE_MFD_OPTIONS (10)Message Index Value / Command Values: 0. All Harness

MFD Options (0x000A)

Value (nn) 1. New Master PanelFinalize calibration (0xFF) 2. Carb Heat Switches

3. Console OnlyAll values are in hexadecimal.

The MFD platform has undergone a number of changes between 2008 and 2010. This command allows us to support all the variants with a single version of the firmware.

0. All HarnessThis is either an early USB MFD or a serial conversion. All MFD controls are connected through the wiring harness. Specifically, the Master Control panel (a.k.a. Engine Start panel) is wired into the harness. Marker beacon lights and the legacy electric trim may also be driven by this version.

1. New Master PanelOne step above the “All Harness” option, this has a removable Master Control

Page 354: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

panel, Turboprop Master or Jet Master panel that is connected via USB. The Battery Master and Avionics Master switches are still wired into the main harness via connectors or via the relay board. It disables all the Master Control panel switches in the hardware controller firmware.This version also supports the Sim buttons (Freeze, Pause, Reset) and TO/GA button. Technically these were introduced with the Carb Heat switches but it does no harm to support them earlier (momentary buttons are not problematical the way switches are).

2. Carb Heat SwitchesThis version is the same as the New Master Panel version except that it adds left and right Carb Heat switches.

3. Console OnlyAs of September 2010 the MFD center console has its own internal wiring and does not electrically connect to the rest of the simulator except for the yoke switches (due to need for direct control of the electric trim). With that exception, this option therefore strips out all the controls not mounted on the console. It also moves the Fuel Select switches from direct input to an optional slave panel. This version will also no longer drive marker beacon lights, nor support the legacy trim. Instead it drives a relay output from the Avionics Master signal to turn on a GNS 430/530 or other hard-wired avionics device.

Page 355: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Control Harness New Master Carb Heat ConsoleRudder Trim Yes Yes Yes YesAileron Trim Yes Yes Yes YesElevator Trim Yes Yes Yes YesCowl Flaps Yes Yes Yes YesFuel Select Yes Yes Yes MovedBattery Masters Yes No No NoAvionics Master Yes No No NoMagnetos Yes No No NoProp Sync Yes No No NoAileron Yes Yes Yes NoElevator Yes Yes Yes NoFlaps Yes Yes Yes NoFuel Pump Yes Yes Yes NoLanding Gear Yes Yes Yes NoAlternate Air Yes Yes Yes NoPitot Heat Yes Yes Yes NoParking Brake Yes Yes Yes NoLanding Gear Horn Cutout Yes Yes Yes NoTaxi, Landing, Nav, Strobe light switches Yes Yes Yes NoProp De-ice Yes Yes Yes NoMarker Beacon lights Yes Yes Yes NoSim Buttons No Yes Yes NoTO/GA No Yes Yes YesCarb Heat No No Yes YesGNS 430/530 Avionics Master output No No No Yes

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.12 CALIBRATE_RIC_TWO_PILOTS (11)Message Index Value / Command Values: 0. One Pilot

RIC Two Pilots (0x000B)

Value (nn) 1. Two PilotsFinalize calibration (0xFF)All values are in hexadecimal.

Until mid-2010 we did not have proper two-pilot airplane models created for the MFD. To compensate we had to write the firmware to send identical messages for the pilot and copilot RICs. Since then we have separated the functions, and now the copilot RIC sends copilot controls. In order to support customers with older systems

Page 356: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

that may not have updated their airplane models we supply a configuration option that allows the customer to set the firmware to transmit either all-pilot controls or separate pilot/copilot controls.

Note that this does not apply to the stand-alone RIC-8, but only to a RIC-6 plugged into the hardware controller.

0. Pilot only. Copilot RIC sends pilot RIC commands.1. Pilot/copilot. Copilot RIC sends copilot RIC commands.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.13 CALIBRATE_TWO_PILOTS (12)Message Index Value / Command Values: 0. Pilot controls only

Two Pilots (0x000C)

Value (nn) 1. Pilot and copilot controlsFinalize calibration (0xFF)

All values are in hexadecimal.

Configures a general-purpose input device that is capable of one- or two-pilot control. For example, the rudder pedal firmware supports one set of toe brakes for e.g. a desktop Cessna or two sets of toe brakes for a full-sized MFD. When configured as a pilot-only device it will not send status messages, supported report messages, calibration support messages, etc. for the copilot controls.

0. Only pilot controls are connected. Do not process copilot control inputs or admit they exist.

1. Both pilot and copilot controls are connected. Read, process, and transmit both pilot and copilot controls.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value.

Page 357: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

It can be repurposed at run time via text override.

Note: This duplicates the functionality of CALIBRATE_RIC_TWO_PILOTS except for the name. Unfortunately I was not forward-looking enough when I created CALIBRATE_RIC_TWO_PILOTS to use a more general name.

4.14.1.14 CALIBRATE_JOYSTICK_REPORTS (13)Message Index Value / Command Values: 0. PFC HID

Joystick Reports (0x000D)

Value (nn) 1. JoystickFinalize calibration (0xFF)All values are in hexadecimal.

If supported, the simulator can switch its reports between joystick and PFC HID reports. The default is to use joystick reports.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.15 CALIBRATE_FLAPS_INVERTED (14)Message Index Value / Command Values: 0. Normal (pre-2011)

Cessna flaps are inverted (0x000E)

Value (nn) 1. Inverted (2011+)Finalize calibration (0xFF)

All values are in hexadecimal.

Due to mechanical clearance issues in early 2011 the decision was made to move the Cessna flaps switch mechanism to the other side of the lever, effectively turning the switch upside-down. Because the electronics are not symmetrical we were unable to simply reverse the connector polarity. CALIBRATE_FLAPS_INVERTED allows us to inform the firmware which way the switch was built, but be able to reverse that should the code be used in legacy hardware.

0 means the switch is not inverted (legacy). In legacy systems the bit in the calibration data will have been left at 0 by design; therefore upgrading to this version of the firmware should not change the operation of the switch.

1 is the default value; any new systems will power up with the switch inverted. If not, the techs can easily set it properly.

Page 358: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.16 CALIBRATE_FUEL_SWITCH_4WAY (15)Message Index Value / Command Values: 0. 3-way switch with

Cessna fuel switch type (0x000F)

Value (nn) separate cut-offFinalize calibration (0xFF) 1. 4-way switch

All values are in hexadecimal.

In early 2011 the mini-console was changed to use a single 4-way switch, where older versions use a 3-way switch with a separate fuel cut-off switch.

0 means the switch is 3-way with a separate cut-off (legacy). In legacy systems the bit in the calibration data will have been left at 0 by design; therefore upgrading to this version of the firmware should not change the operation of the switch.

1 is the default value; any new systems will power up assuming a 4-way switch. If not, the techs can easily set it properly.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.17 CALIBRATE_SET_SELECTOR (16)Message Index Value / Command Value (byte 4): Count (byte 7):Set Selector (0x0010)

Value (nn) Cmd: 0 to (ss-1)Finalize calibration (0xFF) Rsp: current selector # of selectors (ss)

All values are in hexadecimal.

Page 359: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

There may be multiples of some devices in an airplane, such as GPSes or RICs, of which there are often two and where each needs to be tied to a specific radio or specific pilot or other specific function. There needs to be some way to preset which is the primary, which is secondary, etc. This command gives us a simple way to do that without requiring the installer to disassemble the unit to set jumpers and without requiring us to add hardware. The device will send all subsequent messages using this selector, for those messages that include a selector. The default selector is 0.

During a calibration report this message response will include: The current selector in byte 4 (typical for this type of message). The selector count in byte 7. The value will be the number of selectors (1-

based), not the highest selector number. The highest selector number will be this number minus 1 (0-based).

Bytes 8 and 9 are reserved for a selector bit mask, though no device uses it at this time. If byte 7 is zero, bytes 8 and 9 will provide the selectors in a bit mask as described elsewhere (4.14.1.24.6).

If bytes 7, 8 and 9 are all zero then the selector count will be assumed to be 2 (selectors 0 and 1).

Due to limitations of the calibration protocol the value can only be 0 to 254.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.18 CALIBRATE_YOKE_DISABLED (17)Message Index Value / Command Values: 0. Normal yoke

Disable Yoke (0x0011)

Value (nn) 1. Pitch/Roll disabledFinalize calibration (0xFF)

All values are in hexadecimal.

This allows the user to disable the yoke’s pitch and yaw functions so that an external yoke may be added to the simulator without them interfering with each other. The default value is 0.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

Page 360: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

4.14.1.19 CALIBRATE_FACTORY_DEFAULTS (18)Message Index Value / Command Values: 0. No action

Factory Defaults (0x0012)

Value (nn) 1. Save defaultsFinalize calibration (0xFF) 2. Restore defaults

All values are in hexadecimal.

This allows the factory to save the current calibration settings into a secondary storage area to be used as default settings. Later, the user can restore his default settings if he changes his settings and finds he is unable to calibrate his unit properly.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

Note: This has never been implemented, and does not need to be implemented. It was added by fiat as an ill-advised attempt to fix stupid, as it were. We've ignored it and it went away. The command is available for re-use via text override.

4.14.1.20 CALIBRATE_DISPLAY_BACKUP_MODE (19)Message Index Value / Command Values: 0. Disabled (real G1000)Revisionary mode (0x0013)

Value (nn) 1. Switch (latching)Finalize calibration (0xFF) 2. Button (momentary)

All values are in hexadecimal.

The PFC 1000 audio panel includes a "Display Backup” switch. This switch is intended to place the G1000 GPS units into a reversionary mode if one of them fails, so the remaining unit can perform all the functions of both units.

Page 361: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

0. When the PFC 1000 Audio Panel is installed with two genuine Garmin G1000 GDU panels, the switch must be wired directly into the harness. In this case the switch is wired into the G1000s exactly like the Garmin Audio Panel. First, it should not send messages to the PC, because the PC does not control the panels, and so we should avoid extraneous (and useless) messages. Second, the switch must not be tied to a pull-up (where the output of the microprocessor is connected to 5v through a resistor) as it will interfere with the function of the switch. Setting this calibration value to 0 will cause the microprocessor to ignore the switch and to program its output to be in high-impedance mode, which is transparent to the G1000 circuits.When the PFC 1000 Audio Panel is installed with PFC 1000 GDU panels, it should be in one of the other two modes.

1. Normally the PFC 1000 Audio Panel is constructed with a push-on-push-off latching switch. That is, when you press the switch once it will latch to an “on” position and when you press it a second time it will release to the “off” position. If the PFC 1000 Audio Panel is installed with PFC 1000 GDU panels and has a latching switch, the calibration value should be set to 1. This will cause the microcontroller to send SWITCH_G1000_DISPLAY_BACKUP messages when the button is operated. The PC should recognize this as a latching switch, as opposed to a momentary button, and should accept a value of 0 as “revisionary mode” and 1 as “normal operation”.

2. There may be some cases when a simulator has two PFC 1000 Audio Panels installed, one for the pilot and one for the copilot. While this will not be a problem for most of the controls, there will be an irresolvable conflict if one revisionary mode switch is on and the other is off. To avoid this we will install a momentary pushbutton into each unit in place of the usual latching switch. In this case both units should be configured to value 2. (Even if there is only one unit installed, the configuration should match the physical switch, not the installation.) When this happens the microcontroller will send BUTTON_G1000_DISPLAY_BACKUP messages when the button is pressed. The PC software should recognize a value of 1 as “pressed” and a value of 0 as “released”, and will need to keep track of the current revisionary mode setting based on the number of presses it receives. The PC software should start with revisionary mode off, or normal operation, unless other needs require differently.

This is similar to a CALIBRATE_input command but only requires this single command to write the value to ROM.

If supported, this message will be sent as part of the list in response to a CALIBRATE_REPORT_LIST command.

It will only work if CALIBRATE_MODE is enabled. The response to this command is a CALIBRATE_RESPONSE message. It will respond to a Finalize command (0xFF) with success even though it has

already stored the value. It can be repurposed at run time via text override.

Page 362: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.14.1.21 Further CommandsCALIBRATE_DISPLAY_BACKUP_MODE should be the last of this type of command required, as we now support the ability of the firmware to override the text and number of choices in any of this type of calibration command.

4.14.1.22 CALIBRATE_COMMANDS_COUNTThis is not actually a message but a count of calibration commands. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest command message value.

4.14.1.23 CALIBRATE_input (command)The PC sends this message to tell the HWC to capture a calibration point.

Message Index Point / Command Reserved

Calibrate (0x0032+)(see 4.14.1)

Calibration Point (0x00+)

Reserved (0x00)Load defaults (0xFC)Transparent values (0xFD)Abort calibration (0xFE)Finalize calibration (0xFF)

All values are in hexadecimal except document cross-references.

The HWC responds with a CALIBRATE_RESPONSE message (4.14.1.5).

4.14.1.24 CALIBRATE_input (response)The HWC sends zero or more of these in response to a CALIBRATE_REPORT_LIST message (4.14.1.2), followed by a CALIBRATE_REPORT_LIST response.

Message Index Byte 4 Byte 5 – Calibration Type Byte 6Calibrate list (0x0032+) (see 4.14.1)

Selectorcount (0 to use bytes

8-9)

Limits calibration (0x00) Two points (0x02)Center calibration (0x01) One point (0x01)Multi-point calibration (0x02) Number of pointsLimits plus center point calibration (0x03)

Number of points

All values are in hexadecimal except document cross-references.

Byte 7 Bytes 8 – 9Range value (used for calibration utility display)

Selector bit mask if byte 4 == 0

Zero if byte 4 != 0

4.14.1.24.1 CALIBRATE_input responseThe CALIBRATE_input messages also work as responses to the

Page 363: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

CALIBRATE_REPORT_LIST command. There is one for each input type (CALIBRATE_ELEV_TRIM, CALIBRATE_AILERON_TRIM, etc.). For each input type the HWC has that requires calibration, the HWC will send the message that corresponds to that input type.

The list starts at 50 (0x0032) to allow room for more commands. See 4.14.1 for the entire list.

4.14.1.24.2 Selector CountIf there are multiples of a device (e.g. left and right cowl flaps), this tells the PC how many there are. Each one must be calibrated separately. Selectors for these devices will be numbered from 0 to n-1, where n is the selector count.

If the selector count is zero a bit field is activated instead.

4.14.1.24.3 Calibration TypeThis tells the PC what kind of calibration is required for this input.

0. Calibrate limits. This is for potentiometer-based controls that don’t run the pot to the full range.

1. Center calibration only. This is for potentiometer-based controls that have a center-neutral position that must actually be neutral. This is especially important for the aileron and rudder trim pots that have a center notch. These controls generally use the full range of the pot.

2. Multi-point calibration. This is a general-purpose mode that can be used for controls that require any number of points of calibration. When this is selected, byte 6 specifies the number of points to calibrate.

3. Limits plus center point(s) calibration. This is for potentiometer-based controls that have an at-rest neutral or “center” location. Byte 6 specifies the total number of points, including the limits. At this time we support 3 (for limits plus one center point) and 4 (for limits with two center points, and a null zone between the center points).

Note: Byte 6 always contains the number of points supported, even if the number of points is inherent in the calibration type.

4.14.1.24.4 Number of PointsThis specifies the number of points that require calibration. This must be specified even when the number of points is inherent (“Limits” and “Center Only”). When the type is “Limits plus center”, a value of 3 specifies a single center (neutral) point and a value of 4 specifies two points bracketing a null zone (neutral range).

4.14.1.24.5 Range ValueThis is used to scale graphics displays in the Calibration utility. It is a subset of the analog format byte used in analog input messages (3.2.2.1.5).

Page 364: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

If this byte is zero (0) assume the range is 0 to 1023 (10 bits unsigned).

Bit 7 Bit 6 Bit 5 Bits 4:0Sign flag Reserved (set to 0) Place-holder Resolution

4.14.1.24.5.1 Sign FlagBit 7 is 0 if the analog value is unsigned or 1 if the analog value is signed. A signed value is encoded into the same number of bits as an unsigned value, but uses one of those bits as a sign bit. A signed value is in two’s-complement format unless otherwise specified.

4.14.1.24.5.2 Reserved (set to 0)This is reserved against future need. Set this bit to 0.

4.14.1.24.5.3 Place-holderThis bit must be set to one (1) to assure that the byte will never be zero except for the default case. (Otherwise it would be impossible to specify 32-bit unsigned, unlikely though that would be.) It is not otherwise used.

4.14.1.24.5.4 ResolutionThis bit field specifies the number of bits used to encode the analog value. The number of bits may be from 1 to 32, with a value of 0 representing 32 bits.

4.14.1.24.6 Selector Bit MaskIf the Selector Count (4.14.1.24.2) is zero this field contains a bit mask. Each 1-bit corresponds to an available selector. This allows us to map non-contiguous selectors, such as for the Cessna throttle quadrant (which only uses the first, third, and fifth controls). It’s very straightforward: if bit 0 is on, then selector 0 is available; if bit 1 is on then selector 1 is available; and so on.

Bit 0 Bit 1 Bit 2 … Bit 15Selector 0 1Selector 1 1Selector 2 1

… …Selector 15 1

If the Selector Count is non-zero then the Selector Bit Mask field is not used and must be set to zero (0).

4.14.2 Example “Request Calibrations” Exchange

The PC requests calibration information.PC: 0xFE 0x00 0x0001 …

The hardware controller starts listing its inputs.

Page 365: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Apparently this has a potentiometer elevator trim that requires limits calibration.HWC: 0xFE 0x00 0x0032 0x01 0x00 …

It also has aileron and rudder trim pots that need to be centered.HWC: 0xFE 0x00 0x0033 0x01 0x01 …HWC: 0xFE 0x00 0x0034 0x01 0x01 …

Finally, it has two analog cowl flap controls that need limits calibration.HWC: 0xFE 0x00 0x0036 0x02 0x00 …

That’s all. The HWC tells the PC that the list is finished.HWC: 0xFE 0x00 0x0001 …

The PC now has enough information to start the calibration procedure.

Note: It’s not a good idea to ask the HWC to do two reports at once, e.g. don’t ask for a Full Report and Request Calibrations at the same time. The HWC may not have the resources to keep track of both at the same time and is not required to obey such a request. Ask for one, wait for it to finish, then ask for the other.

4.14.3 Example Calibration SequenceThe user starts the calibration of the right cowl flap.The PC goes into calibration mode.

PC: 0xFE 0x00 0x0002 0x01 …HWC: 0xFE 0x00 0x0002 0x01 …

The PC prompts the user to set the control to the “open” position and click OK.The user sets the control to the “open” position and clicks OK.

PC: 0xFE 0x01 0x0036 0x00 …HWC: 0xFE 0x00 0x0004 0x01 0x00 …

The hardware controller has indicated success. The PC prompts the user to set the control to the “closed” position and click OK.The user accidentally sets the left control, then clicks OK.

PC: 0xFE 0x01 0x0036 0x01 …HWC: 0xFE 0x00 0x0004 0x01 0x00 …

The hardware controller has indicated success. The PC now tells the HWC to finish:PC: 0xFE 0x01 0x0036 0xFF …HWC: 0xFE 0x00 0x0004 0x00 0x03 …

Since the calibration points were too close together, the hardware controller has rejected the calibration. The PC prompts the user to start again, the user accepts.The PC prompts the user to set the control to the “open” position and click OK.The user sets the control to the “open” position and clicks OK.

PC: 0xFE 0x01 0x0036 0x00 …HWC: 0xFE 0x00 0x0004 0x01 0x00 …

The hardware controller has indicated success. The PC prompts the user to set the control to the “closed” position and click OK.The user sets the right control to the “closed” position, then clicks OK.

PC: 0xFE 0x01 0x0036 0x01 …HWC: 0xFE 0x00 0x0004 0x01 0x00 …

The hardware controller has indicated success. The PC now tells the HWC to finish:

Page 366: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

PC: 0xFE 0x01 0x0036 0xFF …The hardware controller burns the new values to flash ROM, calculates the new slope and offset, and returns success:

HWC: 0xFE 0x00 0x0004 0x01 0x00 …

4.14.3.1 CALIBRATE_ELEV_TRIM (50)

4.14.3.1.1 CommandHeader Cmd Format

FE 00 32 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x01: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.1.2 ResponseHeader Selector

countCal type Points Range Selector

bitsFE 00 32 00 01 00 02 rr 0000

All values are in hexadecimal. Selector count: always 1, there is only one elevator trim. Cal type 0: Limits calibration. Points: Limits calibration has 2 points to calibrate. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.2 CALIBRATE_AILERON_TRIM (51)

4.14.3.2.1 CommandHeader Cmd Format

FE 00 33 00 nnAll values are in hexadecimal.

Page 367: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Cmd Format is one of: 0x00: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.2.2 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 33 00 01 01 01 rr 0000All values are in hexadecimal.

Selector count: always 1, there is only one aileron trim. Cal type 1: Center Calibration Points: Center calibration only has 1 point to calibrate. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.3 CALIBRATE_RUDDER_TRIM (52)

4.14.3.3.1 CommandHeader Cmd Format

FE 00 34 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x02: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.3.2 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 34 00 01 0x 0x rr 0000All values are in hexadecimal.

Selector count: always 1, there is only one rudder trim.

Page 368: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Cal type 1: Center Calibration or Cal type 3: Limits plus center point calibration.

Points: Center calibration only has 1 point to calibrate. Limits plus center point calibration have three points to calibrate.

Range: range of the value (provided for display purposes). Subset of the analog format. If this field is 0, assume 10 bits unsigned.

o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

Depending on the trim this may report center point calibration (1 point) or limits plus center point calibration (3 points).

Generally the trim that reports center point calibration consists of a single-turn potentiometer, possibly with a center notch. Calibration is intended to assure that the control is neutral when it is placed in the center position.

However in the mini-console the rudder trim is a horizontal wheel similar to the legacy elevator trim. (There is also a newer version with an electronic display that does not require calibration.) In this case only about 2/3 of the pot’s range is actually used and the location of the center and endpoints within that range are not reliable from one installation to the next. So here we provide the ability to calibrate the endpoints and the center of the trim. (The trim will then typically generate a null zone around the center point and report Limits plus Null Zone calibration values during regular operation.)

4.14.3.4 CALIBRATE_BREAKERS (53)

4.14.3.4.1 CommandHeader Cmd Format

FE 00 35 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.4.2 Response

Page 369: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Header Selector count Cal type Points Range Selector bitsFE 00 35 00 xx 02 01 00 0000

All values are in hexadecimal. Selector count: number of inputs of this type (e.g. 2 if there are two breaker

panels on the same device). Cal type 2: Multi-point calibration. Points: The single calibration point is a placeholder. Range: not used, set to 0. Selector bit mask: if Selector count=0 then these bits will be set to

correspond to the available inputs.

This actually mimics an analog calibration, and uses the single calibration point so the utility can lead the user through a prompt-action-response sequence without requiring custom code.

We use two kinds of breakers: actual circuit breakers that can be tripped by running sufficient current through the breaker; and devices that look like circuit breakers but are merely SPST NC switches (pull to open). The actual circuit breakers include a separate “sense” circuit that reports whether the breaker is popped; however, the sensor is Normally Open, and closes when the breaker is pulled or popped. So real breakers are wired to two circuits: one that only trips the breaker, and the other that senses the breaker status; whereas the switch-only breakers are simply wired to the sense circuit. However, that means that the real breakers are open when operating normally and the fake breakers are closed when operating normally. The breaker panel needs to know which breakers are which and, depending on the individual installation, we may not know that ahead of time. In other words, different customers may get panels with different combinations of breakers.

Instead of writing custom code for each installation, we use this calibration to discover and record the information at assembly time. What’s more, if we later change an installation (e.g. the user decides to add more real breakers) we need only re-calibrate the breaker panel.

1. Prompt the user. This prompt tells the user to reset (push in) all breakers and click Calibrate.

2. Once the user clicks Calibrate, the breaker panel reads all the breakers and records the information.

3. In all subsequent operations, the breaker panel assumes that any breakers that were open at calibration time are Normally Open, and any that are closed are Normally Closed, and inverts the readings to report them consistently.

The utility does not have any value to display for this calibration type.

Page 370: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

As of early 2013 we are now using a new design that allows us to detect and trip 1A standard breakers instead of requiring special breakers with a separate circuit. New designs will not implement this feature.

This calibration input was previously called CALIBRATE_FLAPS. Ironically enough, this feature is now obsolescent and we've found a new use for CALIBRATE_FLAPS (68).

4.14.3.5 CALIBRATE_COWL_FLAPS (54)

4.14.3.5.1 CommandHeader Cmd Format

FE 00 36 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x01: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.5.2 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 36 00 xx 00 02 rr 0000All values are in hexadecimal.

Selector count: number of inputs of this type (e.g. 2 if there are two cowl flaps).

Cal type 0: Limits calibration. Points: Limits calibration has 2 points to calibrate. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.6 CALIBRATE_TILLER (55)Not implemented as of this writing.

Page 371: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.14.3.7 CALIBRATE_AP_ROLL (56)

4.14.3.7.1 CommandHeader Cmd Format

FE 00 38 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x02: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.7.2 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 38 00 01 03 or 04 03 or 04 rr 0000All values are in hexadecimal.

Selector count: There is only one rudder control. Cal type 3: Limits and center point calibration, or

Cal type 4: Limits plus null zone calibration. Points: This calibration requires three points (limits plus center point) or

four points (limits plus null zone). Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

AP_ROLL, also known as Autopilot Turn (e.g. Kingair B200), is implemented as a single-turn potentiometer with a center notch. While the calibration only needs to identify the limits and the center notch, the value messages (CONTROLS_AUTOPILOT_TURN) may include limits-plus-null-zone calibration values. The null zone will be centered on the calibrated center point (presumably the center of the notch) and will be wide enough to allow the control to clear the notch area before the pilot sees any control behavior.

Contrariwise, the firmware developer may decide to perform a limits-plus-null-zone calibration on this control.

Page 372: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.14.3.8 CALIBRATE_CABIN_ALT (57)Not implemented as of this writing.

4.14.3.9 CALIBRATE_TURBO_THROTTLE (58)

4.14.3.9.1 CommandHeader Cmd Format

FE 00 3A 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x03: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.9.2 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 3A 00 0x 02 04 rr 0000All values are in hexadecimal.

Selector count: number of inputs of this type. Typically there are two turboprop throttle controls.

Cal type 2: Multi-point calibration. Points: this calibration requires four points. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

Turboprop throttles have three ranges: Alpha, Beta, and Reverse. The hardware has a single potentiometer that covers all three ranges, so the pot’s range has to be split into three separate ranges. The alpha range is used for flying and is at the top of the pot’s range. The beta range is used for low idle on the ground and in the middle of the pot’s range. The reverse range is used for braking the airplane and is at the bottom of the pot’s range. This calibration establishes the actual values of the top of the alpha range, the transition between the alpha and beta ranges, the transition between the beta and reverse ranges, and the bottom of the reverse range.

Page 373: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.14.3.10 CALIBRATE_RUDDER (59)Header Cmd Format

FE 00 3B 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x03: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.10.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 3B 00 01 03 04 rr 0000All values are in hexadecimal.

Selector count: There is only one rudder control. Cal type 3: Limits and center point calibration. Points: This calibration requires four points (limits plus null zone). Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.11 CALIBRATE_TOE_BRAKES (60)

4.14.3.11.1 CommandHeader Cmd Format

FE 00 3C 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x01: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.11.2 Response

Page 374: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Header Selector count Cal type Points Range Selector bitsFE 00 3C 00 xx 00 02 rr 0000

All values are in hexadecimal. Selector count: number of inputs of this type (two for a pilot-only device, four

for a device that includes copilot pedals). Cal type 0: Limits calibration. Points: Limits calibration has 2 points to calibrate. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.12 CALIBRATE_THROTTLE (61)Header Cmd Format

FE 00 3D 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x02: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.12.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 3D 00 0x 0x 0x rr bbbbAll values are in hexadecimal.

Selector count: number of inputs of this type. Cal type 0: Limits calibration. Points: Limits calibration has 2 points to calibrate. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Page 375: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

This message is depreciated in favor of the CALIBRATE_THROTTLE_QUADRANT message.

4.14.3.13 CALIBRATE_PROP_PITCH (62)Header Cmd Format

FE 00 3E 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x02: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.13.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 3E 00 0x 0x 0x rr bbbbAll values are in hexadecimal.

Selector count: number of inputs of this type.. Cal type 0: Limits calibration. Points: Limits calibration has 2 points to calibrate. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

This message is depreciated in favor of the CALIBRATE_THROTTLE_QUADRANT message.

4.14.3.14 CALIBRATE_MIX (63)Header Cmd Format

FE 00 3F 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x02: calibrate current value to the specified point. 0xFC: revert to reasonable defaults.

Page 376: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.14.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 3F 00 0x 0x 0x rr bbbbAll values are in hexadecimal.

Selector count: number of inputs of this type.. Cal type 0: Limits calibration. Points: Limits calibration has 2 points to calibrate. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

This message is depreciated in favor of the CALIBRATE_THROTTLE_QUADRANT message.

4.14.3.15 CALIBRATE_THROTTLE_QUADRANT (64)Header Cmd Format

FE 00 40 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x02: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.15.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 40 00 0x 0x 0x rr bbbbAll values are in hexadecimal.

Selector count: number of inputs of this type, or 0 on some units such as the Cessna.

Cal type 2: Multi-point calibration. Points: If 1 point this is a transition-only calibration. If 3 points this is a

limits-plus-transition calibration.

Page 377: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Range: range of the value (provided for display purposes). Subset of the analog format. If this field is 0, assume 10 bits unsigned.

o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs. On the Cessna this will likely be set to 0x0015 to calibrate the first, third, and fifth selectors.

Most of our throttle quadrants use the entire range of their potentiometers (or very nearly) and so do not need limits calibration. However if you’re using a turboprop throttle quadrant you will need to calibrate the transition point.

Standard PFC turboprop throttle quadrant throttles do not include a beta range, but only alpha and reverse ranges. The prop pitch controls include a feather range and the condition (mix) controls include a fuel-cutoff range.

The helicopter throttle includes a fuel cutoff protected by a button lock. The three-point calibration (with transition) works perfectly for this application.

4.14.3.16 CALIBRATE_AILERONS (65)Header Cmd Format

FE 00 41 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x03: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.16.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 41 00 01 03 04 rr 0000All values are in hexadecimal.

Selector count: There is only one aileron control. Cal type 3: Limits and center point calibration. Points: This calibration requires four points (limits plus null zone). Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.

Page 378: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an empty field (which defaults to 10 bits unsigned).

o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.17 CALIBRATE_ELEVATORS (66)Header Cmd Format

FE 00 42 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x03: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.17.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 42 00 01 03 04 rr 0000All values are in hexadecimal.

Selector count: There is only one elevator control. Cal type 3: Limits and center point calibration. Points: This calibration requires four points (limits plus null zone). Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.18 CALIBRATE_BACKLIGHT_SCALING (67)Header Cmd Format

FE 00 43 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00: calibrate current value to the specified point. 0xFC: revert to reasonable defaults.

Page 379: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.18.1 ResponseHeader Selector count Cal type Points Range Selector bits Value

FE 00 43 00 0x 02 01 0x28 0000 xxxxAll values are in hexadecimal.

Selector count: number of inputs of this type, usually 1. Cal type 2: Multi-point calibration. Points: this calibration only uses 1 point. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – always 8. Backlighting range is always 0-255.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 – always 0.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

Value: this is the previous saved calibrated backlighting value for this selector. Note that this is an 8-bit value in a 16-bit field; the upper byte is always 0. The field is 16 bits to maintain compatibility with other analog values.

This sets the upper limit of the backlight scaling. That is, it allows the operator to adjust a panel’s backlighting brightness to match the other panels in the simulator. It is unusual in several ways:

It uses the multi-point calibration type with a single point. (The throttle quadrant also sometimes uses this.)

It has a fixed range of 0-255. This is because for sanity’s sake we’ve set that as the range for all backlighting transactions.

It requires the calibration utility to send non-calibration commands to accomplish the calibration.

It may use selectors with the ILLUMINATOR_BACKLIGHT command, but the it uses the calibration selectors and not the same selectors used during normal operation.

When the calibration utility starts a brightness calibration it needs to set all panels present to 100% backlight (not just the one being calibrated). This allows for a quick visual comparison. (PFC's Hardware Calibration handles this requirement by presenting a pair of buttons that allows the user to manually enable or disable the backlights for the other panels.)

Page 380: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

When the panel sends a list of supported calibrations it will include its current brightness calibration value in the message.

During the calibration of a panel’s brightness the panel will override its brightness calibration value and use the incoming backlight commands to set its brightness. The utility will start by sending the value it received (the current brightness calibration as described above) as the current backlight value.

The operator will adjust a slider and/or other controls until he is satisfied with the panel’s brightness. Each control adjustment will cause the utility to send a backlight command.

When the operator hits the Calibrate button the calibration will finalize as normal.

Once the panel is out of calibration mode it will use the brightness calibration value to scale the incoming backlight commands. The brightness scale is 0-255 where 0 is 1/256th of full brightness and 255 is full brightness. Depending on how the firmware applies the values the actual precision of the backlighting may be somewhat less than the 1 part in 65280 otherwise implied; the device is permitted to approximate the scale. For example, some devices only display 16 levels.

Also note that, at least during brightness calibration, the utility should send the METADATA_PING command periodically (recommended at least once every 10 seconds) to keep all the panels lit.

As stated above, during calibration report the device reports its current brightness calibration value in order to allow the calibration to start at the last value. Generally during a calibration report the device will only send one message per input type – for example, if there are two cowl flaps controls, the device will send a single message that says there are two selectors. This is of course because the protocol was designed that way. Unfortunately this doesn’t work if a device needs to have multiple brightness values calibrated, because each one will need to report a separate value. In order to accommodate this the device will send a separate message for each brightness value using a selector bit instead of a single message using the selector count. Utility programmers be warned.

In addition, due to the design of the calibration protocol, the target device has no way to know which of the backlight values is being calibrated until it is told to capture the point. Since we desire to visually compare all the backlights during this process we only want to adjust the relevant backlight; all other backlights in the simulator, including the other backlight(s) in the target device, should be set to 100% of their current calibrated scaling. In order to distinguish how the incoming ILLUMINATOR_BACKLIGHT value should be applied the calibration utility will include a selector. During normal operation (not in calibrate mode) the device will either ignore the selector byte and apply any incoming ILLUMINATOR_BACKLIGHT values to all backlights (scaled appropriately to their calibration values) or,

Page 381: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

depending on the design, use the selector for appropriate lighting subsystems. During calibration the device will use the selector to send the ILLUMINATOR_BACKLIGHT values only to the corresponding backlight (unscaled) and will set all other backlights to 100% (scaled). The utility will send only the ILLUMINATOR_BACKLIGHT value for the backlight being calibrated and will not attempt to set the other backlights on this device. (It will still set all other connected devices to 100% as mentioned above.)

4.14.3.19 CALIBRATE_FLAPS (68)Header Cmd Format

FE 00 44 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x03: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.19.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 44 00 01 02 04 2n 0000All values are in hexadecimal.

Selector count: always 1. Cal type 2: Multi-point calibration. Points: this can be any (reasonable) number but the only use so far has been

on the Cessna, which requires 4. Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 – always 0.

This command (when it was 53 instead of 68) was originally intended to allow the HWC3 to capture the four values the Cessna flaps lever returned for the four different positions (via voltage divider), so that we could handle the case that the switch was mounted on the other side of the lever (from our point of view, upside-down). Unfortunately due to the design of the resistor divider network, it was not possible to simply reverse the leads. However, the issue was resolved via other methods, so the command was never used. Eventually I re-assigned 53 to

Page 382: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

CALIBRATE_BREAKERS, which itself eventually became obsolescent, though it at least saw some use before doing so.

This figured without the various nefarious machinations of our evil overlords. Or put another way, necessity is a mother. While designing the Cessna Flaps Panel for the GTX we ran through a number of possible switches to use, including both selector switches (what you normally would use for this) and hex-encoded switches, and settled on the latter, at least for the first production unit. What's more, the switch in question did not include a turn-stop pin (stops the switch from turning in its mount -- and also acts as a zero reference) and did not have an index stop (you could turn the switch in one direction forever). This combination meant it did not have any simple reference to the first position, which therefore meant the shop was likely to align to whatever reference was convenient, or would have to follow some relatively complex instructions for determining the reference. And was likely to muff the latter and end up with the former in any case.

After I stopped to enjoy the irony that the replacement command (CALIBRATE_BREAKERS) had become obsolescent while the original command was suddenly needed again, my answer was to exhume the CALIBRATE_FLAPS command. Of course our protocol is quite flexible and variable, which means I could use a very basic specification for the command and implement it however I chose. In this case it reads all four input pins as a single value, once for each position, then stores all four position values in their respective calibration points. At run-time I use those values in a look-up table; if I read one of the values in the table, I set the output to the position. If I read a value not in the table, I simply report the last known value. The default values correspond to a standard selector switch, which is what I expect we'll end up using in the long run, but this arrangement means you can calibrate it for whatever input combination exists, as long as all four positions are unique. (Best results are obtained if the intermediate values -- those values returned by the switch when it's between stops -- are different from the calibrated values, but it's not absolutely required. Non-unique intermediate values mean that, at most, the flaps will begin to move in the wrong direction very briefly while the switch is between positions.)

Of course, this is simply how I used this command for one particular implementation. Flexibility is our watchword, and as always the command may be bent and wrapped around some new perverse idea for solving a problem that should never have seen the light of day.

4.14.3.20 CALIBRATE_COLLECTIVE (69)Header Cmd Format

FE 00 45 00 nnAll values are in hexadecimal.

Cmd Format is one of:

Page 383: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

0x00 to 0x03: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.20.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 45 00 01 00 02 rr 0000All values are in hexadecimal.

Selector count: There is only one collective control. Cal type 0: Limits calibration. Points: This calibration requires two points (limits). Range: range of the value (provided for display purposes). Subset of the

analog format. If this field is 0, assume 10 bits unsigned.o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.21 CALIBRATE_THROTTLE_W_FUEL_CUTOFF (70)This was designed to be used for a Bell 206 helicopter throttle. The Bell 206 has only one throttle, but the design allows for more.

Header Cmd FormatFE 00 46 00 nnAll values are in hexadecimal.

Cmd Format is one of: 0x00 to 0x02: calibrate current value to the specified point. 0xFC: revert to reasonable defaults. 0xFD: revert to transparent values. 0xFE: abort the calibration (stop calibrating this input) 0xFF: finalize the calibration (save values to ROM)

4.14.3.21.1 ResponseHeader Selector count Cal type Points Range Selector bits

FE 00 46 00 0x 02 03 rr bbbbAll values are in hexadecimal.

Selector count: number of inputs of this type. Will be 1 for Bell 206. Cal type 2: Multi-point calibration.

Page 384: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Points: This calibration requires three points: two for limits and one for transition, being the low end of the throttle range.

Range: range of the value (provided for display purposes). Subset of the analog format. If this field is 0, assume 10 bits unsigned.

o Bits 4:0 – number of bits of precision. 0 == 32 bits.o Bit 5 – always 1. Distinguishes between 32 bits unsigned and an

empty field (which defaults to 10 bits unsigned).o Bit 6 – not used, set to 0.o Bit 7 –1=signed, 0=unsigned value.

Selector bit mask: if Selector count=0 then these bits will be set to correspond to the available inputs.

4.14.3.22 CALIBRATE_TRIM_PARAMETERS (71)

4.14.3.22.1 CommandHeader Cmd Format reserved Value

FE 00 47 00 nn 00 xxxxAll values are in hexadecimal.

Cmd Format is one of:o 0x00: calibrate supplied value to the specified point.o 0xFC: revert to reasonable defaults.o 0xFD: revert to transparent values.o 0xFE: abort the calibration (stop calibrating this input)o 0xFF: finalize the calibration (save values to ROM)

reserved: Provided for 16-bit word alignment. Set to 0. Value: A 16-bit value within the limits set by the Calibration Report response.

4.14.3.22.2 ResponseHeader Selector count Cal type Points Format Selector bits Value

FE 00 47 00 0s 02 01 0f 0000 xxxx

Low limit High limitllll hhhh

All values are in hexadecimal.

Selector count: number of inputs of this type, usually 0 ("use Selector Bit Mask").

Cal type 2: Multi-point calibration. Points: this calibration only uses 1 point. Format: defines extra details about the display format.

o Bits 2:0 – specifies the number of decimal places in the display, 0-5. For display only; does not affect the actual value.

Page 385: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

o Bits 7:3 – reserved, always 0. Selector bit mask: if Selector count=0 then these bits will be set to

correspond to the available inputs. This is the most likely case. Value: this is the previous saved calibrated backlighting value for this

selector. Low limit, High limit: Provides the lower and upper limits Value may be.

Required during Calibration Report, optional at other times. If both are 0 during the report, default is 0-255.

This sets one of several custom parameters for a trim, usually an electric elevator trim. It is unusual in several ways:

It uses the multi-point calibration type with a single point. It specifies a value range with the calibration report response. It sends a value along with the commands, instead of using value read from

an input. The Range byte is not used at all. Instead, byte 7 specifies details for the value

display. At this writing it only specifies the number of decimal places. Generally, calibration report responses will use the Selector bit mask instead

of the Selector count field.

4.14.3.22.3 UseThese messages may be used to customize the firmware to fit the needs of a simulator whose trim's characteristics differ from PFC's normal elevator trim, without requiring a code re-write for each non-standard trim. Under normal circumstances the trim will not be calibrated at all.

When the panel sends a list of supported calibrations it will include its current calibration value in the message. Because each selector will have a different value, each selector will be reported via a separate message, the Selector Count will usually be 0 and the Selector bit mask field will be used instead.

The operator will adjust a slider and/or other controls until the parameter's value is correct. When the operator hits the Calibrate button the calibration will finalize as normal, using the value provided in the last Point command.

As stated above, during calibration report the device reports its current parameter calibration value in order to allow the calibration to start at the last value. Normally (when calibrating an actual analog input) during a calibration report the device will only send one message per input type – for example, if there are two cowl flaps controls, the device will send a single message that says there are two selectors, as the protocol was designed with this shortcut. Unfortunately this doesn’t work if a device needs to have multiple parameter values calibrated, because each one will need to report a separate value, and each may have a different range. In order to accommodate this the device will send a separate message for each parameter value

Page 386: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

using a selector bit instead of a single message using the selector count. Utility programmers be warned.

4.14.3.22.4 Assigned SelectorsA few selectors have been pre-assigned to specific parameters, though these could be overridden at need.

4.14.3.22.4.1 Shaft:Wheel Ratio (Selectors 0 and 1)This is the gear ratio of the motor shaft to the wheel expressed as two numbers: the numerator and the denominator.

So for the first two selectors:0. Shaft gearing (numerator) per1. Wheel gearing (denominator)

The stock PFC trim wheel uses a 5:12 gear ratio, so the default is 5 for selector 0 and 12 for selector 1.

If your wheel had, for example, 20 teeth, and your shaft had 10 teeth, the ratio would be 10:20. You may reduce the fraction and enter 1 and 2 instead of 10 and 20 or just leave it alone; either way it's the ratio that matters, not the absolute number values. Any common multipliers will cancel out in the calculations.

4.14.3.22.4.2 Motor Resolution (Selector 2)This 16-bit number specifies the number of steps in a single revolution of the motor.

The default for the stock PFC trim motor is 200.

4.14.3.22.4.3 Sensor Resolution (Selector 3)This 16-bit number specifies the number of steps of the motor encoder in a single revolution of the motor.

The default for the stock PFC trim motor encoder is 200.

4.14.3.22.4.4 Hand Turn Number of Degrees (Selector 4)This 16-bit number specifies the number of degrees a wheel is turned to be considered a "hand turn". Values are from 1 to 360°.

The default for the stock PFC trim wheel is 120°, or 1/3 of a full turn of the wheel.

As discussed elsewhere, the Hand Turn is a subjective measurement. It's approximately the amount of rotation a pilot could apply reasonably and comfortably with a single

Page 387: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

motion. In some cases it might be the amount the pilot would be likely to apply, rather than an actual limit.

4.14.3.23 CALIBRATE_MISC_PARAMETERS (72)

4.14.3.23.1 CommandHeader Cmd Format reserved Value

FE 00 48 00 nn 00 xxxxAll values are in hexadecimal.

Cmd Format is one of:o 0x00: calibrate supplied value to the specified point.o 0xFC: revert to reasonable defaults.o 0xFD: revert to transparent values.o 0xFE: abort the calibration (stop calibrating this input)o 0xFF: finalize the calibration (save values to ROM)

reserved: Provided for 16-bit word alignment. Set to 0. Value: A 16-bit value within the limits set by the Calibration Report response.

4.14.3.23.2 ResponseHeader Selector count Cal type Points Format Selector bits Value

FE 00 48 00 00 02 01 0f bbbb xxxx

Low limit High limit Msg class Msg sel Msg idxllll hhhh cc ss iiii

All values are in hexadecimal.

Selector count: number of inputs of this type, usually 0 ("use Selector Bit Mask").

Cal type 2: Multi-point calibration. Points: this calibration only uses 1 point. Format: defines extra details about the display format.

o Bits 2:0 – specifies the number of decimal places in the display, 0-5. For display only; does not affect the actual value.

o Bits 7:3 – reserved, always 0. Selector bit mask: if Selector count=0 then these bits will be set to

correspond to the available inputs. This is the most likely case. Value: this is the previous saved calibrated backlighting value for this

selector. Low limit, High limit: Provides the lower and upper limits Value may be.

Required during Calibration Report, optional at other times. If both are 0 during the report, default is 0-255.

Page 388: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Message information: If non-zero, specifies a message to be sent with the current value on every change of the slider value during calibration. This is identical to how CALIBRATE_BACKLIGHT works, except that it's agnostic.

o Msg class: The class used for this message.o Msg sel: Selector used in each message.o Msg idx: 16-bit message index.

The current value is sent in the first two bytes of the message value field in little endian, with the following two bytes set to 0. This allows for a word size up to 32 bits regardless of the actual word size defined by the class used. At this time there is no provision for more complex messages.

This sets a custom parameter for any control needing a continuous value or one of a list of values that will be selected by the user. It is unusual in several ways:

It uses the multi-point calibration type with a single point. It specifies a value range with the calibration report response. It sends a value along with the commands, instead of using value read from

an input. The Range byte is not used at all. Instead, byte 7 specifies details for the value

display. At this writing it only specifies the number of decimal places. Generally, calibration report responses will use the Selector bit mask instead

of the Selector count field. It provides for immediate feedback if desired.

4.14.3.23.3 UseThis message is used whenever a user needs to choose a value from a simple range. It's not the same as choosing a radio button, as is normally done with a configuration message; in that case each value has a separate meaning from the other values. In this case the value selected is more likely to be a magnitude; each value represents a size or weight or intensity that is otherwise exactly like every other value available.

This message borrows features of CALIBRATE_BRIGHTNESS and CALIBRATE_TRIM_PARAMETERS. It actually duplicates the functionality of CALIBRATE_BRIGHTESS, and could easily be used to substitute for it. Because it is more configurable, it allows the same mechanism to be applied to more general use. It borrows features from CALIBRATE_TRIM_PARAMETERS to extend its usefulness, and adds CALIBRATE_BRIGHTNESS's ability to update an output device during calibration for the user to perceive the results of the changes in real time.

It differs from CALIBRATE_BRIGHTNESS in that its value range and the feedback message are configurable. It differs from CALIBRATE_TRIM_PARAMETERS in that it has the option of a feedback message and that it is general purpose.

Page 389: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

When the panel sends a list of supported calibrations it will include its current calibration value in the message. Because each selector will have a different value, each selector will be reported via a separate message, the Selector Count will usually be 0 and the Selector bit mask field will be used instead.

The operator will adjust a slider and/or other controls until the parameter's value is correct. When the operator hits the Calibrate button the calibration will finalize as normal, using the value provided in the last Point command.

As stated above, during calibration report the device reports its current parameter calibration value in order to allow the calibration to start at the last value. Normally (when calibrating an actual analog input) during a calibration report the device will only send one message per input type – for example, if there are two cowl flaps controls, the device will send a single message that says there are two selectors, as the protocol was designed with this shortcut. Unfortunately this doesn’t work if a device needs to have multiple parameter values calibrated, because each one will need to report a separate value, and each may have a different range. In order to accommodate this the device will send a separate message for each parameter value using a selector bit instead of a single message using the selector count. Utility programmers be warned.

4.14.3.23.4 Assigned SelectorsAt this time only selector 1 has been assigned. Any assigned selector may of course be re-used or over-ridden at need. Assigning a selector really only changes the text displayed during calibration.

4.14.3.23.4.1 Volume (Selector 1)This is a simple audio volume control.

4.14.3.24 CALIBRATE_COUNTThis is not actually a message but a count of calibration messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

4.14.4 Calibration Text OverrideThis feature (new as of September, 2011) allows the firmware to temporarily override the text prompts displayed for part or all of a calibration dialog. This was necessary to prevent having to add Yet Another Calibration Message every time we needed a new variant. Since the actual commands and dialogs are only used during calibration time, the actual message indexes used to prompt the user are not important. However, the text should reflect the desired control and options.

Page 390: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This was primarily intended for re-using the messages starting with 0x0005 (CALIBRATE_EQUIPMENT_PRESENT) and ending with 0x0013 (CALIBRATE_DISPLAY_BACKUP_MODE). (These are actually configuration, not calibration messages, but when we built calibration support we assumed that configuration support would be a separate entity. Later we realized it would be an unnecessary and costly duplication of effort.) However, for completeness we have included support for the standard calibration messages as well, 0x0032 (CALIBRATE_ELEV_TRIM) through 0x0043 (CALIBRATE_BACKLIGHT_SCALING).

For example, we recently added the ability to select one of seven panel layouts for the PFC 1000 GDU panels, plus the ability to select the Primary Flight Display (PFD), Multi-Function Display (MFD), or a copilot's-side Primary Flight Display (PFD2) to be used in 3-display systems. The ability to select these via configuration allows us to use one version of the firmware for any of 21 different panels.

4.14.4.1 Configuration Text OverridesThere are four parts to each configuration text override that must be addressed:

1. Which message is being overridden. We start this by declaring support for the message in the first place. Overriding the text will be done by follow-up messages, each using the same message index.

2. How many choices the operator will be given. This allows us to create choice lists that do not match any existing message; our example shows this clearly, as no existing messages support six choices.

3. An overall title of the item to be configured. “Selector” would be an example, if we were choosing the selector the item will use.

4. A label for each choice.

Please note that all firmware must send the normal support message (item 1 above) first, followed by the count (item 2). The other two types of message (items 3 and 4) are optional and can be in any order. All three override message types (items 2 through 4) also are not required to immediately follow the normal support message (item 1). So for example the firmware may send all its normal support messages, then start sending text override messages for several of those messages.

Also note that other unrelated messages may be interleaved, just as specified elsewhere in this protocol design. We cannot guarantee that the firmware will not, for example, decide to send a normal input value between two calibration/configuration messages.

In order to extend the normal use of these messages we have decided to use the last two bytes of the message, bytes 18 and 19, for our flags and indexes. The calibration utility needs to look for the following conditions:

Page 391: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

If byte 19 is non-zero (any value) for a calibration support message, the message is a text override message. If byte 19 is zero, it is a normal message.

If byte 19, bit 7 (high bit) is zero (0x00-0x7F), the message is a count (item 2 above). If bit 7 is one (0x80-0xFF) the message is a text field. Further:

o If byte 19 is 0xFF, the message is the title override (item 3 above).o If the two high bits are set (0xC0-0xFE), it is a text message with a

calibration prompt override. The calibration point number is held in the low four bits. (Note that this is covered later under Configuration Text Override.)

o If it is any other value with the high bit set (0x80-0xBF), it is a label for a configuration choice (item 4 above). The choice number is held in the low four bits.

4.14.4.1.1 The Message Being OverriddenThe first message sent will always be a normal response message. This is something we would be sending anyway, to let the calibration utility know that we are supporting configuration for that item. It also fills in the default text values for each of the items, which we can override.

Each text item can be overridden, but it is not necessary to override all of them. My own conception is that reporting the message causes the calibration utility to create a construct of the configuration, including all text fields. If the firmware does not follow up by replacing any text fields then of course the default fields are used. If some of the text fields are appropriate for the desired use then the firmware need not override those particular fields.

For example, if the designer wanted to allow the choice of a selector but wanted the user to select between “pilot” and “copilot” instead of the defaults “0” and “1”, he could leave the title as “Selector” but override the two labels.

We start by sending the usual information, including the item selector and the current value. (The limit, in byte 7, is actually only sent with message 0x0010, “Set Selector”. Chances are if we had defined message text override first we never would have felt the need for a limit specification for that message, as a count specification is built into the text override feature. There is no specific requirement for this field if it is intended to be overridden, but it might be wise for the firmware developer to specify the same limits in both places.)

4.14.4.1.2 Number of ChoicesThe first text override message to be sent is a number of choices. Configuration items generally consist of a few radio button choices; this message allows the

Page 392: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

firmware to specify the number of radio buttons the operator has to choose from. At this time (October 2011) the current utility allows up to six choices, that being the maximum we have found need for. Theoretically the limit is 255 choices.

In order to extend the normal use of these messages we have decided to use the last two bytes of the message, bytes 18 and 19, for our flags and indexes. In the example above you’ll notice that byte 19 has a value called Count. That would be the number of choices we’re currently describing.

Note that when you extend a message to contain more choices than the original message, the additional choices will contain blank text fields. (This should be obvious.)

4.14.4.1.3 Title TextOnce the number of choices has been specified, you can start overriding text fields. These can be overridden in any order, but here we’ll start with the title text.

By “title” I mean the name or title of the item that’s being configured. Some examples are “Device Selector”, “Fuel Switch”, “Throttle Quadrant”. (What you’re choosing between will be evident when you get to the labels for the choices.)

As mentioned before, byte 19 will be set to 0xFF to specify that this is the Title Text field.

Between the four-byte header at one end and two bytes for the index fields at the other end, we have 14 bytes remaining for actual text. So what happens if your string is longer? Well, that’s what the Text Idx field in byte 18 is for.

The text is broken into strings of (up to) 14 bytes. Each string has an index. This tells the software where the text fits into an

arbitrarily large array. Each string may completely fill the 14-byte space provided with no null

termination. If the last string stops short of 14 bytes the remaining bytes are filled with 0. However:

It is not required that the last string be null-terminated. If the last string happens to exactly fill the last 14-byte field, the software must accept it as the end of the string. Since there is no specific indication that a particular string is the last, we recommend the software force a null termination after the end of each string as they come in.

The fields must be sent in ascending index order.

Page 393: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Note that Mike Thompson’s PFC Calibration Utility has an additional feature: he simply appends each string to the end of the text field as it is being built, thus the requirement they be in ascending index order. In his case the strings may be null-terminated without filling the field; and in fact I suspect he ignores the index byte (18) altogether. However, I will not add this to the requirements for the utility. Therefore for portability’s sake each string must fill the field completely until the last, which may be null terminated. On the other hand, other utilities may take similar advantage of the incremental requirement of the message order.

4.14.4.1.4 Label TextOnce the number of choices has been specified, you can start overriding text fields. These can be overridden in any order. Here we talk about the labels for the choices.

By “title” I mean the name or title of the item that’s being configured. Some examples are “Device Selector”, “Fuel Switch”, “Throttle Quadrant”. (What you’re choosing between will be evident when you get to the labels for the choices.)

These labels tell the user what choices he has for the configuration item. For example, “Device Selector” might have “0” and “1” or “Pilot” and “Copilot”. “Fuel Switch” would choose between “3-Way w/cutoff” and “4-way” to customize the firmware to the hardware. “Throttle Quadrant” would let you choose between “Joystick” and “PFC HID reports”, controlling how throttle quadrant values are transmitted.

Byte 19 will be set to a value from 0x80 to 0xBF to specify that this is a Label Text field. The low four bits hold the index, specifying which choice is being defined.

Between the four-byte header at one end and two bytes for the index fields at the other end, we have 14 bytes remaining for actual text. So what happens if your string is longer? Well, that’s what the Text Idx field in byte 18 is for.

The text is broken into strings of (up to) 14 bytes. Each string has an index. This tells the software where the text fits into an

arbitrarily large array. Each string may completely fill the 14-byte space provided with no null

termination. If the last string stops short of 14 bytes the remaining bytes are filled with 0. However:

It is not required that the last string be null-terminated. If the last string happens to exactly fill the last 14-byte field, the software must accept it as the end of the string. Since there is no specific indication that a particular string is the last, we recommend the software force a null termination after the end of each string as they come in.

Page 394: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The fields must be sent in ascending index order.

Note that Mike Thompson’s PFC Calibration Utility has an additional feature: he simply appends each string to the end of the text field as it is being built, thus the requirement they be in ascending index order. In his case the strings may be null-terminated without filling the field; and in fact I suspect he ignores the index byte (18) altogether. However, I will not add this to the requirements for the utility. Therefore for portability’s sake each string must fill the field completely until the last, which may be null terminated. On the other hand, other utilities may take similar advantage of the incremental requirement of the message order.

4.14.4.1.5 ExamplesHere are three real-life examples. The first two are from the PFC 1000 GDU; the last is from the PFC 1000 Audio Panel. Each one illustrates at least one different aspect of using the override feature.

4.14.4.1.5.1 Selector: leaving a text field at its defaultThe defaults for CALIBRATE_SELECTOR:

Title “Device Selector”Number of Values 2

Value 0 Label “0”Value 1 Label “1”

As you can see in this PFC 530 example, the Title Text shows in at least three different places. The Label Text for each selection shows in the radio button list, and the current selection shows in the “Available Items to Calibrate” window.

Page 395: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Selector 0 typically means Pilot and selector 1 typically means Copilot, though there are other uses as well. In case of the G1000 the Pilot’s GDU is called a PFD and the Copilot’s GDU is called an MFD. It would still be meaningful as 0 and 1 but we can now use messages to change the text without adding a new command and writing more software. In this example we do not need to override the Title Text so we’ll just leave it alone.

Our new values for CALIBRATE_SELECTOR:Title “Device Selector” (not changed)

Number of Values 2Value 0 Label “PFD”Value 1 Label “MFD”

We start by establishing the configurable item normally. This fills in the defaults.

Next we override the number of values. In this case it doesn’t actually change.

After that we override the first Label Text. Notice byte 19 is now a value index by virtue of having its high bit set.

Last we override the second Label Text.

The result is slightly more meaningful selector text for the PFC 1000 GDU panels:

4.14.4.1.5.2 Panel Type: extending the number of valuesIn this case I chose the MFD Type (CALIBRATE_MFD_OPTIONS) because it has the largest number of values to start with. In reality that is not important; you can override any of the messages from CALIBRATE_EQUIPMENT_PRESENT (0x0005) to

Page 396: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

CALIBRATE_DISPLAY_BACKUP_MODE (0x0013) and specify as many values as you like. (As of October 2011 the PFC utility has an upper limit of 8 values.) I used CALIBRATE_MFD_OPTIONS initially for testing and never bothered to change it.

The defaults for CALIBRATE_MFD_OPTIONS:Title “MFD Type”

Number of Values 4Value 0 Label “Total Harness”Value 1 Label “New Master”Value 2 Label “Carb Heat”Value 3 Label “New USB Panels”

Here is a screenshot:

The G1000 GDUs come in at least six flavors, each depending on the autopilot button layout. I won’t go into the details here; that information is abstracted into the firmware. The panel type will be set during manufacture.

Our new values for CALIBRATE_MFD_OPTIONS:Title “G1000 PANEL”

Number of Values 6Value 0 Label “GDU-1040”Value 1 Label “GDU-1042”Value 2 Label “GDU-1043”Value 3 Label “GDU-1044”

Page 397: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Value 4 Label “GDU-1044B”Value 5 Label “GDU-1045”

As before, we start with a normal response for CALIBRATE_MFD_OPTIONS. (The Limits field is not used with this message.)

This time we specify six values:

The Label for the first value:

The rest are almost the same, so I’ll skip ahead to the sixth value:

And here is where we override the Title Text. Note that byte 19 is now 0xFF, which is what makes it the Title Text and not another Label Text.

And the result looks like this:

4.14.4.1.5.3 Switch mode: multi-message text overrideThis is an example where the new Title Text was more than 14 characters and so needed to be split up and sent in two messages. Otherwise it is unremarkable; I’ll skip the “before” step and the other text fields.

Page 398: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Our new values for CALIBRATE_MFD_OPTIONS:Title “Display Backup Switch mode”

Number of Values 3Value 0 Label “Real G-1000”Value 1 Label “Latching”Value 2 Label “Momentary”

Going straight for the Title Text, here is the first part:

Notice we incremented byte 18 for the second part:

(Note: actually the second part is incorrect; bytes 4 through 14 should be shifted to the right, and a space inserted into byte 4. The screenshot below shows the corrected result.)

And the result looks like this:

4.14.4.2 Calibration Text OverridesThis section is unfinished and will eventually describe how to override the text prompts for calibration messages (as opposed to overriding the text for configuration messages described in section 4.14.4.1). This section would be for overriding the text for messages 50 (0x0032) and above, starting with CALIBRATE_ELEV_TRIM.

At this time we have no examples and the implementation is incomplete and non-working.

Page 399: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Most of the details of the override for Calibration are the same as those for Configuration; however, instead of individual values, Calibration has prompts for each calibration step. Therefore when you create Calibration text overrides, leave out the Label Text messages and instead send Prompt Text messages.

The messages that are used to send Label Text have an index (byte 19) with bit 7 set and bit 6 cleared, so messages can have a value from 0x80 to 0xBF. This allows for 64 different radio button choices. (If you need more than that, perhaps it’s time to re-think your design! At this time the PFC utility allows for 8.)

Instead we are overriding the prompt text for each point at which you would have the user click on the Calibrate button (which doesn’t happen during configuration; instead the user clicks on a radio button). These messages have both bits 6 and 7of the index set to 1, and so use an index (byte 19) of 0xC0 to 0xFE (0xFF is already assigned to mean Title Text). This allows for 63 different calibration points. (As before, if you need more then you’re probably doing something wrong. All the PFC calibrations require 4 points or less.)

As with the other text fields, you can specify more than 14-character fields by incrementing the Text Index (byte 18) and appending more text. In fact, by their nature the prompts are instructive, not merely descriptive, and so will probably require a large number of messages to complete.

Page 400: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15Metadata Messages

4.15.1 Messages

Header DataClass (FF) Message Index Format varies per message. All unused bytes set to 0.

All values are in hexadecimal.

4.15.1.1 METADATA_NONE (0)This value is invalid and may not be used to send data.

4.15.1.2 METADATA_FORMAT_VERSION (1)Command: Header Data (16 bits)

(PC to HWC) FF 01 02 00

Response: Header Data (16 bits)(HWC to PC) FF 01 02 00

All values are in hexadecimal.

Contains the version number of this command/control format. The PC sends the controller its format, and then the controller sends its in response. The controller is not obligated to do anything with the PC’s information.

4.15.1.3 METADATA_REQUEST_FULL_REPORT (2)Command: Header

(PC to HWC) FF 02

Response: Header(HWC to PC) FF 02

All values are in hexadecimal.

This is the method by which the PC discovers the initial values of all the controls, as well as discovering other data.

1. The PC sends a METADATA_REQUEST_FULL_REPORT command.2. The hardware controller returns a list of current data including none, any or

all of the following in no particular order:a. The current position of all switches and knobs that make sense to

send.

Page 401: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

b. Current step counts from all the encoders. (Being able to send “zero steps” make this practical.)

c. Current positions of all momentary buttons.d. A list of supported displays, actuators, indicators and other output

devices, or other controls that whose values were not reported. (See 4.15.1.16.)

e. The firmware version number. (See 4.15.1.13.)f. The firmware date. (See 4.15.1.12.)g. A CALIBRATE_BAD message. (See 4.14.1.4.)h. A CALIBRATE_MODE response. (See 4.14.1.3.)

3. The hardware controller also passes an equivalent “full report” command to any slaves it might support, and may pass through any or all of the information given above from those slaves.

4. When the Full Report is finished the hardware controller will send a METADATA_REQUEST_FULL_REPORT response.

The PC must not wait indefinitely for the METADATA_REQUEST_FULL_REPORT response. Five seconds is the suggested timeout.

The PC is expected to use the Full Report to populate a list of what hardware it expects to support. This is particularly useful for sending data to one of several hardware controllers, especially if two or more of those controllers potentially support identical functions. For example, the gear lights may be connected to the avionics stack controller or to the console controller. If both correctly report where the gear lights are, the PC need only send gear light messages to the correct controllers.

On the other hand, having the new Cypress-based panels replace the older hard-wired panels means that a console may report that it supports some or all of the same switches as the panel. These panels are stand-alone USB devices that are screwed into the console; externally they appear to be the same, but the wiring is far simpler and the panel can be replaced in minutes with a minimum of fuss. Rather than write custom HWC3 code for each possible combination, we’ve decided that the PC must intelligently choose when it sees the same control in two places. If there are both a panel and a console that support the same control, the PC should assume that the console does not have a switch wired for that control, and should ignore any messages coming from the console for that control. (For example, the master power panel in an MFD can be replaced by a U-HID-based panel providing Battery Master, Avionics Master, Alternators, and Magneto Switches that would previously have been handled by the HWC3.)

4.15.1.4 METADATA_ELEVATOR_TRIM_PRESET (3)This message is now METADATA_TRIM_CONTROL_PRESET.

Page 402: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.5 METADATA_TRIM_CONTROL_PRESET (3)Command: Header Position

(PC to HWC) FF 03 16 bitsAll values are in hexadecimal.

Sets the position of the trim without actually moving the hardware, if possible. This is provided to allow the PC to preset (or reset) the current trim position of a virtual trim wheel or an encoder-based trim wheel where the actual position is merely a number. If this is used on a trim wheel that has a physical position (e.g. where we use a potentiometer as the shaft encoder), the trim wheel will attempt to servo to the desired position.

4.15.1.6 METADATA_ELEVATOR_TRIM_LIMITS (4)This is now METADATA_TRIM_CONTROL_LIMITS and serves the same function.

4.15.1.7 METADATA_TRIM_CONTROL_LIMITS (4)Note: in order to keep the interface abstract we are obsolescing the command portion of this message. Instead you should use METADATA _TRIM_SENSITIVITY (4.15.1.23) if it is available.

It doesn’t make sense to set limits based on hardware characteristics that may change from system to system.

Response:Header Limits

reservedreserved reserved reserved

Low High(HWC to

PC)FF 04 16

bits16 bits

0000 0000 00 00 0000

Response:Header

Limits Take Off Range

Trim Selector (word

align)Hand Turns

Low High Lower Upper(HWC to

PC)FF 04 16

bits16 bits

16 bits 16 bits 0x 00 16 bits

All values are in hexadecimal.

This command attempts to set the trim wheel sensitivity (in the case of an encoder-based trim wheel) by setting its total range. The wheel will continue to count up or down by one for each encoder pulse. A wider range will make the wheel less sensitive and more precise; a narrower range will make the wheel more sensitive and less precise.

The hardware controller will respond with the limits that it is actually supporting. If the controller can support the requested limits, it will use them and return the same values. If the controller responds with different values it means the requested values could not be supported. The PC is then required to use the values returned. It may attempt to request different values; there is no limit imposed to the number of these messages. However in the end the PC must use the last values returned.

Page 403: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

In the case of a potentiometer-based wheel the controller will send back whatever limits it has established, which in most cases will be the calibration limits. For example, the B200 only supports a specific range and will always send back the same limits.

Note that these values are the same values that may be sent back as calibration values with the CONTROLS_ELEVATOR_TRIM message (4.1.1.2), CONTROLS_AILERON_TRIM message (4.1.1.3), or CONTROLS_RUDDER_TRIM message (4.1.1.4). Either one or the other (the CONTROLS_ message or METADATA_ message) should be applied, but not both at the same time; they do not interact, rather, they are duplicates. Values returned with the CONTROLS_*_TRIM message should take precedence, but in reality both sets of values should be the same if they’re both supported.

The Hand Turns value in the response is optional. If not supported, it will be returned as 0.

For a detailed explanation of how the trim control messages interact, see 5.1.

4.15.1.8 METADATA_FLOW_CONTROL (5)Response: Header Control

(HWC to PC) FF 05 8 bitsAll values are in hexadecimal.

This allows the hardware controller to ask the PC to stop sending messages if it cannot keep up. Assume that communications is permitted by default at any reset, power-on, or in the absence of any flow control messages.

4.15.1.8.1 Control0. OK to send.1. Stop sending and allow the hardware controller to catch up.

In retrospect, this message is entirely unnecessary.

4.15.1.9 METADATA_DEBUG (6)Response: Header Data

(HWC to PC) FF 06 unformattedAll values are in hexadecimal.

This is provided as a courtesy to allow programmers to send debug data. C2ProTestCon.exe or other console-based test programs should display this message and its data but not attempt to interpret the data. Other programs should

Page 404: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

quietly throw away these messages. Programmers should eliminate or keep debug messages to a minimum in release code.

4.15.1.10 METADATA_BLANK_DEVICE (7)Command: Header Device

(PC to HWC) FF 07 8 bitsAll values are in hexadecimal.

Sends a blanking command to the enumerated device. Ignored if the device is not present or not supported. This is intended to blank all display items on the device – indicators, annunciators, digital displays – anything under control of the device.

This command is a metadata command and not a particular display, indicator, or annunciators command because it is intended to blank all the outputs on a device, which may in fact include several different kinds of output devices. It’s a command that encompasses the entire device.

4.15.1.10.1 Device ID0. COM11. COM22. NAV13. NAV24. DME5. ADF6. Autopilot7. Transponder8. Altitude Pre-Select9. Audio Panel10. Electric Trim Indicator11. Jet console lights12. Annunciator 20 (B200)13. Annunciator 36 (B200)14. All devices (e.g. all panels on an avionics stack)

Which devices are available on a particular simulator is established with supported reports.

4.15.1.11 METADATA_RE_INITIALIZE (8)Not supported at this time.

Page 405: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.12 METADATA_FIRMWARE_DATE (9)Response: Header Device ID Format Year Month Day

(HWC to PC) FF 09 16 bits 00 16 bits 8 bits 8 bits

Response: Header Device ID Format Year(HWC to PC) FF 09 16 bits 01 16 bits

Response: Header Device ID Format Month(HWC to PC) FF 09 16 bits 02 8 bits

Response: Header Device ID Format Day(HWC to PC) FF 09 16 bits 03 8 bits

All values are in hexadecimal except bit counts.

Year: This is a 16-bit value that contains the actual year. Month: This is the month, a number from 1 to 12. Day: This is the day of the month, a number from 1 to 31.

This message tells the PC the release date programmed into the firmware. No checks are made on the validity of the date; it is up to the firmware programmer to assure that he not use such dates as February 31.

4.15.1.12.1 Device IDThe device ID is an enumerated value assigned when the device is designed. Generally slave devices use a device ID equal to their slave ID. Newer USB devices use their USB PID. (I still haven’t figured out why I didn’t do that in the first place.)

ID Slave Device ID Master Device20 COM1 1001 Avionics Master22 COM2 1002 Cirrus 2 Pro24 NAV1 1003 MFD26 NAV2 1004 Mini Cessna G100028 ADF 1005 Mini Desktop MFD2A DME 1006 B200 Console2C Transponder 1007 B200 Panel2E Autopilot 1008 Mini Baron G100030 GPSA 1009 Mini Bonanza G100032 GPSB 100A Cirrus II34 Altitude Pre-Select 100B DA4236 Audio Panel 100C MFD Full-sized Desktop38 B200 Autopilot 100D MFD G1000 Cessna3A ADF rev B 100E PFC1000 Standalone3C DME rev B

Page 406: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

3E Autopilot rev B ID Panel Device40 Pilot D000 Engine Start Panel42 Brake D001 Turbo Master Panel44 Copilot D002 PFC 430 Panel50 On-board Slave D003 RIC-852 PFD D004 Lights panel54 Map D005 Landing gear panel56 G1000 Retro Slave 1 D006 Flaps panel58 G1000 Retro Slave 2 D007 IOS panel5A G1000 Retro Slave 3 D008 Control loading5C G1000 Retro Slave 4 D009 Fuel Select Panel5E G1000 Retro Slave 5 D00A Parking Brake Panel68 Electric Trim Indicator D00B PFC 100072 C90 D00C MFD Circuit Breaker Panel74 Annunciator 20 D00D MFD Pitch and Roll76 Annunciator 36 D00E MFD Jet Master Panel78 Relay 24 D00F G1000 Audio Panel7A Circuit Breaker Panel 1 D010 MFD Rudder Pedals7C Circuit Breaker Panel 2 D011 Throttle Quadrant7E Circuit Breaker Panel 3 D012 Relay Board80 PFC 430 A D013 PFC 530 Panel82 PFC 430 B D014 PFC Yoke84 RIC-8 (pilot) D015 C90 Annunciator Panel86 RIC-8 (copilot) D016 Jet 737 Engine Dsp Ctrl Panel88 Elevator Trim D017 Jet 737 Auto-brake Panel8A Rudder Trim D018 Jet 737 Ground Prox Panel8C Aileron Trim D019 PFC elevator trim8E MFD Fuel Select panel D01A PFC Sperry Autopilot90 PFC 530 D01B B200 20 Annunciator Panel

D01C B200 36 Annunciator PaneD01D Altitude Pre-SelectD01E COMx radio panelD01F B200 Pilot CB panelD020 B200 Copilot CB panelD021 Column ConsoleD022 RIC-10D023 Power/Lighting DriverD024 PFC Aileron TrimD025 PFC Rudder TrimD026 DCX CB PanelD027 DCX Anti Ice PanelD028 GTX 182 CB PanelD029 GTX 172 CB PanelD02A Cessna Throttles Flaps Panel

Page 407: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

D02B GTX Baron Master PanelD02C GTX Baron Flaps PanelD02D GTX Baron Left CB PanelD02E GTX Baron Right CB PanelD02F ADF radio panelD030 DME radio panelD031 XPNDR radio panelD032 Autopilot PanelD033 Bell 206 Misc PanelD034 Bell 206 Ovrhd Switch PanelD035 Bell 206 Ovrhd Breaker PanelD036 Bell 206 Ann PanelD037 PFC Audio PanelD038 PFC 500/600D039 Avionics IOS PanelD03A B200 Landing Gear PanelD03B Helicopter Flight ControlsD03C Cessna 206 Master PanelD03D Cessna 206 Breakers UpperD03E Cessna 206 Breakers MidD03F Cessna 206 Breakers Lower

ID Panel Device D040 Upper CB panel for Quest KodiakC209 C2 Piston Master panel D041 Lower CB panel for Quest KodiakC20A C2 Turboprop Master D042 Master panel for Quest KodiakC20B C2 Jet Master panel D043 Lights/Anti-Ice Panel for Quest KodiakC20C C2 Lights/Anti-ice/Fuel

Select panelD044 Oxygen, ELT, Hobbs, Fuel Select for

Quest KodiakC20D C2 Flaps panel D045 S-TEC 55x autopilot panelC20E C2 Yoke panel D046 GMC 710 autopilot control headC20F CII Master Panel D047 Dual Yoke boardC210 CII Fuel/Flaps/Throttle D048 Dual/Triple Trim board

ID Slave device (no inherent address)0400 MFD Circuit Breaker Slave0401 G1000 Autopilot Slave0402 PFC 1000 Comm Panel Slave0403 PFC 430 GPS Slave

E000 Test onlyE001 Generic slave replacement, test only

All ID fields are in hexadecimal.

Page 408: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.13 METADATA_FIRMWARE_VERSION (10)Response: Header Device ID Format Major Minor

(HWC to PC) FF 0A 16 bits 00 8 bits 8 bits

Response: Header Device ID Format Major(HWC to PC) FF 0A 16 bits 01 8 bits

Response: Header Device ID Format Minor(HWC to PC) FF 0A 16 bits 02 8 bits

Response: Header Device ID Format Major Minor Beta Description(HWC to PC) FF 0A 16 bits 03 8 bits 8 bits 1 char 12 chars

All values are in hexadecimal except bit/char counts.

This message tells the PC the release version programmed into the firmware.

See 4.15.1.12.1 for the Device ID.

4.15.1.14 METADATA_UNKNOWN_COMMAND (11)Response: Header Command

(HWC to PC) FF 0B 8 bitsAll values are in hexadecimal except bit counts.

An unknown or unsupported metadata command was sent to the hardware controller.

4.15.1.15 METADATA_TEST_DEVICE (12)Command: Header Device

(PC to HWC) FF 0C 8 bitsAll values are in hexadecimal except bit counts.

Sends a lighting test command to the enumerated device. Ignored if the device is not present or not supported. This is intended to light all display items on the device – indicators, annunciators, digital displays – anything under control of the device.

This command is a metadata command and not a particular display, indicator, or annunciators command because it is intended to test all the outputs on a device, which may in fact include several different kinds of output devices. It’s a command that encompasses the entire device.

See 4.15.1.10.1 for the Device list.

Compare to METADATA_LAMP_TEST (32), which is a more traditional lamp test that restores the displays to normal operation after the test is complete.

Page 409: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.16 METADATA_REPORT_SUPPORTED (13)Response 0: Header Device Class Selector Message Index reserved1 reserved(HWC to PC) FF 0D 8 bits 8 bits 16 bits 00 00Response 1: Header Device Class Selector Message Index Data2 reserved(HWC to PC) FF 0D 8 bits 8 bits 16 bits 8 bits 00Response 2: Header Device Class Selector Message Index Data3 reserved(HWC to PC) FF 0D 09 8 bits 16 bits 16 bits × 3 00Response 3: Header Device Class Selector Message Index reserved Data4

(HWC to PC) FF 0D 0B 8 bits 16 bits 16 bits × 1 32 bits x 2Response 4: Header Device Class Selector Message Index Control5 reserved(HWC to PC) FF 0D 08 8 bits 16 bits 16 bits 00

All values are in hexadecimal except bit counts.1 Normal. Most commands use this format which contains no additional information.2 Test, blanking and trim metadata commands use this to specify which device is being reported.3 Control loading commands (ACTUATOR_PITCH, ACTUATOR_ROLL, and ACTUATOR_YAW) use this format to specify their value ranges. The first signed 16-bit field specifies the lowest value (left or down), the second specifies the highest value (right or up), the third specifies the neutral value. Note that control loading commands are depreciated.4 Analog Display commands need to be scaled. Analog displays can specify their limits in this report. The first unsigned 32-bit field specifies the lowest value, the second specifies the highest value. If no range is specified (if both values are 0) assume 0-1023. The reserved field is there to align the following fields to 32-bit boundaries.5 Specifies a Digital Control index. After the plug-in receives this report, it transmits any operation of the requested Digital Control (the Selector must also match) to the requesting device. The Message Index field is a message from CLASS_MODE_CONTROL a.k.a. CLASS_ILLUMINATOR.

Zero or more of these commands are sent during the full report. These should be sent to report support for output devices that do not otherwise have report messages associated with them (e.g. indicators, annunciators, displays, actuators) or encoders that cannot send zero steps, mainly on slaves. (Encoders that can send zero steps may report via METADATA_REPORT_SUPPORTED or via normal full reports as desired.)

METADATA_REPORT_SUPPORTED will send one message per device with an appropriate selector. So for example if there are two CRS encoders (one for each pilot), the hardware controller would send two reports: one for the pilot CRS and one for the copilot CRS, each with its own selector.

Page 410: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

We allow redundant reports – if a hardware controller sends both data and a supported report for the same command, or sends multiple supported reports for the same command, the PC is required to handle it gracefully.

4.15.1.16.1 FormatFor most commands we simply send the header of the command being reported.

4.15.1.16.1.1 Device ClassDevice Class is 0x01 to 0xFF. A device class of 0x00 is not permitted. This field describes the type of device that is being reported or set, such as an analog control.

4.15.1.16.1.2 SelectorThe selector allows the message to apply to multiple inputs or outputs of the same type. This usually applies to symmetrical devices, e.g. inputs from left and right sensors, or control of left and right engine speed.

When reporting Metadata commands, this field is always 0, as Metadata commands do not include a selector.

4.15.1.16.1.3 Message IndexThis selects the specific message inside a device class. Every message has a number; this is the message number. With two bytes (16 bits) available, that allows us up to 65,535 different messages for each type of device (e.g. 65,535 different indicators, not counting multiple indicators for left vs. right, and so on). This multi-byte field is encoded LSB-first. A message index of 0 is invalid.

When reporting Metadata commands, the message index is cast to 16 bits and the upper byte (MSB) of this field will be 0.

4.15.1.16.1.4 Data

4.15.1.16.1.4.1 Response 0Response 0: Header Device Class Selector Message Index reserved reserved(HWC to PC) FF 0D 8 bits 8 bits 16 bits 00 00Commands that do not use the data field will set it to zero.

4.15.1.16.1.4.2 Response 1: 8 Bits × 1Response 1: Header Device Class Selector Message Index Data reserved(HWC to PC) FF 0D 8 bits 8 bits 16 bits 8 bits 00Blanking and test commands are not associated with any particular display – they refer to the entire device, so we made metadata commands and created enumerated lists of supported displays. To report support for those commands we need to include the display value as well.

Page 411: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

0. COM11. COM22. NAV13. NAV24. DME

5. ADF6. Autopilot7. Transponder8. Alt Pre-select9. Audio panel

10. Electric trim indicator

11. Jet console lights12. ANN2013. ANN3614. all

Similarly the trim commands (METADATA_TRIM_CONTROL_LIMITS, METADATA_TRIM_CONTROL_TIME, and METADATA_TRIM_CONTROL_SENSITIVITY) will provide a selector in this field:

0. Elevator trim1. Rudder trim2. Aileron trim

Because it is a metadata command there is no selector; rather than make a special case of the field definitions for reporting metadata commands, we zero the selector field, expand the 8-bit index value to 16 bits, and add a separate data field.

4.15.1.16.1.4.3 Response 2: 16 bits × 3Response 2: Header Device Class Selector Message Index Data reserved(HWC to PC) FF 0D 09 8 bits 16 bits 16 bits × 3 00

Control loading commands (ACTUATOR_PITCH, ACTUATOR_ROLL, and ACTUATOR_YAW) have a need to establish limits information and so they use this format to specify their value ranges. The first 16-bit field specifies the lowest value (left or down), the second specifies the highest value (right or up), the third specifies the neutral value.

4.15.1.16.1.4.4 Response 3: 16 bits × 1 (reserved), 32 bits × 2Response 3: Header Device Class Selector Message Index reserved Data(HWC to PC) FF 0D 0B 8 bits 16 bits 16 bits × 1 32 bits x 2

The reserved 16-bit field is present to word-align the following 32-bit words and should be set to 0.

Analog displays need to establish their limits via this command. We have reserved 32 bits for the analog display value. In this command the first 32-bit field specifies the low limit, the second specifies the high limit.

4.15.1.16.1.4.5 Response 4: Control Operated, 16 bits × 1

Page 412: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Response 4: Header Device Class Selector Message Index Control reserved(HWC to PC) FF 0D 08 8 bits 16 bits 16 bits 00

This allows a device to request the plug-in send status reports of a particular input device. More control types, and corresponding messages, may be added in the future as needed.

The Device Class field is always 8 (CLASS_ILLUMINATOR or, more appropriately, CLASS_MODE_CONTROL).

The Selector must match the desired control's selector; it is actually tied to the Control field, not to the Message Index field.

The Message Index will be a Mode Control/Illuminator message index that corresponds to the desired control type.

o MODE_DIGITAL_CONTROL_OPERATED (4.8.1.10) is used for Digital Controls (switches and buttons).

The Control is actually also a message index, but it is the message index for the target control – that is, for the control for which the device desires the status.

Once the a device sends this message, the PC will forward messages from the requested control to the device via the corresponding CLASS_MODE_CONTROL message. So, for example, if a panel requests the status of SWITCH_PANEL_LIGHTS selector 0, then every time the plug-in receives a SWITCH_PANEL_LIGHTS message with selector 0, it will pass the value along via the MODE_DIGITAL_CONTROL_OPERATED message.

Note that at the end of a Full Report, the PC should send an unsolicited status update of all controls that have had this request made.

4.15.1.17 METADATA_EQUIP_ADDED_REMOVED (14)

Response: Header Device Type Status(HWC to PC) FF 0E 8 bits 8 bits

All values are in hexadecimal except bit counts.

This reports whether a device has been added to (plugged into) or removed from (unplugged from) the hardware controller. This is mainly for detection of rudder pedals, and is intended to report whether an approved hardware combination has been altered.

4.15.1.17.1 Device TypeAn enumerated list of devices.

0. Rudder pedals

Page 413: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.17.2 StatusCurrent status of the device.

0. Device removed.1. Device added.

4.15.1.18 METADATA_INVOKE_BOOTLOADER (15)Command: Header VID PID Data

(PC to HWC) FF 0F 16 bits 16 bits Command

Response: Header VID PID Data(HWC to PC) FF 0F 16 bits 16 bits Response

All values are in hexadecimal except bit counts.

This is intended for support of field programming of flash devices. The PC client program forces the hardware controller to pass control to its loader; once the loader has control it will interact with the client to install new firmware on the chip. Loader commands are beyond the scope of this document.

The hardware controller will check the VID and PID of the command; they must match its own VID and PID.

If the VID and PID match and the hardware controller has a bootloader, it will send a response and then invoke the bootloader.

4.15.1.18.1 Command0. Request bootloader.

4.15.1.18.2 Response0. Request OK, invoking bootloader.1. VID or PID mismatch. Response includes the hardware controller’s

VID and PID, not the requested VID and PID.2. No bootloader available.

4.15.1.19 METADATA_PING (16)Command: Header

(PC to HWC) FF 10All values are in hexadecimal.

Sent periodically by the PC to prevent the device from going into a time-out power-down mode. The time period involved is usually on the order of 10 seconds between pings.

Page 414: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.20 METADATA_ELEVATOR_TRIM_SPEED (17)This is now called METADATA_TRIM_CONTROL_TIME and serves the same function.

4.15.1.21 METADATA_TRIM_CONTROL_TIME (17)

Command: Header All or Trim Switches speed Autopilot Servo speed Trim Selector(PC to HWC) FF 11 16 bits 16 bits 0x

Response: Header All or Trim Switches speed Autopilot Servo speed Trim Selector(HWC to PC) FF 11 16 bits 16 bits 0x

All values are in hexadecimal except bit counts.

Trim Selector:0. Elevator trim1. Rudder trim2. Aileron trim

This specifies and reports the time required to move the trim end-to-end. Rudder and aileron trims only use one speed each (‘All’). The elevator trim may support two speeds (‘Trim Switches’ and ‘Autopilot Servo’). Rudder and aileron trims will ignore the Autopilot Servo speed field.

The elevator trim is capable of running at two different speeds depending on whether the autopilot or the pilot is running the motor. Some airplanes (e.g. the Boeing 727) have two pitch trim motors:

Pitch trim is accomplished by repositioning the stabilizer. …The high-speed electric trim motor is controlled by these main electric trim switches on the control wheels.  …The autopilot uses the slow speed motor for pitch trim. (Reference)

In most cases however the speeds will be the same.

Each unsigned value represents the time it should take the trim motor to traverse from one end to the other, in 100ths of a second. Values are 0 to 655.35 seconds, but any values that would violate physics will be ignored or railed (adjusted to the nearest legal value). The values will be ignored if the trim motor speed is not adjustable. The default value is 20 seconds (2,000 100ths).

Page 415: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

In this context the phrase “values that would violate physics” refers to the simulator trim motor’s acceleration and speed limitations, rather than to the simulated airplane’s limitations.

For a detailed explanation of how the trim control messages interact, see 5.1.

4.15.1.22 METADATA_ELEVATOR_TRIM_SENSITIVITY (18)

This is now METADATA_TRIM_CONTROL_SENSITIVITY.

4.15.1.23 METADATA_TRIM_CONTROL_SENSITIVITY (18)

Command: Header Sensitivity Trim Selector(PC to HWC) FF 12 16 bits 0x

Response: Header Limits Take Off RangeTrim

Selectorword align

Hand Turns

Low High Lower Upper(HWC to PC) FF 04 16 bits 16 bits 16 bits 16 bits 0x 00 16 bits

Optional full report or additional response:Response: Header Sensitivity Trim Selector

(HWC to PC) FF 12 16 bits 0xAll values are in hexadecimal except bit counts.

Trim Selector:0. Elevator trim1. Rudder trim2. Aileron trim

This command attempts to set the trim wheel sensitivity. The Sensitivity is in 100ths of a hand turn and represents the number of hand turns of the wheel it takes to traverse the entire range of the trim.

The hardware controller will respond with a METADATA_TRIM_LIMITS (4.15.1.6) response that provides the range of values that it will be sending. The limits will also be sent back as calibration limits value with each CONTROLS_ELEVATOR_TRIM, CONTROLS_RUDDER_TRIM or CONTROLS_AILERON_TRIM response.

The controller may optionally send a METADATA_TRIM_CONTROL_SENSITIVITY response, either or both in response to the command and during full reports.

Page 416: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

In the case of a potentiometer-based wheel the controller will send back its limits, which in most cases will be the calibration limits. For example, the B200 only supports a specific range and will always send back the same limits.

Note that these values are the same values that may be sent back as calibration values with the CONTROLS_ELEVATOR_TRIM, CONTROLS_RUDDER_TRIM or CONTROLS_AILERON_TRIM message. Either one or the other should be applied, but not both; the two sets of values do not interact, but rather, they are duplicates. Values returned with the CONTROLS_*_TRIM message should take precedence, but in reality both sets of values should be the same if they’re both supported.

A “hand turn” is a somewhat subjective value, but the only one we felt made sense. The only other value that might have a real-world bearing is “number of 360° turns of the wheel”, but what that represents to the simulator may vary at least as much as a hand turn. For example, our B200 simulator’s end-to-end limits are less than 360°, but the old-style MFD trim (with mechanical indicator) turns approximately three full turns end-to-end. It only takes a few (3 or 4) turns of the B200’s wheel to go from one end to the other (and it can be done with a single turn, though not conveniently), but it requires at least 12 turns of the MFD wheel.

We expect that each device will have its own reasonable defaults for this value, and that the user will have a menu item in the simulation software plug-in to override it and will set it to what feels right to him. Since this value is not generally set as part of the airplane model, it can easily be set once and forgotten.

It works out that the MFD-style or C2Pro-style electric trim wheel can be turned up to approximately 1/3 of a full turn (120°) due to its mechanical design. For the encoder version of that trim wheel we will be using 120° of wheel turn as our “hand turn” value, and 8 hand turns as our default sensitivity.

For a detailed explanation of how the trim control messages interact, see 5.1.

Page 417: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.24 METADATA_ELEVATOR_TAKEOFF_RANGE (19)

Command: Header Lower TO Upper TO(PC to HWC) FF 13 16 bits 16 bits

Response: Header Lower TO Upper TO(HWC to PC) FF 03 16 bits 16 bits

All values are in hexadecimal except bit counts.

The take-off range values are in the same scale as the elevator trim limits as returned by the METADATA_TRIM_LIMITS (4.15.1.7) response from either the METADATA_TRIM_LIMITS command or the METADATA_TRIM_SENSITIVITY command. If no take-off range is desired send both values as 0.

If the controller liked the limits sent to it, it will respond with the same limits. Otherwise it will respond with its previous set limits or with zeros.

For a detailed explanation of how the trim control messages interact, see 5.1.

4.15.1.25 METADATA_DEVICE_SELECTOR (20)Response: Header Selector

(HWC to PC) FF 14 8 bitsAll values are in hexadecimal except bit counts.

Defines a global selector for the device. This allows paired devices such as the PFC-1000 MFD and PFD panels to identify themselves without the PC having to receive and interpret live data, which is a more problematical approach.

4.15.1.26 METADATA_MONITOR_TOGGLE_ONOFF (21)

Command: Header Value Values: 0. Release(PC to HWC) FF 15 8 bits 1. Press

All values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

Page 418: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is for toggling the power (on/off) control. Send 1 to press the button, 0 to release.

4.15.1.27 METADATA_MONITOR_TOGGLE_SOURCE_SELECT (22)

Command: Header Value Values: 0. Off(PC to HWC) FF 16 8 bits 1. On

All values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

This is for toggling the source select (video input selector) control. Send 1 to press the button, 0 to release.

4.15.1.28 METADATA_MONITOR_MENU_SELECT (23)

Command: Header Value Values: 0. Off(PC to HWC) FF 17 8 bits 1. On

All values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

This is for toggling the menu control. Send 1 to press the button, 0 to release.

4.15.1.29 METADATA_MONITOR_UP_OR_LT (24)Command: Header Value Values: 0. Off

(PC to HWC) FF 18 8 bits 1. OnAll values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

Page 419: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is for toggling the up-or-left (↑/←) dual-purpose control. Send 1 to press the button, 0 to release.

4.15.1.30 METADATA_MONITOR_DN_OR_RT (25)Command: Header Value Values: 0. Off

(PC to HWC) FF 19 8 bits 1. OnAll values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

This is for toggling the down-or-right (↓/→) dual-purpose control. Send 1 to press the button, 0 to release.

4.15.1.31 METADATA_REFLECT_COMMANDS (26)Command: Header Command

(PC to HWC) FF 1A 8 bits

Response: Header Overflow reserved Reflection(HWC to PC) FF 1A 8 bits 8 bits 10 bytes

All values are in hexadecimal except bit/byte counts.

This command supports a debug mode that can be enabled to allow the test console utility to see which commands have been sent to a controller without requiring a USB sniffer. Unlike a sniffer, the test console can interpret the messages into human-readable format.

4.15.1.31.1 CommandThe PC will send a 1-byte command to the controller which enables or disables Command Reflect mode.

0. Disable Command Reflect mode (default).1. Enable Command Reflect mode.

4.15.1.31.2 ResponseWhen Command Reflect mode is enabled, the controller will queue up a copy of every command sent to it and send it back as the payload in a metadata message. Reflected commands will be returned in the order they were received. There is no guarantee of order relative to other responses, however, some effort should be made to give priority to the reflected commands.

Page 420: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.31.2.1 OverflowThis byte contains a value from 0 to 255 which reflects the number of commands that could not be reflected because the queue was full when they were received. A value of 0 means that no messages were lost. A value of 255 means that 255 or more messages were lost; there is no specific support for an overflow of the overflow count other than a guarantee that the value will not wrap. This value may be sent with the next message reflected, rather than being synchronized with the stream; it is intended as a general status indication rather than trying to provide for precise debugging of a command flood situation, which should be obvious and can be debugged by other means.

4.15.1.31.2.2 ReservedThis byte is reserved for future expansion.

4.15.1.31.2.3 ReflectionThe next 10 bytes (80 bits) hold, nominally, the last command sent to the controller. It may be a previous command if several are queued up, but all commands will be reflected in the order they were received. Some commands may be discarded for reflection if more were received than could be queued, more quickly than they could be reflected. This may be more likely on a controller that has a particularly small amount of RAM available for the queue.

4.15.1.32 METADATA_VENDOR_NAME (27)Response: Header Text Index reserved

(HWC to PC) FF 1B 17 bytes 3 bits 5 bitsAll values are in hexadecimal except bit/byte counts.

This message allows a vendor other than PFC to identify itself during Full Reports, in order for it to distinguish itself from similar PFC products.

4.15.1.32.1 TextThe text field holds from zero to 17 ASCII bytes of data. As of this writing there is no explicit support for extended character sets; support may be added in the future.

Text fields are null-terminated, except in the case that all 17 characters are used – if the field is filled, termination is implied. If more than 17 characters are required, the string may be extended to multiple messages using the Index field.

Page 421: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

4.15.1.32.2 IndexIf the desired string exceeds 17 characters, it may be split up into multiple strings. One message per 17 characters may be used. Each message includes an index in the least significant 3 bits of byte 19 (counting from 0); up to eight messages may be sent, indexing from 0 to 7. The index indicates the sub-string's relative position in the complete string. This design allows for a vendor name to be up to 136 characters, which should be severe overkill in virtually all cases.

All software must mask the index before using. Do not assume the upper bits will be zero.

4.15.1.32.3 reservedThe five most significant bits of byte 19 (counting from 0) are reserved and must be set to 0.

One or more of these bits might be used in the future to flag character modes, allowing for use of alternate character sets.

4.15.1.33 METADATA_MONITOR_UP (28)Command: Header Value Values: 0. Off

(PC to HWC) FF 1C 8 bits 1. OnAll values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

This is for toggling the up (↑) control. Send 1 to press the button, 0 to release.

4.15.1.34 METADATA_MONITOR_DN (29)Command: Header Value Values: 0. Off

(PC to HWC) FF 1D 8 bits 1. OnAll values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

Page 422: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This is for toggling the down (↓) control. Send 1 to press the button, 0 to release.

4.15.1.35 METADATA_MONITOR_LT (30)Command: Header Value Values: 0. Off

(PC to HWC) FF 1E 8 bits 1. OnAll values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

This is for toggling the left (←) control. Send 1 to press the button, 0 to release.

4.15.1.36 METADATA_MONITOR_RT (31)Command: Header Value Values: 0. Off

(PC to HWC) FF 1F 8 bits 1. OnAll values are in hexadecimal except bit counts.

One of a set of commands for controlling embedded video monitor functions remotely. These commands replace the controls you would normally find on a remote control or on the front panel of a TV or computer monitor but are wired to the processor on the target device.

This is for toggling the right (→) control. Send 1 to press the button, 0 to release.

4.15.1.37 METADATA_LAMP_TEST (32)Command: Header Value Selector Values: 0. Normal Operation

(PC to HWC) FF 1F 8 bits 8 bits 1. Lamp TestAll values are in hexadecimal except bit counts.

The target device performs a lamp test by lighting all relevant indicators, annunciators and displays. Generally this will not affect backlights or analog displays, but the actual results of the test will be dependent on the device functionality, which may in turn depend on which airplane is being simulated.

The device starts in Normal Operation. When put into Lamp Test mode it will save the current state of all relevant outputs and then turn them

Page 423: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

all on (or other action as appropriate). When returned to Normal Operation it will restore the current state of each output.

Note that if, during a Lamp Test, the device receives output updates, it is expected to store the changes as part of the "current state" it is to restore without interfering with the lamp test.

The selector will generally be set to 0, but may be otherwise to support multiple system-wide lamp tests. Nominally the selector will correspond to a SWITCH_ANN_TEST report.

Compare to METADATA_TEST_DEVICE (12), which merely turns on all lamps.

4.15.1.38 METADATA_COUNTThis is not actually a message but a count of metadata messages. It is included as a courtesy to programmers to give them known limits for pre-allocating data space. This value will always be one higher than the highest message value.

Page 424: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5 SystemsSo far, except for calibration, we’ve mostly described individual messages. Now it’s time to try to describe some of the combinations of messages and behaviors that make up systems and subsystems, and how they work.

5.1 Electric Elevator TrimThis is probably the most complex of the various subsystems.

5.1.1 GeneralThe electric pitch trim (a.k.a. elevator trim) subsystem uses one or more of the following messages:

CONTROLS_ELEVATOR_TRIM SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED SWITCH_PITCH_TRIM SWITCH_ELEVATOR_TRIM_ONOFF BUTTON_ELEVATOR_TRIM_DISCONNECT STATUS_ELECTRIC_TRIM_AVAILABLE (ENCODER_ELEV_TRIM never was and probably never will

be implemented) ANN_AP_TRIM_FAIL ANN_ELEC_TRIM_OFF (INDICATOR_ELEVATOR_TRIM never was and probably

never will be implemented) ACTUATOR_PITCH_TRIM_CONTROL ACTUATOR_PITCH_TRIM_SERVO CB_TRIM_ELV EVENT_MOTOR_STOPPED_UNEXPECTEDLY METADATA_ELEVATOR_TRIM_PRESET METADATA_ELEVATOR_TRIM_LIMITS METADATA_ELEVATOR_TRIM_SPEED METADATA_ELEVATOR_TRIM_SENSITIVITY METADATA_ELEVATOR_TAKEOFF_RANGE

5.1.1.1 CONTROLS_ELEVATOR_TRIM and ENCODER_ELEV_TRIM

The analog control message CONTROLS_ELEVATOR_TRIM reports the current position of the trim wheel. The message usually includes limits information that describe the full range of the values; this can be used to scale the value directly to the simulator’s trim system.

Page 425: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

There are currently two types of elevator trim position sensor: a potentiometer, which reports an absolute position, and an encoder, which reports direction and distance changes only.

The ENCODER_ELEV_TRIM message was defined before we had entirely designed the USB protocol; we later decided to abstract the elevator trim to an analog control and never used this message. We neither intend nor anticipate using this message.

5.1.1.1.1 Potentiometer Sensors: the real analog controlUntil April, 2010 all PFC MFD (Modular Flight Deck) simulators have been fitted with a trim that had a DC electric motor with a planetary gear, a 10-turn potentiometer, limit switches, and a mechanical indicator.

The DC motor runs at a fixed speed. It takes approximately 10 seconds to run the trim from one end to the other. (60 (5900 RPM 128 5 12) 3) The actual speed is inexact; the motor is rated at 5900 with no load but friction will vary per installation and will tend to slow the motor down.

The potentiometer is fixed to the motor shaft. The shaft only rotates approximately 7.2 times over the entire range, so less than 75% of the full range of the 10-turn pot is actually used. The pot’s position is read via A/D converter (currently 10 bits, though this may change at any time without warning) and sent via the CONTROLS_ELEVATOR_TRIM message, along with calibrated trim limits.

The mechanical indicator is coupled to the wheel via cam system. The wheel completes three 360 turns to drive the indicator end-to-end.

The mechanical indicator trips switches at either end of its travel, signaling the limits of its travel. (The switches do not actually stop the motor; that is handled in firmware.)

There is no speed control or sensitivity control over this version of the electric trim. Since the pot’s entire range is not used we have implemented a calibration system. Calibration is performed offline via a separate utility; limits are determined and stored in Flash ROM, then reported with the position. The PC code is expected to use those limits to offset and scale the values into the simulator’s trim range. Since the analog hardware is imperfect, values may be sent that are out of the trim limit range; if that happens the PC is expected to rail the values appropriately.

This applies for any absolute position sensor system.

Page 426: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.1.1.2 Relative Encoder sensors: virtual analog controlsDuring the design phase we decided that, to simplify the systems in the long run, we should present an abstract interface for the electric trim. Accordingly we have created a virtual analog control when we have a relative encoder as a sensor instead of a potentiometer.

Absolute encoders are not currently being used. Should any such be used in the future, if there is a way to offset an absolute encoder in firmware such that it can be treated as a relative encoder, we will consider it the equivalent of a relative encoder; otherwise we will consider it the equivalent of a potentiometer. We are using “encoder” and “potentiometer” as abstract terms meaning “relative” and “absolute” sensors.

Where a pot inherently indicates its absolute position, a quadrature encoder only indicates change as direction and distance. Therefore to abstract an encoder to a potentiometer we have to keep track of position by starting at a nominal or arbitrary point and counting steps as we receive notice of position change. Then we report our virtual position accordingly.

We can adjust the end-to-end time and the sensitivity (for turning by hand) by altering the scale of the endpoints, how we count the steps, and/or the speed of the motor, depending on exactly what hardware we have.

5.1.2 Cirrus II

5.1.2.1 Present ModelLet’s start with the simplest first. The Cirrus II Elevator Trim consists only of a 3-position momentary rocker switch on the yoke. All the trim handling is done by the simulator. There is no wheel and no indicator.

When the user operates the trim switch the CII will either send SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED or SWITCH_PITCH_TRIM messages. (SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED was implemented before our supported report system was designed; otherwise we would have used the supported reports to determine if there were an actual motor to turn.)

When the PC receives a SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED message it will

Page 427: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

use the switch to run the virtual trim in the simulator. The simulator is always in control of the elevator trim. We are hoping to obsolete this message.

The PC software should also be prepared to receive SWITCH_PITCH_TRIM messages when there is no actual trim motor. You can determine this because during the full report there will be no supported report for ACTUATOR_PITCH_TRIM_SERVO or ACTUATOR_PITCH_TRIM_CONTROL and no CONTROLS_ELEVATOR_TRIM. When the PC receives a SWITCH_PITCH_TRIM message with these conditions it will use the switch to run the virtual trim in the simulator. The simulator is always in control of the elevator trim.

5.1.2.2 New Model (in planning as of June, 2010)The new model CII is being planned as of this writing. It will consist of a number of independent panels and devices tied together via USB.

Unlike the previous model it will have a trim indicator, though not an actual trim wheel. We will treat the device as a trim wheel that never reports its position. Thus:

When the user operates the trim switch the CII will send SWITCH_PITCH_TRIM messages. When the PC receives a SWITCH_PITCH_TRIM message it will use the switch to run the virtual trim in the simulator. The simulator is always in control of the elevator trim. In turn the PC will send periodic position messages to the pitch trim device that it will use to update the position indicator.

The full report will include ACTUATOR_PITCH_TRIM_SERVO but not ACTUATOR_PITCH_TRIM_CONTROL and no CONTROLS_ELEVATOR_TRIM. Because there is no motor and no wheel the sensitivity and speed controls make no sense. The PC may be allowed to set the trim limits, though there will be a reasonable default that should work perfectly well since at that point it’s just a matter of scaling.

ACTUATOR_PITCH_TRIM_SERVO METADATA_ELEVATOR_TRIM_PRESET METADATA_ELEVATOR_TRIM_LIMITS METADATA_ELEVATOR_TAKEOFF_RANGE

5.1.3 MFD Electric Trim (prior to April, 2010)Until April, 2010 all PFC MFD (Modular Flight Deck) simulators have been fitted with a trim that had a DC electric motor, a 10-turn potentiometer, limit switches, and a mechanical indicator.

Page 428: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

As of this writing (March, 2010) work is in progress to replace the older MFD electric trim with a new design using a stepper motor, encoder, and LED bar indicator. This is discussed below under a separate heading.

The B200 MFD is slightly different from the regular MFDs and is discussed below under a separate heading.

The DC motor runs at a fixed speed of 5900 RPM (rated at no load – friction will slow this down, so the speed is not entirely predictable). It is then reduced via a planetary gear by 128:1. This is fed to a belt-and-pulley system that drives the wheel at a ratio of 12:5 (12 turns of the planetary gear output per 5 turns of the wheel). The cam race cut into the wheel spirals three times around the shaft. It takes approximately 10 seconds to run the trim from one end to the other. (60 (5900 RPM 128 5 12) 3)

The potentiometer is fixed to the motor shaft (the output of the planetary gear. The shaft only rotates approximately 7.2 times over the entire range, so less than 75% of the full range of the 10-turn pot is actually used. The pot’s position is read via A/D converter (currently 10 bits, though this may change at any time) and sent via the CONTROLS_ELEVATOR_TRIM message, along with calibrated trim limits.

The mechanical indicator is coupled to the wheel via cam. The wheel completes three 360 turns to drive the indicator end-to-end.

The mechanical indicator trips switches at either end of its travel, signaling the limits of its travel. (The switches do not actually stop the motor; that is handled in firmware.)

There is no speed control or sensitivity control over this version of the electric trim as everything is fixed in hardware. Since the pot’s entire range is not used we have implemented a calibration system. Calibration is performed offline via a separate utility; limits are determined and stored in Flash ROM, then reported with the position during normal operation. The PC code is expected to use those limits to offset and scale the values into the simulator’s trim range. Since analog I/O is imperfect, values may be sent that are out of the trim limit range; if that happens the PC is expected to rail the values appropriately.

5.1.3.1 Responses Sent During Full Report and Normal Operation

A Full Report will send the following: CONTROLS_ELEVATOR_TRIM

Page 429: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

SWITCH_PITCH_TRIM METADATA_ELEVATOR_TRIM_LIMITS

5.1.3.1.1 CONTROLS_ELEVATOR_TRIMHeader Value reserved Analog

Formatreserved

01 00 01 00 LSB MSB 00 00 00 (0A) 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 00 01 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal.

This will report the current position of the trim and the range of the value. If calibration is not supported on this device it will report the word size of the value in bits. (All values will be stored in 16-bit words but the reported word size determines the value’s range. (3.2.2.1)) If the device does support calibration it will report the lower and upper limits of the value. If the device supports calibration but has not been calibrated it has the choice of returning a word size or returning default calibration values, but generally it will do the latter.

The host PC will rail any values that are outside the given range. Values below the low limit will be set to the low limit; values above the high limit will be set to the high limit. The firmware will not scale or offset the value; it is up to the host PC to perform those calculations.

This message is sent during a Full Report and any time the position changes.

5.1.3.1.2 SWITCH_PITCH_TRIMHeader Value Values: 0. Off

01 00 19 00 nn 1. Nose down2. Nose up

All values are in hexadecimal.

This reports the position of the pitch trim switch on the yoke. Generally during a Full Report the switch will be off.

This message is sent during a full report and any time the user operates the pitch trim switch on the yoke.

Page 430: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The firmware will handle moving the pitch trim motor itself. When the PC receives a SWITCH_PITCH_TRIM command it should not try to direct the motor to run.

If the autopilot is in control when the user operates the pitch trim switch the PC code should disconnect the autopilot.

5.1.3.1.3 METADATA_ELEVATOR_TRIM_LIMITSHeader Low Limit High Limit Lower TO Upper TO

FF 04 16 bits 16 bits 16 bits 16 bitsAll values are in hexadecimal.

This message describes the current low and high trim limits. It also gives the take-off limits if they are set; if not, they will both be zero. On an MFD trim they will always be zero as take-off limits are not supported.

This will be sent during a Full Report and any time the trim limits change, or any time the PC attempts to change the trim limits.

5.1.3.2 Commands Sent at Initialization and During Normal Operation

The actual list of commands supported will be reported during a Full Report. This is what you should expect to see for an MFD trim.

ACTUATOR_PITCH_TRIM_CONTROL ACTUATOR_PITCH_TRIM_SERVO METADATA_ELEVATOR_TRIM_LIMITS METADATA_ELEVATOR_TRIM_PRESET

5.1.3.2.1 ACTUATOR_PITCH_TRIM_CONTROLHeader Value Values: 0: Off

09 00 01 00 nnnn 1: Down2: Up

All values are in hexadecimal.

Directly controls the electric elevator trim motor.

This command is not of much use for moving the trim since normal operation of the trim is a local loop (trim switch) or to use the servo command (below). However it may be useful for stopping the trim. Sending this command will override previous movement commands. It will also override the last trim switch action.

Page 431: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.3.2.2 ACTUATOR_PITCH_TRIM_SERVOHeader Value

09 00 02 00 nnnnAll values are in hexadecimal.

In order to avoid feedback loop delay issues this command allows the PC to specify a target position to the electric pitch trim motor instead of controlling the motor directly.

The value is a 16-bit value whose limits are determined by either the METADATA_ELEVATOR_TRIM_LIMITS response (see 4.15.1.6) or the calibration data returned with a CONTROLS_ELEVATOR_TRIM message (4.1.1.2). If neither of those values is available then the default range is 0 to 1023.

It is not necessary to wait for a servo command to complete before sending the next command. A new command will override the previous command. If the motor was already in motion this will simply change the motor to servo mode (if it was not already) and give it a new target position.

5.1.3.2.3 METADATA_ELEVATOR_TRIM_LIMITSHeader Low Limit High Limit

FF 04 16 bits 16 bitsAll values are in hexadecimal.

The MFD does not support direct changes to its trim limits; they can only be affected by changes in calibration. The PC may send this command at any time to request a response containing the current limits.

This command is obsolete and is being depreciated. We recommend capturing the range limits sent during a Full Report or, preferably, using the limits returned with the position value.

To be absolutely clear on this: This command is being depreciated as a command, but not as a response. The METADATA_ELEVATOR_TRIM_LIMITS response will continue to be used to report trim limits.

5.1.3.2.4 METADATA_ELEVATOR_TRIM_PRESET

Page 432: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Header Value09 00 03 00 nnnn

All values are in hexadecimal.

This command was intended to allow the PC to instantly set the position of an encoder-based wheel without moving the motor. Since the position of an MFD trim is determined in hardware this is not possible; instead, if it receives this command it will attempt to servo to the requested position.

5.1.4 B200 MFD Electric Trim (to date)PFC MFD (Modular Flight Deck) B200 simulators have been fitted with a trim that has a DC electric motor, a potentiometer, and a mechanical indicator.

The DC motor runs at a fixed speed. It is meant to approximate the actual elevator trim on a King Air B200. It takes approximately 90 seconds to run the trim from one end to the other. Later versions have a motor that runs 50% faster and takes approximately 60 seconds to traverse the full range.

The potentiometer is fixed to the trim wheel. The pot’s position is read via A/D converter (currently 10 bits, though this may change at any time without warning) and sent via the CONTROLS_ELEVATOR_TRIM message, along with the trim limits. The entire range of the pot is nominally available, but there is no mechanical limit switch; instead, the firmware stops the trim approximately 5% before it reaches either end. The actual numbers used are sent as trim limits and do not change. This trim does not require or support calibration.

The mechanical indicator is the trim wheel.There is no speed control or sensitivity control over this version of the electric trim as everything is fixed in hardware. Since it is possible to manually move the trim wheel past the designed limits the PC will rail any out-of-range values to the nearest limit.

5.1.4.1 Responses Sent During Full Report and Normal Operation

A Full Report will send the following: CONTROLS_ELEVATOR_TRIM SWITCH_PITCH_TRIM SWITCH_ELEVATOR_TRIM_ONOFF BUTTON_ELEVATOR_TRIM_DISCONNECT STATUS_ELECTRIC_TRIM_AVAILABLE

Page 433: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

CB_TRIM_ELV METADATA_ELEVATOR_TRIM_LIMITS

5.1.4.1.1 CONTROLS_ELEVATOR_TRIMHeader Value reserved Analog

FormatLow

LimitHighLimit

01 00 01 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal.

This will report the current position of the trim and the range of the value. The low and high limits will be the range of the pot used.

The host PC will rail any values that are outside the given range. Values below the low limit will be set to the low limit; values above the high limit will be set to the high limit. The firmware will not scale or offset the value; it is up to the host PC to perform those calculations.

This message is sent during a Full Report and any time the position changes.

5.1.4.1.2 SWITCH_PITCH_TRIMHeader Value Values: 0. Off

01 00 19 00 nn 1. Nose down2. Nose up

All values are in hexadecimal.

This reports the position of the pitch trim switch on the yoke. Generally during a Full Report the switch will be off.

This message is sent during a full report and any time the user operates the pitch trim switch on the yoke.

To avoid communications latency the firmware will handle moving the pitch trim motor itself. When the PC receives a SWITCH_PITCH_TRIM command it should not try to direct the motor to run. This is now only true in specific cases. When it receives a SWITCH_PITCH_TRIM command the PC should decide whether to direct the motor to run depending on whether it detects the switch and the trim on the same hardware; if so, the hardware will run the trim itself. But we have determined that the latency is acceptable, and many of our more recent simulators are now using independent trims.

Page 434: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

If the autopilot is in control when the user operates the pitch trim switch the PC code should disconnect the autopilot.

5.1.4.1.3 SWITCH_ELEVATOR_TRIM_ONOFFHeader Value Values: 0. Off (electric trim not available)

1. On01 00 C0 00 nn

All values are in hexadecimal.

Enables/disables the electric trim system. If the system was disabled by pressing the disconnect button (see 4.2.1.197), toggling this off and then on will re-enable it.

5.1.4.1.4 BUTTON_ELEVATOR_TRIM_DISCONNECTHeader Value Values: 0: Released

01 00 1A 00 nn 1: PressedAll values are in hexadecimal.

This is a momentary push-button mounted on the yoke, one for each pilot. Pushing this button disables the electric trim until it has been reset. Reset by turning the SWITCH_ELEVATOR_TRIM_ONOFF switch off, then on. (See 4.2.1.193.)

5.1.4.1.5 STATUS_ELECTRIC_TRIM_AVAILABLEHeader Value Values: 0. Electric trim disabled

01 00 E0 00 nn 1. Electric trim availableAll values are in hexadecimal.

This is a status provided by the hardware controller to the host PC for simulators where the electric trim can be disabled. The HWC necessarily tracks the status of the electric trim; having the PC track it in parallel is redundant and could cause problems if they go out of synch. Instead the HWC simply passes its status upstream.

In the B200 the electric trim will not be available if: The disconnect button has been pushed and the electric trim

system has not been reset; The electric trim on/off switch is turned off; The circuit breaker has been tripped.

The pilot can reset the electric trim system by cycling either the on/off switch or the circuit breaker.

Page 435: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

If the electric trim is not available all electric trim commands and actions are ignored; however, manual adjustment of the trim continues to work.

5.1.4.1.6 CB_TRIM_ELVHeader Value Cmd Response

0A 00 0C 00 nn 0=idle 0=tripped1=trip 1=closed

All values are in hexadecimal.

Electric trim is inoperative while the circuit breaker is tripped. The trim will continue to report position data. STATUS_ELECTRIC_TRIM_AVAILABLE will return 0.

5.1.4.1.7 METADATA_ELEVATOR_TRIM_LIMITSHeader Low Limit High Limit Lower TO Upper TO

FF 04 16 bits 16 bits 16 bits 16 bitsAll values are in hexadecimal.

This message describes the current low and high trim limits. It also gives the take-off limits if they are set; if not, they will both be zero. On a B200 trim they will always be zero as take-off limits are not supported.

This will be sent during a Full Report and any time the trim limits are requested.

5.1.4.2 Commands Sent at Initialization and During Normal Operation

The actual list of commands supported will be reported during a Full Report. This is what you should expect to see for a B200 MFD trim.

ACTUATOR_PITCH_TRIM_CONTROL ACTUATOR_PITCH_TRIM_SERVO CB_TRIM_ELV METADATA_ELEVATOR_TRIM_LIMITS METADATA_ELEVATOR_TRIM_PRESET

Page 436: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.4.2.1 ACTUATOR_PITCH_TRIM_CONTROLHeader Value Values: 0: Off

09 00 01 00 nnnn 1: Down2: Up

All values are in hexadecimal.

Directly controls the electric elevator trim motor.

This command is not of much use for moving the trim since normal operation of the trim is a local loop (trim switch) or to use the servo command (below). However it may be useful for stopping the trim. Sending this command will override previous movement commands. It will also override the last trim switch action.

5.1.4.2.2 ACTUATOR_PITCH_TRIM_SERVOHeader Value

09 00 02 00 nnnnAll values are in hexadecimal.

In order to avoid feedback loop delay issues this command allows the PC to specify a target position to the electric pitch trim motor instead of controlling the motor directly.

The value is a 16-bit value whose limits are determined by either the METADATA_ELEVATOR_TRIM_LIMITS response (see 4.15.1.6) or the calibration data returned with a CONTROLS_ELEVATOR_TRIM message (4.1.1.2). If neither of those values is available then the default range is 0 to 1023.

It is not necessary to wait for a servo command to complete before sending the next command. A new command will override the previous command. If the motor is already in motion this will simply change the motor to servo mode (if it was not already) and give it a new target position.

5.1.4.2.3 CB_TRIM_ELVHeader Value Cmd Response

0A 00 0C 00 nn 0=idle 0=tripped1=trip 1=closed

All values are in hexadecimal.

Electric trim is inoperative while the circuit breaker is tripped. The trim will continue to report position data. STATUS_ELECTRIC_TRIM_AVAILABLE will return 0.

Page 437: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.4.2.4 METADATA_ELEVATOR_TRIM_LIMITSHeader Low Limit High Limit

FF 04 16 bits 16 bitsAll values are in hexadecimal.

The MFD does not support direct changes to its trim limits; they can only be affected by changes in calibration. The PC may send this command at any time to request a response containing the current limits.

This command is obsolete and is being depreciated. We recommend capturing the range limits sent during a Full Report or, preferably, using the limits returned with the position value.

To be absolutely clear on this: This command is being depreciated as a command, but not as a response. The METADATA_ELEVATOR_TRIM_LIMITS response will continue to be used to report trim limits.

5.1.4.2.5 METADATA_ELEVATOR_TRIM_PRESETHeader Value

09 00 03 00 nnnnAll values are in hexadecimal.

This command was intended to allow the PC to instantly set the position of an encoder-based wheel without moving the motor. Since the position of the B200 trim is determined in hardware this is not possible; instead, if it receives this command it will attempt to servo to the requested position.

5.1.5 C2Pro Electric Trim (prior to June, 2010)Until April, 2010 all Cirrus II Pro desktop simulators have been fitted with a trim that had a DC electric motor and a mechanical encoder. There is no indicator and there are no mechanical limits.

As of June, 2010 we have replaced the older C2Pro electric trim with a new design using a stepper motor, encoder, and LED bar indicator. This is discussed below under a separate heading.

The DC motor runs at a fixed speed of 5900 RPM. It is then reduced via a planetary gear by 128:1. This is fed to a belt-and-

Page 438: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

pulley system that drives the wheel at a ratio of 12:5 (12 turns of the planetary gear output per 5 turns of the wheel).

The encoder is fixed to the motor shaft (the output of the planetary gear). The encoder has a resolution of either 24 or 36 steps per rotation (installations vary). The firmware tracks a virtual position by counting steps up and down between two limits. The limits used are different depending on the version of the firmware.

As of March, 2010 we have started implementing two new features intended for the new stepper/LED model: wheel sensitivity and travel time. Prior to that these were determined by setting the trim limits directly. Since then we've decided to make the design more abstract by allowing specification of sensitivity (based on number of hand turns), used for manual adjustments, and travel time (number of seconds required to travel from one extreme to the other), used for motorized adjustments. The hand turns are rather crude and the travel time is approximate, but it's an improvement over the older design.

5.1.5.1 Responses Sent During Full Report and Normal Operation

A Full Report will send the following: CONTROLS_ELEVATOR_TRIM SWITCH_PITCH_TRIM METADATA_ELEVATOR_TRIM_LIMITS METADATA_ELEVATOR_TRIM_SPEED

5.1.5.1.1 CONTROLS_ELEVATOR_TRIMHeader Value reserved Analog

Formatreserved

01 00 01 00 LSB MSB 00 00 00 (0A) 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 00 01 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal. Word values are unsigned.

This will report the current position of the trim and the range of the value. Older versions of the firmware may specify a number of bits; newer versions will report low and high range limits.

The host PC will rail any values that are outside the given range. Values below the low limit will be set to the low limit; values above the high

Page 439: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

limit will be set to the high limit. The firmware will not scale or offset the value; it is up to the host PC to perform those calculations.

This message is sent during a Full Report and any time the position changes.

5.1.5.1.2 SWITCH_PITCH_TRIMHeader Value Values: 0. Off

01 00 19 00 nn 1. Nose down2. Nose up

All values are in hexadecimal.

This reports the position of the pitch trim switch on the yoke. Generally the switch will be off during a Full Report.

This message is sent during a full report and any time the user operates the pitch trim switch on the yoke.

To avoid communications latency the firmware will handle moving the pitch trim motor itself. When the PC receives a SWITCH_PITCH_TRIM command it should not try to direct the motor to run. This is now only true in specific cases. When it receives a SWITCH_PITCH_TRIM command the PC should decide whether to direct the motor to run depending on whether it detects the switch and the trim on the same hardware; if so, the hardware will run the trim itself. But we have determined that the latency is acceptable, and many of our more recent simulators are now using independent trims.

If the autopilot is in control when the user operates the pitch trim switch the PC code should disconnect the autopilot.

5.1.5.1.3 METADATA_ELEVATOR_TRIM_LIMITSHeader Low Limit High Limit Lower TO Upper TO

FF 04 16 bits 16 bits 16 bits 16 bitsAll values are in hexadecimal.

This message describes the current low and high trim limits. It also gives the take-off limits if they are set; if not, they will both be zero. On a C2Pro trim they will always be zero as take-off limits are not supported.

This will be sent during a Full Report and any time the trim limits change.

Page 440: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.5.1.4 METADATA_ELEVATOR_TRIM_SPEEDHeader Trim Switches speed Autopilot Servo speed

FF 11 16 bits 16 bitsAll values are in hexadecimal.

This (badly named) message reports the current travel time setting. Both values will be the same on the C2Pro trim. This is discussed in more detail below (5.1.5.2.5).

5.1.5.2 Commands Sent at Initialization and During Normal Operation

The actual list of commands supported will be reported during a Full Report. This is what you should expect to see for an MFD trim.

ACTUATOR_PITCH_TRIM_CONTROL ACTUATOR_PITCH_TRIM_SERVO METADATA_ELEVATOR_TRIM_LIMITS METADATA_ELEVATOR_TRIM_PRESET METADATA_ELEVATOR_TRIM_SPEED METADATA_ELEVATOR_TRIM_SENSITIVITY

5.1.5.2.1 ACTUATOR_PITCH_TRIM_CONTROLHeader Value Values: 0: Off

09 00 01 00 nnnn 1: Down2: Up

All values are in hexadecimal.

Directly controls the electric elevator trim motor.

This command is not of much use for moving the trim since normal operation of the trim is a local loop (trim switch) or to use the servo command (below). However it may be useful for stopping the trim. Sending this command will override previous movement commands. It will also override the last trim switch action.

5.1.5.2.2 ACTUATOR_PITCH_TRIM_SERVOHeader Value

09 00 02 00 nnnnAll values are in hexadecimal.

Page 441: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

In order to avoid feedback loop delay issues this command allows the PC to specify a target position to the electric pitch trim motor instead of controlling the motor directly.

The value is an unsigned 16-bit value whose limits are determined by either the METADATA_ELEVATOR_TRIM_LIMITS response (see 4.15.1.6) or the limits data returned with a CONTROLS_ELEVATOR_TRIM message (4.1.1.2). If neither of those values is available then the default range is 0 to 1023.

It is not necessary to wait for a servo command to complete before sending the next command. A new command will override the previous command. If the motor is already in motion this will simply change the motor to servo mode (if it was not already) and give it a new target position.

5.1.5.2.3 METADATA_ELEVATOR_TRIM_LIMITSHeader Low Limit High Limit

FF 04 16 bits 16 bitsAll values are in hexadecimal.

Earlier versions of the C2Pro electric trim will allow the PC to directly change its trim limits. The PC may send this command at any time to request a response containing the current limits.

This command is obsolete and is being depreciated. We recommend capturing the range limits sent during a Full Report or, preferably, using the limits returned with each position value. If the METADATA_ELEVATOR_TRIM_SENSITIVITY command is supported, the host PC should use that command to set the trim limits instead of the METADATA_ELEVATOR_TRIM_LIMITS command.

To be absolutely clear on this: This command is being depreciated as a command, but not as a response. The METADATA_ELEVATOR_TRIM_LIMITS response will continue to be used to report trim limits.

5.1.5.2.4 METADATA_ELEVATOR_TRIM_PRESETHeader Value

09 00 03 00 nnnnAll values are in hexadecimal.

Page 442: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This command was intended to allow the PC to instantly set the position of an encoder-based wheel without moving the motor. The C2Pro firmware will adjust the position of its virtual trim and begin reporting and counting from the new position as though the trim had instantly been moved there. If the requested position is outside the trim range the firmware may rail the value to the nearest limit or simply ignore the command.

5.1.5.2.5 METADATA_ELEVATOR_TRIM_SPEEDCommand: Header Trim Switches speed Autopilot Servo speed

(PC to HWC) FF 11 16 bits 16 bits

Response: Header Trim Switches speed Autopilot Servo speed(HWC to PC) FF 11 16 bits 16 bits

Additional response:

Header Low Limit High LimitFF 04 16 bits 16 bits

All values are in hexadecimal.

The elevator trim is capable of running at two different speeds depending on whether the autopilot or the pilot is running the motor. The legacy C2Pro trim only supports a single speed. The Trim Switches speed will be used and the Autopilot Servo speed will be ignored.

Each unsigned value represents the time it should take the trim motor to traverse from one end to the other, in 100ths of a second. Values are 0 to 655.35 seconds, but any values that would exceed the simulator’s limitations will be ignored or railed (adjusted to the nearest legal value). The values will be ignored if the trim motor speed is not adjustable. The default value is 20 seconds (2,000 100ths).

The travel time and sensitivity commands were designed for a variable-speed motor; normally the sensitivity is used to determine the limits, not the travel time. These commands were back-ported into the old design to add what flexibility we could, but the results are imperfect. In order to keep things simple when the PC sets the travel time using the METADATA_ELEVATOR_TRIM_SPEED command, it responds with the normal response but also with a METADATA_ELEVATOR_TRIM_LIMITS response as well. Since the motor speed is inexact (due to variations in friction) the actual travel time may not exactly match the requested travel time, though it should be reasonably close.

Page 443: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.5.2.6 METADATA_ELEVATOR_TRIM_SENSITIVITYCommand: Header Sensitivity

(PC to HWC) FF 12 16 bits

Response: Header Low Limit High Limit(HWC to PC) FF 04 16 bits 16 bits

All values are in hexadecimal.

This command attempts to set the trim wheel sensitivity. The Sensitivity is in 100ths of a hand turn and represents the number of hand turns of the wheel it takes to traverse the entire range of the elevator trim.

The hardware controller will respond with a METADATA_ELEVATOR_TRIM_LIMITS (4.15.1.6) response that provides the range of values that it will be sending. The limits will also be sent back as calibration limits value with each CONTROLS_ELEVATOR_TRIM response.

A “hand turn” is a somewhat subjective value, but the only one we felt made sense. The only other value that might have a real-world bearing is “number of 360° turns of the wheel”, but what that represents to the simulator may vary at least as much as a hand turn. It works out that the C2Pro-style electric trim wheel can be turned up to approximately 1/3 of a full turn, or 120°, due to its design. For this trim wheel we will be using 120° of wheel turn as our “hand turn” value, and 8 hand turns as our default sensitivity.

Since both the motor speed and the encoder resolution are fixed, and we’re already using the trim limits to determine the travel time, this has been implemented by applying a multiplier to the encoder steps whenever the wheel is being turned by hand. The result is only a rough approximate but is adequate for our purposes.

5.1.6 C2Pro and MFD Electric TrimAs of July, 2010 the old electric trim was replaced with a new model sporting a stepper motor, an optical encoder and an LED bar graph indicator.

The stepper motor speed is variable. The motor has a step angle of 1.8 (200 steps per rotation) and is being micro-stepped at 1/16th of a step for smoothness. The motor shaft is fed to a belt-and-pulley system that drives the wheel at a ratio of 12:5 (12 turns of the motor per 5 turns of the wheel).

Page 444: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

The encoder is fixed to the motor shaft. The encoder has a resolution of 200 steps per rotation. The firmware tracks a virtual position by counting steps up and down between two limits. The limits vary depending on the sensitivity settings.

The indicator consists of a 51-LED bar graph. The current position is internally scaled from the output range and displayed proportionately in amber. In addition the LEDs turn green when the trim is in the take-off range (if defined) and turn red when they reach either limit ±1 step.

Note that the bar graph indicator operation is entirely transparent to the PC host aside from its ability to display the take-off range. Likewise the actual numbers in the above description are of the current hardware but could change without warning; the PC does not directly interact with those values but instead deals with an abstracted interface.

5.1.6.1 Responses Sent During Full Report and Normal Operation

A Full Report will send the following: CONTROLS_ELEVATOR_TRIM SWITCH_PITCH_TRIM METADATA_ELEVATOR_TRIM_LIMITS METADATA_ELEVATOR_TRIM_SPEED EVENT_MOTOR_STOPPED_UNEXPECTEDLY

5.1.6.1.1 CONTROLS_ELEVATOR_TRIMHeader Value reserved Analog

Formatreserved

01 00 01 00 LSB MSB 00 00 00 (0A) 00 00 00 00Header Value reserved Analog

FormatLow

LimitHighLimit

01 00 01 00 LSB MSB 00 00 00 42 LSB MSB LSB MSBAll values are in hexadecimal. Word values are unsigned.

This will report the current position of the trim and the range of the value. The current firmware will almost certainly send the low and high limits, but the older “number of bits” format is available and still must be supported.

The host PC will rail any values that are outside the given range. Values below the low limit will be set to the low limit; values above the high limit will be set to the high limit. The firmware will not scale or offset the value; it is up to the host PC to perform those calculations.

Page 445: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

This message is sent during a Full Report and any time the position changes.

5.1.6.1.2 SWITCH_PITCH_TRIMHeader Value Values: 0. Off

02 00 19 00 nn 1. Nose down2. Nose up

All values are in hexadecimal.

This reports the position of the pitch trim switch on the yoke. Generally during a Full Report the switch will be off.

This message is sent during a full report and any time the user operates the pitch trim switch on the yoke.

To avoid communications latency the firmware will handle moving the pitch trim motor itself. When the PC receives a SWITCH_PITCH_TRIM command it should not try to direct the motor to run. This is now only true in specific cases. When it receives a SWITCH_PITCH_TRIM command the PC should decide whether to direct the motor to run depending on whether it detects the switch and the trim on the same hardware; if so, the hardware will run the trim itself. But we have determined that the latency is acceptable, and many of our more recent simulators are now using independent trims.

If the autopilot is in control when the user operates the pitch trim switch the PC code should disconnect the autopilot.

5.1.6.1.3 METADATA_ELEVATOR_TRIM_LIMITSHeader Low Limit High Limit Lower TO Upper TO

FF 04 16 bits 16 bits 16 bits 16 bitsAll values are in hexadecimal.

This message describes the current low and high trim limits. It also gives the take-off limits if they are set; if not, they will both be zero. On a C2Pro trim they will always be zero as trim limits are not supported.

This will be sent during a Full Report and any time the trim limits change.

5.1.6.1.4 METADATA_ELEVATOR_TRIM_SPEED

Page 446: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Header Trim Switches speed Autopilot Servo speedFF 11 16 bits 16 bits

All values are in hexadecimal.

This (badly named) message reports the current travel time setting. This is discussed in more detail below (5.1.6.2.5).

5.1.6.1.5 EVENT_MOTOR_STOPPED_UNEXPECTEDLYHeader Value Values: 0. No action

02 00 08 00 nn 1. StoppedAll values are in hexadecimal.

This message is intended to tell the PC if the user manually stopped the wheel while it was turning under motor control. If this happens the simulator should probably disconnect the autopilot.

As of this writing this command is not implemented.

5.1.6.2 Commands Sent at Initialization and During Normal Operation

The actual list of commands supported will be reported during a Full Report. This is what you should expect to see for an MFD trim.

ACTUATOR_PITCH_TRIM_CONTROL ACTUATOR_PITCH_TRIM_SERVO METADATA_ELEVATOR_TRIM_LIMITS METADATA_ELEVATOR_TRIM_PRESET METADATA_ELEVATOR_TRIM_SPEED METADATA_ELEVATOR_TRIM_SENSITIVITY METADATA_ELEVATOR_TAKEOFF_RANGE

5.1.6.2.1 ACTUATOR_PITCH_TRIM_CONTROLHeader Value Values: 0: Off

09 00 01 00 nnnn 1: Down2: Up

All values are in hexadecimal.

Directly controls the electric elevator trim motor.

This command is not of much use for moving the trim since normal operation of the trim is a local loop (trim switch) or to use the servo command (below). However it may be useful for stopping the trim.

Page 447: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

Sending this command will override previous movement commands. It will also override the last trim switch action.

5.1.6.2.2 ACTUATOR_PITCH_TRIM_SERVOHeader Value

09 00 02 00 nnnnAll values are in hexadecimal.

In order to avoid feedback loop delay issues this command allows the PC to specify a target position to the electric pitch trim motor instead of controlling the motor directly.

The value is an unsigned 16-bit value whose limits are determined by either the METADATA_ELEVATOR_TRIM_LIMITS response (see 4.15.1.6) or the limits data returned with a CONTROLS_ELEVATOR_TRIM message (4.1.1.2). If neither of those values is available then the default range is 0 to 1023.

It is not necessary to wait for a servo command to complete before sending the next command. A new command will override the previous command. If the motor is already in motion this will simply change the motor to servo mode (if it was not already) and give it a new target position.

5.1.6.2.3 METADATA_ELEVATOR_TRIM_LIMITSHeader Low Limit High Limit

FF 04 16 bits 16 bitsAll values are in hexadecimal.

Earlier versions of the C2Pro electric trim will allow the PC to directly change its trim limits. The PC may send this command at any time to request a response containing the current limits.

This command is obsolete and is being depreciated. We recommend capturing the range limits sent during a Full Report or, preferably, using the limits returned with each position value. If the METADATA_ELEVATOR_TRIM_SENSITIVITY command is supported, the host PC should use that command to set the trim limits instead of the METADATA_ELEVATOR_TRIM_LIMITS command.

To be absolutely clear on this: This command is being depreciated as a command, but not as a response. The METADATA_ELEVATOR_TRIM_LIMITS response will continue to be used to report trim limits.

Page 448: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.6.2.4 METADATA_ELEVATOR_TRIM_PRESETHeader Value

09 00 03 00 nnnnAll values are in hexadecimal.

This command was intended to allow the PC to instantly set the position of an encoder-based wheel without moving the motor. The firmware will adjust the position of its virtual trim and begin reporting and counting from the new position as though the trim had instantly been moved there. If the requested position is outside the trim range the firmware may rail the value to the nearest limit or simply ignore the command.

5.1.6.2.5 METADATA_ELEVATOR_TRIM_SPEEDCommand: Header Trim Switches speed Autopilot Servo speed

(PC to HWC) FF 11 16 bits 16 bits

Response: Header Trim Switches speed Autopilot Servo speed(HWC to PC) FF 11 16 bits 16 bits

All values are in hexadecimal.

The elevator trim is capable of running at two different speeds depending on whether the autopilot or the pilot is running the motor. Some airplanes (e.g. the Boeing 727) have two pitch trim motors:

Pitch trim is accomplished by repositioning the stabilizer. …The high-speed electric trim motor is controlled by these main electric trim switches on the control wheels.  …The autopilot uses the slow speed motor for pitch trim. (Reference)

In most cases however the speeds will be the same.

Each unsigned value represents the time it should take the trim motor to traverse from one end to the other, in 100ths of a second. Values are 0 to 655.35 seconds, but any values that would violate physics will be ignored or railed (adjusted to the nearest legal value). The default value is 20 seconds (2,000 100ths).

Since we have precise control over the motor speed, the actual traversal time of the trim should be very accurate.

Page 449: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.6.2.6 METADATA_ELEVATOR_TRIM_SENSITIVITYCommand: Header Sensitivity

(PC to HWC) FF 12 16 bits

Response: Header Low Limit High Limit(HWC to PC) FF 04 16 bits 16 bits

All values are in hexadecimal.

This command attempts to set the trim wheel sensitivity. The Sensitivity is in 100ths of a hand turn and represents the number of hand turns of the wheel it takes to traverse the entire range of the elevator trim.

The hardware controller will respond with a METADATA_ELEVATOR_TRIM_LIMITS (4.15.1.6) response that provides the range of values that it will be sending. The limits will also be sent back as calibration limits value with each CONTROLS_ELEVATOR_TRIM response.

A “hand turn” is a somewhat subjective value, but the only one we felt made sense. The only other value that might have a real-world bearing is “number of 360° turns of the wheel”, but what that represents to the simulator may vary at least as much as a hand turn. For example, our B200 simulator’s end-to-end limits are less than 360°, but the old-style MFD trim (with mechanical indicator) turns approximately three full turns end-to-end. It only takes a few (3 or 4) turns of the B200’s wheel to go from one end to the other (and it can be done with a single turn, though not conveniently), but it requires at least 12 turns of the MFD wheel.

We expect that each device will have its own reasonable defaults for this value, and that the user will have a menu item in the simulation software plug-in to override it and will set it to what feels right to him. Since this value is not generally set as part of the airplane model, it can easily be set once and forgotten.

It works out that the MFD-style or C2Pro-style electric trim wheel can be turned up to approximately 1/3 of a full turn, or 120°, due to its design. For that trim wheel we will be using 120° of wheel turn as our “hand turn” value, and 8 hand turns as our default sensitivity.

Page 450: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.1.6.2.7 METADATA_ELEVATOR_TAKEOFF_RANGECommand: Header Lower TO Upper TO

(PC to HWC) FF 13 16 bits 16 bits

Response: Header Lower TO Upper TO(HWC to PC) FF 03 16 bits 16 bits

All values are in hexadecimal.The take-off range values are in the same scale as the elevator trim limits as returned by the METADATA_ELEVATOR_TRIM_LIMITS (4.15.1.6) response from either the METADATA_ELEVATOR_TRIM_LIMITS command or the METADATA_ELEVATOR_TRIM_SENSITIVITY command. If no take-off range is desired send both values as 0.

If the controller likes the limits sent to it, it will respond with the same limits. Otherwise it will respond with its previous set limits or with zeros.

5.1.7 Sequences and Support

5.1.7.1 Discovery and SetupStart by assuming there is no trim. Request a Full Report. You will get a number of messages; some will contain values, others will be Supported Reports. If it’s a Supported Report it means that it is supported as a command only and not a response.

SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED (value)

If you get this you have a Cirrus II trim switch and no trim wheel. The switch controls the simulator’s virtual trim directly.

SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED (value) ACTUATOR_PITCH_TRIM_SERVO (supported report) METADATA_ELEVATOR_TRIM_PRESET (supported report) METADATA_ELEVATOR_TRIM_LIMITS (value) METADATA_ELEVATOR_TAKEOFF_RANGE (supported

report)

This combination means that you have a (proposed) new-style CII with an indicator but no trim wheel or motor. The PC should not need to set the limits, should set the takeoff range, and needs to send servo information when the simulator’s virtual trim position changes.

CONTROLS_ELEVATOR_TRIM (value)

Page 451: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

SWITCH_PITCH_TRIM (value)

These two mean you have a yoke switch and a wheel. Theoretically it’s possible to have a wheel with no motor, though at this writing we do not sell any simulator hardware with this configuration. You should also see:

ACTUATOR_PITCH_TRIM_CONTROL (supported report) ACTUATOR_PITCH_TRIM_SERVO (supported report)

These two mean that you have a motor to control. You will also see:

METADATA_ELEVATOR_TRIM_LIMITS (value) METADATA_ELEVATOR_TRIM_PRESET (supported report)

If you see the trim limits message (above) without the sensitivity message (below) it means you can set the trim limits directly; however, this function is being depreciated as setting the limits without any context is meaningless. It is best to leave the limits at their defaults. If the sensor is a pot the command will fail anyway.

METADATA_ELEVATOR_TRIM_SPEED (value) METADATA_ELEVATOR_TRIM_SENSITIVITY (supported

report)

If you see these it means you can adjust the travel time and sensitivity of the trim wheel.

In X-Plane the travel time is part of the airplane model. It is stored as the number of seconds required for the trim to travel from one limit to the other. The resolution is 100ths of a second, the same as ours.

X-Plane does not have any knowledge of trim sensitivity, which is how far the trim moves relative to how much the wheel moves. At the moment we provide an item in the Windows X-Plane plugin menu that allows the user to choose one of several numbers of hand turns.

METADATA_ELEVATOR_TAKEOFF_RANGE (supported report)

The presence of this report means that the trim display is capable of displaying the take-off range. In X-Plane this is part of the airplane model and is stored as a single point. (Note: At this time the PFC plug-in expands the X-Plane T/O point ±4.5% of the total range to either side of the point.)

Page 452: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

If supported you should set up the trim in the following order:1. Send METADATA_ELEVATOR_TRIM_SENSITIVITY (from

the menu setting).2. Receive METADATA_ELEVATOR_TRIM_LIMITS. Use this for

scaling further calculations.3. Send METADATA_ELEVATOR_TRIM_SPEED (from the

airplane model).4. Receive a METADATA_ELEVATOR_TRIM_SPEED response.5. If you get a METADATA_ELEVATOR_TRIM_LIMITS message,

accept it and apply it immediately. Use it for scaling further calculations. (Remember that the C2Pro legacy trim uses the travel time, not the sensitivity, to calculate its trim limits. It will send both the normal response and the new trim limits as response to the _SPEED command.)

6. Now send the METADATA_ELEVATOR_TAKEOFF_RANGE, if supported. This needs to be scaled to the trim limits you last received.

7. Receive the METADATA_ELEVATOR_TAKEOFF_RANGE response.

8. Optional: Send a METADATA_ELEVATOR_TRIM_PRESET to the bottom of the take-off range, or to the center of the trim range.

Any time you receive a METADATA_ELEVATOR_TRIM_LIMITS message it means the scaling might have been changed (unless it’s because somebody asked for a Full Report). When the scaling changes the firmware is not obligated to maintain the take-off range; it’s best to re-send it.

If you see any of these: CB_TRIM_ELV (value) BUTTON_ELEVATOR_TRIM_DISCONNECT (value) SWITCH_ELEVATOR_TRIM_ONOFF (value) STATUS_ELECTRIC_TRIM_AVAILABLE (value) ANN_AP_TRIM_FAIL (Supported Report) ANN_ELEC_TRIM_OFF (Supported Report)

…you probably have a B200. I’m going to leave the B200 descriptions until later, but most of the extra functionality should be obvious.

5.1.7.2 Normal Operation

5.1.7.2.1 Autopilot OffWith the autopilot off, the trim setting is controlled by the trim wheel. Accept input from the CONTROLS_ELEVATOR_TRIM message and

Page 453: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

apply them to the virtual trim in the simulator. There are two techniques being used at this time:

5.1.7.2.1.1 PFC Technique If you receive

SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED messages, change the virtual trim at the correct trim rate.

If you receive SWITCH_PITCH_TRIM messages and there is trim hardware present, ignore the SWITCH_PITCH_TRIM messages.

Any time you receive a CONTROLS_ELEVATOR_TRIM message, adjust the virtual trim to match.

5.1.7.2.1.2 FSUIPC Technique If you receive

SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED messages or SWITCH_PITCH_TRIM messages, change the virtual trim at the correct trim rate.

Any time you receive a CONTROLS_ELEVATOR_TRIM message, adjust the virtual trim to match.

5.1.7.2.2 Autopilot OnIf the autopilot is controlling the trim:

Ignore CONTROLS_ELEVATOR_TRIM messages. Optionally, use this as feedback and periodically correct the position with servo commands if it doesn’t match the virtual position. Do not adjust the virtual position to match the wheel position.

Send ACTUATOR_PITCH_TRIM_SERVO commands to keep the physical trim synchronized with the virtual trim.

If you receive SWITCH_PITCH_TRIM_WHO_MUST_BE_OBEYED messages or SWITCH_PITCH_TRIM messages that attempt to run the trim motor (non-zero), disconnect the autopilot.

If you receive an EVENT_MOTOR_STOPPED_UNEXPECTEDLY (non-zero value) message, disconnect the autopilot.

If you receive a BUTTON_AP_DISCONNECT (non-zero value) message, disconnect the autopilot.

In the Windows X-Plane plug-in, to prevent constant fiddling of the trim motor, during autopilot control we only adjust the physical motor when it has changed by at least ≈1% from the previous servo target.

Page 454: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

We send a final METADATA_ELEVATOR_TRIM_PRESET command with the exact position when the autopilot disconnects. This causes the physical trim to synch up with the virtual trim, which it’s supposed to be tracking.

The only exception to this (the final adjustment) is when the pilot operated the trim switch to cause the disconnect (SWITCH_PITCH_TRIM). In that case the pilot has taken control already, and the physical trim is going to be pretty close to the virtual trim anyway.

Page 455: USB format.doc · Web viewSWITCH_HYDRAULIC_PUMP_A is now SWITCH_N1_SET_SELECT. SWITCH_HYDRAULIC_PUMP_B is now SWITCH_SPEED_REF_SELECT. SWITCH_ENGINE_FIRE_SUPPRESSION is now SWITCH_MAIN_PANEL

5.2 Anti-Ice/De-Ice SystemsThe following messages are part of ice control systems.

SWITCH_PITOT_HEAT SWITCH_ANTI_ICE SWITCH_PROP_DEICE SWITCH_WING_DEICE SWITCH_WINDOW_DEICE SWITCH_ICE_VANE SWITCH_CARB_HEATER SWITCH_AUTO_IGNITION

Currently defined, but not used: SWITCH_ENGINE_ANTI_ICE SWITCH_WING_ANTI_ICE SWITCH_WING_ANTI_ICE_TEST SWITCH_WINDOW_HEAT_SIDE SWITCH_WINDOW_HEAT_TEST

X-Plane appears to support de-ice for the following areas:

All systems This turns on EVERY anti-ice system.Window heat This switch turns on windshield de-icing to keep ice from blocking

your vision.Inlet heat This switch turns on de-icing heat in the engine air inlet to keep ice

from choking your engine.Prop heat This switch turns on de-icing of the propeller(s) to keep ice from

building up on your prop.Pitot heat This switch turns on de-icing heat in the pitot tube. If it freezes up

your airspeed indicator and altimeter stop working. Airspeed and altitude related autopilot functions are also affected.

AOA heat This switch turns on de-icing heat for the AOA sensor. If it freezes up your AOA indicator stops working. AOA sensor failure will also affect the aircraft's artificial stability system if it has one.

Wing heat (bleed air)

This switch directs warm air from the engines into the wing leading edges to keep them free of ice.

Ice vanes Ice vane extended (per engine).Surface boots This switch inflates flexible bladders on the wing leading edges to

pop off accumulated ice.Brake de-ice Brake de-icing on.Auto-ignition This switch turns on a continuous ignition source in the engine to

automatically relight it if there is a flameout.