////////////////////////////////////////////////////////////////////
//
// PURPOSE: List of vehicle parameters, such as mass properties
//          specific to target named Whoidhs
//
// DATE:    2018/06/14
//
// NOTES:   All values (except "strings") must be followed by
//          a unit abbreviation (or one of the unit-like
//          abbreviations: n/a, bool, enum, count). 
//
////////////////////////////////////////////////////////////////////

Vehicle.name            = "polaris";      // Does not need to match hostname
Vehicle.id              = 0 enum;     // TODO: Why aren't these numbers consistent with the physical hulls?
Vehicle.kmlColor        = "ff66FF66"; // 4 hex bytes indicating alpha, blue, green, and red

Vehicle.argoProgram     = "12228";
Vehicle.argoPlatform    = "176853";

Vehicle.sendDataToShore = 1 bool;     // If true, telemeter data to shore
Vehicle.checkMTQueue    = 1 bool;     // Tells the vehicle whether to explicitly check for MT SBD messages in the queue. Will only check immediately following a GPS fix


   // Aft battery pack
   BPC1A.uart                     = "/dev/ttyTX0"
   BPC1A.baud                     = 19200 bps;

   // Fwd battery pack
   BPC1B.uart                     = "/dev/ttyTX2"
   BPC1B.baud                     = 19200 bps;

   AHRS_M2.loadControl            = "/dev/loadC7";
   AHRS_M2.uart                   = "/dev/ttyC7";
   AHRS_M2.baud                   = 115200 bps;

   // /dev/loadC6 is a spare slot
   
   BackseatComponent.loadControl  = "/dev/loadC5";
   BackseatComponent.uart         = "/dev/ttyC5";
   BackseatComponent.baud         = 115200 bps;

   DUSBL_Hydroid.loadControl           = "/dev/loadC4";
   DUSBL_Hydroid.uart                  = "/dev/ttyC4";
   DUSBL_Hydroid.baud                  = 57600 bps;

   WetLabsSeaOWL_UV_A.loadControl = "/dev/loadC3";
   WetLabsSeaOWL_UV_A.uart        = "/dev/ttyC3";
   WetLabsSeaOWL_UV_A.baud        = 19200 bps;

   Aanderaa_O2.loadControl        = "/dev/loadC2";
   Aanderaa_O2.uart               = "/dev/ttyC2";
   Aanderaa_O2.baud               = 9600 bps;

   // /dev/loadC1 is a 232-Batt-5A spare slot

   PAR_Licor.loadControl          = "/dev/loadC0";
   PAR_Licor.ad                   = "/dev/mcp3553C0";
   PAR_Licor.adRes                = 21 bit;
   PAR_Licor.adTimeout            = 125 ms;
   PAR_Licor.adVref               = 2.5 V;

   NAL9602.loadControl            = "/dev/loadB7";
   NAL9602.uart                   = "/dev/ttyS2";
   NAL9602.baud                   = 19200 bps;

   // surface radio is only a "dumb" interface to some sort of surface radio that
   // is self contained. No uart is supported.
   Radio_Surface.loadControl      = "/dev/loadB6";

   CTD_Seabird.loadControl       = "/dev/loadB5";
   CTD_Seabird.uart              = "/dev/ttyB5";
   CTD_Seabird.baud              = 9600 bps;

   Power24vConverter.loadControl = "/dev/loadB3";

   // Down ADCP
   RDI_Pathfinder.loadControl     = "/dev/loadB2";
   RDI_Pathfinder.uart            = "/dev/ttyB2";

   // Upward looking ADCP
   RDI_PathfinderUp.loadControl   = "/dev/loadB1";
   RDI_PathfinderUp.uart          = "/dev/ttyB1";
   RDI_PathfinderUp.baud          = 115200 bps;

   Depth_Keller.loadControl       = "/dev/loadB0";
   Depth_Keller.ad                = "/dev/mcp3553B0";
   Depth_Keller.adRes             = 21 bit;
   Depth_Keller.adTimeout         = 125 ms;
   Depth_Keller.adVref            = 2.5 V;

   GobyModem.loadControl          = "/dev/loadA7";
   GobyModem.uart                 = "/dev/ttyA5"
   GobyModem.baud                 = 9600 bps; // Not actually used, but must be a valid value

   Micromodem.loadControl          = "/dev/loadA7";
   Micromodem.uart                 = "/dev/ttyA7"
   Micromodem.baud                 = 19200 bps;

   MassServo.loadControl          = "/dev/loadA5";
   MassServo.uart                 = "/dev/ttyA5"
   MassServo.baud                 = 9600 bps;

   ElevatorServo.loadControl      = "/dev/loadA4";
   ElevatorServo.uart             = "/dev/ttyA4";
   ElevatorServo.baud             = 9600 bps;

   RudderServo.loadControl        = "/dev/loadA3";
   RudderServo.uart               = "/dev/ttyA3"
   RudderServo.baud               = 9600 bps;

   BuoyancyServo.loadControl      = "/dev/loadA2";
   BuoyancyServo.uart             = "/dev/ttyA2"
   BuoyancyServo.baud             = 9600 bps;

   ThrusterServo.loadControl      = "/dev/loadA1";
   ThrusterServo.uart             = "/dev/ttyA1"
   ThrusterServo.baud             = 9600 bps;