//////////////////////////////////////////////////////////////// 
// 
// PURPOSE: This contains SensorModule parameters for Makai.
//
// NOTES:   All values (except "strings") must be followed by
//          a unit abbreviation (or one of the unit-like
//          abbreviations: n/a, bool, enum, count). 
// 
////////////////////////////////////////////////////////////////

   AHRS_M2.loadAtStartup = 1 bool;
   AHRS_M2.simulateHardware = 0 bool;
   AHRS_M2.power = 0.06 watt;
   AHRS_M2.magDeviation = 0.0 degree;
   AHRS_M2.readAccelerations = 0 bool;
   AHRS_M2.readMagnetics = 0 bool;
   AHRS_M2.verbosity = 0 count;

   // The second generation 4 chan mux to the Ocean Server IBPS
   BPC1.loadAtStartup = 1 bool;
   BPC1.simulateHardware = 0 bool;

   DAT.loadAtStartup                  = 0 bool;                  
   DAT.simulateHardware             = 0 bool;                    
   DAT.localAddress = 4 count;

   DataOverHttps.loadAtStartup = 1 bool;
   DataOverHttps.power = 0.001 watt; // Not actual hardware
   DataOverHttps.connectionTimeout = 30 second;  // If transaction takes this long, try again.
   DataOverHttps.period = 60 second;  // How often to check in with server.
   DataOverHttps.timeout = 3 minute; // If not connected for this period of time, fall over to the next comms channel.
   DataOverHttps.verbosity = 0 count; // Actually more like a volume control: >2 logs debug messages as IMPORTANT, 2 as INFO, 1 as DEBUG, and <1 as NONE

   Depth_Keller.loadAtStartup = 1 bool;
   Depth_Keller.simulateHardware = 0 bool;
   Depth_Keller.offset = 2.5 decibar;
   Depth_Keller.scale = 45.56 micropascal; // per count of A/D. Serial #114
   Depth_Keller.maxPressBound = 500 decibar;
   Depth_Keller.minPressBound = -10 decibar;   

   DropWeight.loadAtStartup = 1 bool;
   DropWeight.simulateHardware = 0 bool;

   DVL_micro.loadAtStartup             = 0 bool;

   GobyModem.loadAtStartup    = 0 bool;
   GobyModem.simulateHardware = 0 bool;
   GobyModem.modemType = "benthos_atm900"; // Either benthos_atm900 or whoi_micromodem
   GobyModem.networkIds = "0";   // Comma separated list of IDs of all deployed vehicles with modems
   // This must match in all simulataneously deployed vehicles
   // Used to allocate transmission time slots
   GobyModem.maxDistance = 5 km;   // Maximum distance of transmission, used in simulation
   GobyModem.transBaud   = 30 bps; // Baud rate of transmission, used in simulation

   NAL9602.loadAtStartup = 1 bool;
   NAL9602.simulateHardware = 0 bool;
   NAL9602.requestGGA = 0 bool;        // If false recommended minimum data will be requested
      
   Onboard.loadAtStartup = 1 bool;
   Onboard.simulateHardware = 0 bool;
   OnboardPressure.coefA0      = 2413.0 none;
   OnboardPressure.coefB1      = -2.854248 none;
   OnboardPressure.coefB2      = -1.159424 none;
   OnboardPressure.coefC12     = 0.000950 none;

   Onboard.power = 0.010 watt;   // Guess
   OnboardPressure.slope = 172.62 psi/V; 
   OnboardPressure.intercept = 3.3 psi;

   PNI_TCM.loadAtStartup = 0 bool;
   PNI_TCM.simulateHardware = 0 bool;

   Radio_Surface.loadAtStartup = 1 bool;
   Radio_Surface.simulateHardware = 0 bool;
   Radio_Surface.power = 3.50 watt;
   Radio_Surface.maxDepth = 0.5 meter;    // Turn off power below this depth

   RDI_Pathfinder.loadAtStartup = 1 bool;
   RDI_Pathfinder.simulateHardware = 0 bool;

   RDI_PathfinderUp.loadAtStartup = 1 bool;
   RDI_PathfinderUp.simulateHardware = 0 bool;