UNPKG

mavlink-mappings

Version:
207 lines 13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.REGISTRY = exports.UavionixAdsbTransceiverHealthReport = exports.UavionixAdsbOutDynamic = exports.UavionixAdsbOutCfg = exports.UavionixAdsbEmergencyStatus = exports.UavionixAdsbOutCfgGpsOffsetLon = exports.UavionixAdsbOutCfgGpsOffsetLat = exports.UavionixAdsbOutCfgAircraftSize = exports.UavionixAdsbRfHealth = exports.UavionixAdsbOutDynamicGpsFix = exports.UavionixAdsbOutRfSelect = exports.UavionixAdsbOutDynamicState = void 0; const mavlink_1 = require("./mavlink"); const common_1 = require("./common"); /** * State flags for ADS-B transponder dynamic report */ var UavionixAdsbOutDynamicState; (function (UavionixAdsbOutDynamicState) { UavionixAdsbOutDynamicState[UavionixAdsbOutDynamicState["INTENT_CHANGE"] = 1] = "INTENT_CHANGE"; UavionixAdsbOutDynamicState[UavionixAdsbOutDynamicState["AUTOPILOT_ENABLED"] = 2] = "AUTOPILOT_ENABLED"; UavionixAdsbOutDynamicState[UavionixAdsbOutDynamicState["NICBARO_CROSSCHECKED"] = 4] = "NICBARO_CROSSCHECKED"; UavionixAdsbOutDynamicState[UavionixAdsbOutDynamicState["ON_GROUND"] = 8] = "ON_GROUND"; UavionixAdsbOutDynamicState[UavionixAdsbOutDynamicState["IDENT"] = 16] = "IDENT"; })(UavionixAdsbOutDynamicState = exports.UavionixAdsbOutDynamicState || (exports.UavionixAdsbOutDynamicState = {})); /** * Transceiver RF control flags for ADS-B transponder dynamic reports */ var UavionixAdsbOutRfSelect; (function (UavionixAdsbOutRfSelect) { UavionixAdsbOutRfSelect[UavionixAdsbOutRfSelect["STANDBY"] = 0] = "STANDBY"; UavionixAdsbOutRfSelect[UavionixAdsbOutRfSelect["RX_ENABLED"] = 1] = "RX_ENABLED"; UavionixAdsbOutRfSelect[UavionixAdsbOutRfSelect["TX_ENABLED"] = 2] = "TX_ENABLED"; })(UavionixAdsbOutRfSelect = exports.UavionixAdsbOutRfSelect || (exports.UavionixAdsbOutRfSelect = {})); /** * Status for ADS-B transponder dynamic input */ var UavionixAdsbOutDynamicGpsFix; (function (UavionixAdsbOutDynamicGpsFix) { UavionixAdsbOutDynamicGpsFix[UavionixAdsbOutDynamicGpsFix["NONE_0"] = 0] = "NONE_0"; UavionixAdsbOutDynamicGpsFix[UavionixAdsbOutDynamicGpsFix["NONE_1"] = 1] = "NONE_1"; UavionixAdsbOutDynamicGpsFix[UavionixAdsbOutDynamicGpsFix["UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D"] = 2] = "UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_2D"; UavionixAdsbOutDynamicGpsFix[UavionixAdsbOutDynamicGpsFix["UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D"] = 3] = "UAVIONIX_ADSB_OUT_DYNAMIC_GPS_FIX_3D"; UavionixAdsbOutDynamicGpsFix[UavionixAdsbOutDynamicGpsFix["DGPS"] = 4] = "DGPS"; UavionixAdsbOutDynamicGpsFix[UavionixAdsbOutDynamicGpsFix["RTK"] = 5] = "RTK"; })(UavionixAdsbOutDynamicGpsFix = exports.UavionixAdsbOutDynamicGpsFix || (exports.UavionixAdsbOutDynamicGpsFix = {})); /** * Status flags for ADS-B transponder dynamic output */ var UavionixAdsbRfHealth; (function (UavionixAdsbRfHealth) { UavionixAdsbRfHealth[UavionixAdsbRfHealth["INITIALIZING"] = 0] = "INITIALIZING"; UavionixAdsbRfHealth[UavionixAdsbRfHealth["OK"] = 1] = "OK"; UavionixAdsbRfHealth[UavionixAdsbRfHealth["FAIL_TX"] = 2] = "FAIL_TX"; UavionixAdsbRfHealth[UavionixAdsbRfHealth["FAIL_RX"] = 16] = "FAIL_RX"; })(UavionixAdsbRfHealth = exports.UavionixAdsbRfHealth || (exports.UavionixAdsbRfHealth = {})); /** * Definitions for aircraft size */ var UavionixAdsbOutCfgAircraftSize; (function (UavionixAdsbOutCfgAircraftSize) { UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["NO_DATA"] = 0] = "NO_DATA"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L15M_W23M"] = 1] = "L15M_W23M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L25M_W28P5M"] = 2] = "L25M_W28P5M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L25_34M"] = 3] = "L25_34M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L35_33M"] = 4] = "L35_33M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L35_38M"] = 5] = "L35_38M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L45_39P5M"] = 6] = "L45_39P5M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L45_45M"] = 7] = "L45_45M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L55_45M"] = 8] = "L55_45M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L55_52M"] = 9] = "L55_52M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L65_59P5M"] = 10] = "L65_59P5M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L65_67M"] = 11] = "L65_67M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L75_W72P5M"] = 12] = "L75_W72P5M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L75_W80M"] = 13] = "L75_W80M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L85_W80M"] = 14] = "L85_W80M"; UavionixAdsbOutCfgAircraftSize[UavionixAdsbOutCfgAircraftSize["L85_W90M"] = 15] = "L85_W90M"; })(UavionixAdsbOutCfgAircraftSize = exports.UavionixAdsbOutCfgAircraftSize || (exports.UavionixAdsbOutCfgAircraftSize = {})); /** * GPS lataral offset encoding */ var UavionixAdsbOutCfgGpsOffsetLat; (function (UavionixAdsbOutCfgGpsOffsetLat) { UavionixAdsbOutCfgGpsOffsetLat[UavionixAdsbOutCfgGpsOffsetLat["NO_DATA"] = 0] = "NO_DATA"; UavionixAdsbOutCfgGpsOffsetLat[UavionixAdsbOutCfgGpsOffsetLat["LEFT_2M"] = 1] = "LEFT_2M"; UavionixAdsbOutCfgGpsOffsetLat[UavionixAdsbOutCfgGpsOffsetLat["LEFT_4M"] = 2] = "LEFT_4M"; UavionixAdsbOutCfgGpsOffsetLat[UavionixAdsbOutCfgGpsOffsetLat["LEFT_6M"] = 3] = "LEFT_6M"; UavionixAdsbOutCfgGpsOffsetLat[UavionixAdsbOutCfgGpsOffsetLat["RIGHT_0M"] = 4] = "RIGHT_0M"; UavionixAdsbOutCfgGpsOffsetLat[UavionixAdsbOutCfgGpsOffsetLat["RIGHT_2M"] = 5] = "RIGHT_2M"; UavionixAdsbOutCfgGpsOffsetLat[UavionixAdsbOutCfgGpsOffsetLat["RIGHT_4M"] = 6] = "RIGHT_4M"; UavionixAdsbOutCfgGpsOffsetLat[UavionixAdsbOutCfgGpsOffsetLat["RIGHT_6M"] = 7] = "RIGHT_6M"; })(UavionixAdsbOutCfgGpsOffsetLat = exports.UavionixAdsbOutCfgGpsOffsetLat || (exports.UavionixAdsbOutCfgGpsOffsetLat = {})); /** * GPS longitudinal offset encoding */ var UavionixAdsbOutCfgGpsOffsetLon; (function (UavionixAdsbOutCfgGpsOffsetLon) { UavionixAdsbOutCfgGpsOffsetLon[UavionixAdsbOutCfgGpsOffsetLon["NO_DATA"] = 0] = "NO_DATA"; UavionixAdsbOutCfgGpsOffsetLon[UavionixAdsbOutCfgGpsOffsetLon["APPLIED_BY_SENSOR"] = 1] = "APPLIED_BY_SENSOR"; })(UavionixAdsbOutCfgGpsOffsetLon = exports.UavionixAdsbOutCfgGpsOffsetLon || (exports.UavionixAdsbOutCfgGpsOffsetLon = {})); /** * Emergency status encoding */ var UavionixAdsbEmergencyStatus; (function (UavionixAdsbEmergencyStatus) { UavionixAdsbEmergencyStatus[UavionixAdsbEmergencyStatus["NO_EMERGENCY"] = 0] = "NO_EMERGENCY"; UavionixAdsbEmergencyStatus[UavionixAdsbEmergencyStatus["GENERAL_EMERGENCY"] = 1] = "GENERAL_EMERGENCY"; UavionixAdsbEmergencyStatus[UavionixAdsbEmergencyStatus["LIFEGUARD_EMERGENCY"] = 2] = "LIFEGUARD_EMERGENCY"; UavionixAdsbEmergencyStatus[UavionixAdsbEmergencyStatus["MINIMUM_FUEL_EMERGENCY"] = 3] = "MINIMUM_FUEL_EMERGENCY"; UavionixAdsbEmergencyStatus[UavionixAdsbEmergencyStatus["NO_COMM_EMERGENCY"] = 4] = "NO_COMM_EMERGENCY"; UavionixAdsbEmergencyStatus[UavionixAdsbEmergencyStatus["UNLAWFUL_INTERFERANCE_EMERGENCY"] = 5] = "UNLAWFUL_INTERFERANCE_EMERGENCY"; UavionixAdsbEmergencyStatus[UavionixAdsbEmergencyStatus["DOWNED_AIRCRAFT_EMERGENCY"] = 6] = "DOWNED_AIRCRAFT_EMERGENCY"; UavionixAdsbEmergencyStatus[UavionixAdsbEmergencyStatus["RESERVED"] = 7] = "RESERVED"; })(UavionixAdsbEmergencyStatus = exports.UavionixAdsbEmergencyStatus || (exports.UavionixAdsbEmergencyStatus = {})); /** * Static data to configure the ADS-B transponder (send within 10 sec of a POR and every 10 sec * thereafter) */ class UavionixAdsbOutCfg extends mavlink_1.MavLinkData { constructor() { super(); this.ICAO = 0; this.callsign = ''; this.emitterType = common_1.AdsbEmitterType[Object.keys(common_1.AdsbEmitterType)[0]]; this.aircraftSize = UavionixAdsbOutCfgAircraftSize[Object.keys(UavionixAdsbOutCfgAircraftSize)[0]]; this.gpsOffsetLat = UavionixAdsbOutCfgGpsOffsetLat[Object.keys(UavionixAdsbOutCfgGpsOffsetLat)[0]]; this.gpsOffsetLon = UavionixAdsbOutCfgGpsOffsetLon[Object.keys(UavionixAdsbOutCfgGpsOffsetLon)[0]]; this.stallSpeed = 0; this.rfSelect = UavionixAdsbOutRfSelect[Object.keys(UavionixAdsbOutRfSelect)[0]]; } } exports.UavionixAdsbOutCfg = UavionixAdsbOutCfg; UavionixAdsbOutCfg.MSG_ID = 10001; UavionixAdsbOutCfg.MSG_NAME = 'UAVIONIX_ADSB_OUT_CFG'; UavionixAdsbOutCfg.PAYLOAD_LENGTH = 20; UavionixAdsbOutCfg.MAGIC_NUMBER = 209; UavionixAdsbOutCfg.FIELDS = [ new mavlink_1.MavLinkPacketField('ICAO', 'ICAO', 0, false, 4, 'uint32_t', ''), new mavlink_1.MavLinkPacketField('stallSpeed', 'stallSpeed', 4, false, 2, 'uint16_t', 'cm/s'), new mavlink_1.MavLinkPacketField('callsign', 'callsign', 6, false, 1, 'char[]', '', 9), new mavlink_1.MavLinkPacketField('emitterType', 'emitterType', 15, false, 1, 'uint8_t', ''), new mavlink_1.MavLinkPacketField('aircraftSize', 'aircraftSize', 16, false, 1, 'uint8_t', ''), new mavlink_1.MavLinkPacketField('gpsOffsetLat', 'gpsOffsetLat', 17, false, 1, 'uint8_t', ''), new mavlink_1.MavLinkPacketField('gpsOffsetLon', 'gpsOffsetLon', 18, false, 1, 'uint8_t', ''), new mavlink_1.MavLinkPacketField('rfSelect', 'rfSelect', 19, false, 1, 'uint8_t', ''), ]; /** * Dynamic data used to generate ADS-B out transponder data (send at 5Hz) */ class UavionixAdsbOutDynamic extends mavlink_1.MavLinkData { constructor() { super(); this.utcTime = 0; this.gpsLat = 0; this.gpsLon = 0; this.gpsAlt = 0; this.gpsFix = UavionixAdsbOutDynamicGpsFix[Object.keys(UavionixAdsbOutDynamicGpsFix)[0]]; this.numSats = 0; this.baroAltMSL = 0; this.accuracyHor = 0; this.accuracyVert = 0; this.accuracyVel = 0; this.velVert = 0; this.velNS = 0; this.VelEW = 0; this.emergencyStatus = UavionixAdsbEmergencyStatus[Object.keys(UavionixAdsbEmergencyStatus)[0]]; this.state = UavionixAdsbOutDynamicState[Object.keys(UavionixAdsbOutDynamicState)[0]]; this.squawk = 0; } } exports.UavionixAdsbOutDynamic = UavionixAdsbOutDynamic; UavionixAdsbOutDynamic.MSG_ID = 10002; UavionixAdsbOutDynamic.MSG_NAME = 'UAVIONIX_ADSB_OUT_DYNAMIC'; UavionixAdsbOutDynamic.PAYLOAD_LENGTH = 41; UavionixAdsbOutDynamic.MAGIC_NUMBER = 186; UavionixAdsbOutDynamic.FIELDS = [ new mavlink_1.MavLinkPacketField('utcTime', 'utcTime', 0, false, 4, 'uint32_t', 's'), new mavlink_1.MavLinkPacketField('gpsLat', 'gpsLat', 4, false, 4, 'int32_t', 'degE7'), new mavlink_1.MavLinkPacketField('gpsLon', 'gpsLon', 8, false, 4, 'int32_t', 'degE7'), new mavlink_1.MavLinkPacketField('gpsAlt', 'gpsAlt', 12, false, 4, 'int32_t', 'mm'), new mavlink_1.MavLinkPacketField('baroAltMSL', 'baroAltMSL', 16, false, 4, 'int32_t', 'mbar'), new mavlink_1.MavLinkPacketField('accuracyHor', 'accuracyHor', 20, false, 4, 'uint32_t', 'mm'), new mavlink_1.MavLinkPacketField('accuracyVert', 'accuracyVert', 24, false, 2, 'uint16_t', 'cm'), new mavlink_1.MavLinkPacketField('accuracyVel', 'accuracyVel', 26, false, 2, 'uint16_t', 'mm/s'), new mavlink_1.MavLinkPacketField('velVert', 'velVert', 28, false, 2, 'int16_t', 'cm/s'), new mavlink_1.MavLinkPacketField('velNS', 'velNS', 30, false, 2, 'int16_t', 'cm/s'), new mavlink_1.MavLinkPacketField('VelEW', 'VelEW', 32, false, 2, 'int16_t', 'cm/s'), new mavlink_1.MavLinkPacketField('state', 'state', 34, false, 2, 'uint16_t', ''), new mavlink_1.MavLinkPacketField('squawk', 'squawk', 36, false, 2, 'uint16_t', ''), new mavlink_1.MavLinkPacketField('gpsFix', 'gpsFix', 38, false, 1, 'uint8_t', ''), new mavlink_1.MavLinkPacketField('numSats', 'numSats', 39, false, 1, 'uint8_t', ''), new mavlink_1.MavLinkPacketField('emergencyStatus', 'emergencyStatus', 40, false, 1, 'uint8_t', ''), ]; /** * Transceiver heartbeat with health report (updated every 10s) */ class UavionixAdsbTransceiverHealthReport extends mavlink_1.MavLinkData { constructor() { super(); this.rfHealth = UavionixAdsbRfHealth[Object.keys(UavionixAdsbRfHealth)[0]]; } } exports.UavionixAdsbTransceiverHealthReport = UavionixAdsbTransceiverHealthReport; UavionixAdsbTransceiverHealthReport.MSG_ID = 10003; UavionixAdsbTransceiverHealthReport.MSG_NAME = 'UAVIONIX_ADSB_TRANSCEIVER_HEALTH_REPORT'; UavionixAdsbTransceiverHealthReport.PAYLOAD_LENGTH = 1; UavionixAdsbTransceiverHealthReport.MAGIC_NUMBER = 4; UavionixAdsbTransceiverHealthReport.FIELDS = [ new mavlink_1.MavLinkPacketField('rfHealth', 'rfHealth', 0, false, 1, 'uint8_t', ''), ]; exports.REGISTRY = { 10001: UavionixAdsbOutCfg, 10002: UavionixAdsbOutDynamic, 10003: UavionixAdsbTransceiverHealthReport, }; //# sourceMappingURL=uavionix.js.map