Version 0.18.2 Settings


!! IMPORTANT !!

This guide is for advanced users only.  Changing the config.yml file by hand can result in a camera that will no longer start up properly until a valid config.yml file is loaded.  If you are unsure of what settings to change, contact Sentera for support before making changes.


** CAUTION **

This guide applies to version 0.18.2 of the software.

It is recommended to upgrade your firmware to at least this version before following the guide.


Config.yml Details


Config File Loading


Overview

The config.yml file in the base directory of the sd card determines the behavior of the system when it starts up. It fully defines the ip addresses, post processing, video streams, folder names, gps sources, and many other settings that can be customized for different platforms. Any changes to this file will only take effect after the file has been saved and the camera has been rebooted.


Behavior on Boot

To ensure that the camera doesn't get into a state where it will not start up due to a corrupt or missing config.yml file, the config file is loaded in the following manner.


  1. [sdcard]/config.yml is loaded
    • If this config file loads successfully
      • The camera saves this config.yml file as the last known good config
      • config.yml is written back out to the sdcard to write any missing entries due to firmware updates
      • Initialization is complete, STOP
    • If the config file is missing or fails to load, proceed to step 2
  2. Last known good config.yml is loaded
    • This is the last config.yml that successfully booted the camera
    • If this config file loads successfully
      • The known good config.yml is written to the sdcard to indicate the new current settings.  If there was a config.yml present that was corrupt, it will be overwritten
      • Initialization is complete, STOP
    • If the last known good config.yml is missing or fails to load, proceed to step 3
  3. Factory defaults config.yml is loaded
    • This typically does not occur, since it required both the config.yml and last known good config.yml to be corrupt
    • If this config file loads successfully
      • The factory-defaults-config.yml is written to config.yml. If there was a config.yml present that was corrupt, it will be overwritten
      • Initialization is complete, STOP
    • If the last known good config.yml is missing or fails to load, proceed to step 4
  4. Camera safe mode config.yml is loaded
    • This should never occur, and is a final failsafe to ensure the camera boots
    • This contains a safe set of parameters stored in the program itself, including the default IP address and camera settings
    • If this config file loads successfully
      • The camera safe settings are written to config.yml. If there was a config.yml present that was corrupt, it will be overwritten
      • Initialization is complete, STOP
    • If this fails, then the bottom indicator LED will continue to blink red, and the camera will not initialize.  An error will be generated in the log files.


This method of failsafes allows the system to handle both corrupted SD cards, and blank SD cards being placed into the system.  If a fresh blank sd card is used in the system, the camera will load the last known good config file, and save it out to the sd card after the initial boot.  This allows replacing old sd cards with new ones without needing to copy over all the old config files.



Config File Parameters


!! IMPORTANT !! When editing parameters, the spacing and names of the parameters to the left of the : MUST remain the same.  ONLY edit the values to the right of the : or the config file will be rejected.


Legend

While there are a number of settings that can be modified, some are safer and easier to modify than others. To help clarify settings that are likely to be changed, the following scheme is used: 

  • Parameter    - These are commonly modified items and are generally safe to modify
  • Parameter** - These settings are not commonly changed, and caution should be taken before modifying them
  • Parameter!!  - These should NEVER be changed unless specifically directed by Sentera


Imager Settings


These settings control the exposure, processing, and folder name for the 2 separate imagers found on the Double4k camera.  In the sample below, there are two imager entries each starting with a - CamID:


Section Location: 

CameraConfig::Imager::-  

(Typically 2 entries, see below)


Sample Imager Settings:

Imager:
  - CamID: 0
    CamName: RGB
    Exposure:
      AutoExposure: frame-average
      EV: -5
      ISO: ISO800
    Image:
      JpegQuality: 90
      PostProcessing: ENHANCE
      Size:
        Height: 3000
        Width: 4000
    StartingZoomGain: 1.0
    TriggerID: 1
    WorldFiles:
      Enabled: false
  - CamID: 1
    CamName: NIR
    Exposure:
      AutoExposure: frame-average
      EV: 5
      ISO: ISO400
    Image:
      JpegQuality: 90
      PostProcessing: MINIMAL
      Size:
        Height: 3000
        Width: 4000
    StartingZoomGain: 1.0
    TriggerID: 2
    WorldFiles:
      Enabled: false


  • CamID!!
    • A unique identified for which camera bus this section refers to.
  • CamName**
    • The name of the folder that is created inside of the session folder
    • ** This must be unique between the two imagers, a repeat name is NOT allowed
    • Valid Settings:
      • Alphanumeric, No Spaces
    • Typical Ag:
      • RGB
      • NIR
    • Typical Inspection:    
      • WideRGB
      • NarrowRGB
  • Exposure::AutoExposure
    • Controls what portion of the image is used for auto-exposure.  This can be the entire frame, or a small portion of the center frame
    • Valid Settings:    
      • frame-average    : Uses the entire image for exposure, good for ground surveys
      • center-weighted  : Uses the enter frame, but weights the center 1/3 more, good for tower and building inspections where the center 1/3 of the image has the region of interest.
      • spot-metering      : Uses ONLY the very center of the image.  Can be good for towers, but the tower has to be centered or the exposure will be wrong
    • Typical Ag:    
      • frame-average
    • Typical Inspection    
      • center-weighted
  • Exposure::EV  (Exposure Value)
    • Controls how bright or dark the overall image is.  This is the main control to shift the image brightness up or down as long as ISO is set reasonably.  This is usually set negative for Ag where most of the scene is dirt or plants and set positive for flights that will be looking forward and have a significant amount of sky.
    • Valid Settings:    
      • -10 - 10
      • Integers
    • Typical Ag:    
      • RGB: -5
      • NIR: 5
    • Typical Inspection    
      • RGB (Ground Targets): -5
      • RGB (Towers/Horizon): 6
  • Exposure:: ISO
    • Sets the gain for the image.  
    • Typically AUTO gives the best performance (lowest gain possible without image blur occurring)
    • For manual settings ISO400/800 is used for taking images of crops and fields while ISO200/400 can work well for inspection.  It mainly depends on the amount of light in the scene.  Higher ISOs lead to less motion blur (due to faster shutter speeds), but will increase imager noise.  If the ISO is set too high, autoexposure may have problems getting the correct brightness and will oscillate between bright and dark.
    • Valid Settings:    
      • AUTO
      • ISO100
      • ISO200
      • ISO400
      • ISO800
      • ISO1600
    • Recommended:
      • RGB: AUTO
      • NIR: AUTO
    • Typical Manual Ag:     
      • RGB: ISO800
      • NIR: ISO400
    • Typical Manual Inspection    
      • RGB: ISO400
  • Image:: JpegQuality
    • Controls the strength of the jpeg compression. The higher the number, the larger the file size and the more fine detail the image will retain.  100% will contain the highest quality images, but will also be the largest file size.
    • Valid Settings:    
      • 50-100
      • ** Integers Only
    • Typical Setting:    
      • 80
  • Image::PostProcessing!!
    • Determines what post-processing steps are performed on the image before it is saved.  For scientific measurements, MINIMAL will disable all but the essential pixel modifications, while ENHANCE is used to produce visually pleasing images.  This is set when the camera is programming, and generally should not be changed.
    • Valid Settings:    
      • MINIMAL                    : Disables all ISP steps except for Bad Pixel Correction and Lens Corrections
      • ENHANCE                  : Enables all ISP steps to provide nice images
      • NDVI                           : Processes the NDVI image onboard and saves greyscale NDVI to the card (unavailable on most cameras)
    • Typical Ag:    
      • RGB: ENHANCE
      • NIR:  MINIMAL
    • Typical Inspection:    
      • ENHANCE
  • Image::Size::Width/Height**
    • Sets the size of the still image to save.  This should typically NOT be changed as it will change the field of view of the camera, resulting in overlap settings that may not be accurate.
    • Valid Settings (Width x Height):
      • 4000x3000, 3200x2400, 2592x1944, 2048x1536, 1920x1080, 1600x1200, 1280x960, 1280x768, 1280x720, 1024x768, 800x600, 800x480, 720x480, 640x480, 352x288, 320x240, 176x144

    • Default Setting:

      • 4000x3000

  • StartingZoomGain**
    • Sets the digital zoom level of the camera when it first starts up.  
    • ** This is should almost always be 1 (no zoom).
    • Valid Settings:    
      • 1.0 - 6.0
      • 6.0 = 6x zoom
    • Typical Setting:    
      • 1.0
  • TriggerID!!
    • When using the Sentera ICD, this determines which bit in the trigger mask this camera will watch for when receiving trigger commands. 
    • !! Changing this may result in the camera failed to take pictures as expected
  • WorldFiles:: Enabled!!
    • This enables generation of .jgw world files for each image that is captured by the camera for use in GIS software.
    • !! This is an experimental feature, and should not be enabled without consulting with Sentera
    • Valid Settings:    
      • true/false


Video Settings


These settings control the bitrate, transport type, size, and overlay of the camera video feed.  The video feed should only be enabled on systems that support digital data links to the ground station.  This includes the Omni, Indago2, and Phoenix2 systems.


Section Location: 

CameraConfig::VideoSettings


Sample VideoSettings:

  VideoSettings:
    Bitrate_kbsp: 5000
    FrameRate: 30
    Recording:
      Enabled: false
      Format: MP4
    Streaming:
      Enabled: true
      Format: MPEG2_TS
      UseRTPHeaders: false
    VideoSize:
      Height: 720
      Width: 1280
    ViewConfig:
      OSDConfig:
        AngleIndicator: false
        Background: true
        CameraSettings: true
        Crosshairs: false
        Enabled: true
        GPSStatus: true
        PictureTaken: true
      Position:
      - FULL
      - DISABLE
      Shaders:
      - fragshade_none.glsl
      - fragshade_none.glsl


  • Bitrate_kbsp**
    • The bit rate of the raw video feed in kilobits/second.  
    • ** Extreme care should be taken when adjusting this as too high of a value can flood the data link and result in video breakups at long ranges, while too low of a setting will result in an unusable video.
    • Valid Settings:
      • 500-10000
      • Integers Only
    • Typical Setting:
      • 5000
  • FrameRate!!
    • The frame rate of the video feed
    • !! Currently, only 30 fps is supported
  • Recording::Enabled**
    • Enables recording video locally to the SDCard
    • ** This feature currently only works when the platform supports opening AND closing sessions, otherwise the video will be corrupt.  Contact Sentera for details.
    • ** The recorded video will be the same resolution and have the same overlays as the streaming video
    • Valid Settings:   
      • true
      • false
    • Typical Setting:   
      • false
  • Recording:: Format!!
    • The file format of the recorded video file.  
    • !! Only Mpeg4 (MP4) is supported, so this should not be changed
  • Streaming:: Enabled
    • Enables/Disables streaming video to a ground station
    • Only supported on platforms with digital data links (Omni, Phoenix2, Indago2)
    • Valid Settings:
      • true
      • false
    • Typical Setting:
      • Omni/Phoenix2/Indago2: true
      • Others: false
  • Streaming:: Format**
    • This sets the transport stream format of the streaming video feed.
    • ** This is platform dependent, and changing it may cause the feed to your particular ground station to stop functioning.
    • Valid Settings:
      • H264            -  Raw H264 over UDP.  This is typically used with UseRTPHeaders=true for H264 over RTP [RFC 6184]
      • MPEG2_TS  - Encapsulates the H264 in an MPEG2 Transport Stream (video feed only)
    • Typical Settings:
      • Omni/Indago2: MPEG2_TS
      • Phoenix2: H264
  • Streaming:: UseRTPHeaders**  
    • Enables the use of Real-time Transport Protocol (RTP) headers to encapsulate the protocol from the Format setting 
    • ** This is platform dependent, and changing it may cause the feed to your particular ground station to stop functioning.
    • Valid Settings:
      • true
      • false
    • Typical Settings:
      • Omni/ Indago2: false
      • Phoenix2: true
  • VideoSize::Height/Width
    • Changes the size of the video feed. 
    • While any size is supported, best results are obtained when using a 16x9 aspect ratio
    • Valid Settings:  
      • Width:   320 - 1920
      • Height:  240 - 1080
      • Integer Values
    • Typical Settings [Width x Height]:  
      • 1920 x 1080
      • 1280 x 720
      • 852 x 480
      • 568 x 320
  • ViewConfig:: OSDConfig::*
    • This enables and disables various displays in the video feed.  These displays are purely cosmetic and will not change the functionality of the system.
    • Fields:  
      • Enabled
        • Enables/Disables ALL OSD Displays.  Set this to false to get a pure video feed
      • Angle Indicator
        • Displays an artificial horizon line at 0 degrees, and 90 degrees to help check the pitch angle of the gimbal.
      • Background
        • Displays a translucent white background behind the GPS Status and Picture Taken Status to help with readability
      • CameraSettings
        • Displays the ISO and EV compensation values for the camera that is currently full-screen in the display.
      • Crosshairs
        • Displays a static cross-hairs in the center of the image
      • GPSStatus
        • On systems with a GPS separate from the vehicle GPS, this will display the signal strength of the camera GPS as well as the RTK fix type.
      • PictureTaken
        • Enables the display of a small camera icon and a number indicating which imager is active whenever a picture is taken.
    • Valid Settings:  
      • true
      • false
  • ViewConfig::Position
    • This controls the initial configuration of the video feed for both the RGB and NIR Cameras.  
    • The top element of the list refers camera 0 (typically RGB/Wide) and the bottom item refers to camera 1 (typically NIR/Narrow)  
    • ** Both fields can be set independently, but one of the two should always be set to FULL or TOP.
    • Valid Settings:  
      • FULL         : This camera will take up the full size of the video feed
      • PIP_LR     : This camera will display as a small picture in picture window in the lower right
      • TOP          : This camera will take up the top half of the display, stretching to fit
      • BOTTOM  : This camera will take up the bottom half of the display, stretching to fit
      • OVERLAY : This camera will display translucently over the top of the FULL display (beta, do not use)
      • DISABLE   : Do not show this camera
    • Typical Ag:  
      • - DISABLE
      • - NONE
    • Typical Inspection  
      • - PIP_LR
      • - FULL
  • ViewConfig:: Shaders!!
    • This controls how the raw video feed is post-processed on the camera before streaming.  It is set at the factory and should not be changed by the end user.  
    • !! Changing this may result in a non-functional video feed.
    • Valid Settings:  
      • fragshade_none.glsl      : Typical setting for NIR and RGB Cameras
      • fragshade_ndvi.glsl        : Used for LiveNDVI (supported cameras only, contact Sentra for details)
      • fragshade_overlay.glsl   : Makes the video feed translucent (beta, do not use)
    • Typical Settings:  
      • - fragshade_none.glsl
      • - fragshade_none.glsl

File Settings


These settings are primarily for the use of the end user to help track and version various config files.  Most of the settings here do not affect the camera in any way and can be freely changed to assist in keeping track of multiple config.yml files.


Section Location: 

File


Sample File Settings:

File:
  ConfigName: Omni Ag
  ConfigRevision: F
  FileVersion: '1.0'
  ModifiedDate: '2017-04-28 11:48:36'
  SWVersion: 0.16.0


  • ConfigName
    • User editable name for this config file.  
    • It does not have to match the file name and can be anything that will help differentiate the file to the end user.
    • This is not used anywhere by the software, so can be freely changed
    • Valid Settings:  
      • Alphanumeric, including spaces
  • ConfigRevision
    • User editable revision number or letter.
    • This is not used anywhere by the software, so can be freely changed
    • Valid Settings:  
      • Alphanumeric, including spaces
  • FileVersion!!
    • The revision of this config file
    • !! This is used to help detect drastic changes to the config format.  DO NOT CHANGE THIS.
  • ModifiedDate
    • User editable date that the file was last updated
    • !! IMPORTANT: follow the date format present in the file or it will not parse.  
    • Valid Settings:  
      • Any date in the format:  YYYY-MM-DD HH:MM:SS
  • SWVersion!!
    • Updated automatically when the config file is read to indicate the most recent version of the software that read the config file


Light Sensor (ILS) Settings


For systems that support an incident light sensor (ILS), this section specifies the ID and protocol used to communicate with the sensor.


Section Location: 

ILSConfig


Sample ILSConfig Settings:

IlsConfig:
  Source: NONE
  UDPBlockID: 0


  • Source!!   
    • Specified the communication protocol used to talk to the ILS
    • !! This option should only be enabled when a Sentera ILS is connected to the system
    • Valid Settings:
      • NONE    : No ILS is present on the system
      • UDP       : ILS data is received through a UDP data stream
      • I2C         : ILS data is received through a direct connection to the camera I2C Port
    • Typical Settings:
      • ILS Present:  UDP
      • ILS Absent: NONE
  • UDPBlockID!!   
    • The UDP ID of the light sensor assigned to this camera.
    • ** Only applicable to UDP sensors
    • !! This option should only be changed on multi-camera systems.
    • Valid Settings:
      • 0-16
      • Integer Value
    • Typical Settings:
      • 0


Network Settings


This section consists of the IP addresses of the camera as well as various servers and data sources that provide the camera with additional information.  Not all of them are used for all systems.


Since the purpose of many of the entrees is the same, the entries are covered separately from what the section controls.


Section Location: 

NetworkConfig


Sample NetworkConfig Settings:

NetworkConfig:
  Camera:
    IP: 192.168.143.141
    MulticastIP: 239.192.143.140
    RxPort: 60530
    TxPort: 60531
  Dji:
    IP: 192.168.143.141
    MulticastIP: 239.192.143.140
    RxPort: 60550
    TxPort: 60551
  Ils:
    IP: 192.168.143.141
    MulticastIP: 239.192.143.140
    RxPort: 60540
    TxPort: 60541
  Sbgc:
    IP: 192.168.143.141
    MulticastIP: 239.192.143.140
    RxPort: 60570
    TxPort: 60571
  StatusPacketDest:
    IP: 192.168.143.130
    Port: 60531
  Ublox:
    IP: 192.168.143.141
    MulticastIP: 239.192.143.140
    RxPort: 60590
    TxPort: 60591
  VideoPacketDest:
    IP: 192.168.143.131
    Port: 50008
  WifiAP:
    Channel: 9
    Enabled: true
    IP: 192.168.43.1


Camera servers contain TX and RX ports and configurations, while broadcasters only have a port and IP.


Servers 


Settings:

Look at the sections names below for which sections can be changed

  • IP
    • The IP Address that the server should listen on
    • Valid Settings: 
      • A Valid IPV4 Address
  • MulticastIP
    • The multicast IP that the server is also subscribed to for receiving broadcast messages
    • Valid Settings:
      • A Valid IPV4 Multicast Address
  • RXPort
    • The port the server will listen for messages on
    • Valid Settings: 
      • Valid port >1000
  • TxPort
    • The port the server will send responses on
    • Valid Settings: 
      • Valid port >1000


Applicable Sections:

  • Camera
    • Specifies the connection properties for the main ICD specified in the Sentera Protocol
    • Sets the IP Address for the camera itself
    • Typical Settings: 
      • IP: 192.168.143.141
      • MulticastIP: 239.192.143.140
      • RXPort: 60530
      • TXPort: 60531
  • Dji!!
    • Sets the receiving address and port for DJI packets received from the autopilot
    • !! A Sentera Comms board and an A3 autopilot is required to receive DJI attitude data
    • Typical Settings: 
      • IP: 192.168.143.141
      • MulticastIP: 239.192.143.140
      • RxPort: 60550
      • TxPort: 60551
  • Ils!!
    • Sets the receiving address and port ILS data over UDP
    • !! ILSConfig::Source must be set to UDP for this to be used
    • !! A Sentera ILS must be present
    • Typical Settings: 
      • IP: 192.168.143.141
      • MulticastIP: 239.192.143.140
      • RxPort: 60540
      • TxPort: 60541
  • Sbgc!!
    • Sets the receiving address for the Small Brushless Gimbal Controller (sbgc) data over UDP
    • !! Only used on Omni systems
    • Typical Settings: 
      • IP: 192.168.143.141
      • MulticastIP: 239.192.143.140
      • RxPort: 60570
      • TxPort: 60571
  • Ublox!!
    • Sets the receiving address for a Ublox GPS over UDP
    • !! Requires a Sentera Comms Board
    • !! Used on Omni Systems
    • Typical Settings:
      • IP: 192.168.143.141
      • MulticastIP: 239.192.143.140
      • RxPort: 60590
      • TxPort: 60591


Broadcasters


Settings 

Look at the sections names below for which sections can be changed

  • IP
    • The IP Address that the broadcaster will send packets to
    • This can be a multicast address if your network supports it
    • Valid Settings: 
      • A Valid IPV4 Address or IPV4 Multicast address
  • Port
    • The port to broadcast the information to
    • Valid Settings: 
      • Valid port >1000


Applicable Sections


  • StatusPacketDest
    • The address to send payload status packets to, as defined in the Sentera Payload ICD
    • These packets are sent out at a rate of ~2Hz as long as the payload is active
    • Typical Settings:
      • IP:  192.168.143.130
      • Port: 60531
  • VideoPacketDest
    • The address to send the video feed to
    • The format of the video feed is defined in the VideoSettings section
    • The video feed will only be sent when a session is open
    • Typical Settings:
      • IP: 192.168.143.242
      • Port: 50008



Wifi Access Point


Settings 

Look to the sections names below for which sections can be changed

  • Enabled
    • Enables and disables the wireless access point
    • Valid Settings: 
      • true/false
  • IP
    • The IP Address of the camera when connecting over Wifi
    • NOTE:  This CANNOT be in the same subnet as the wired IP address, or the wifi connection will fail.
    • Valid Settings: 
      • A Valid IPV4 Address outside of the wired subnet
  • Channel
    • The wireless channel to use for the AP
    • Valid Settings: 
      • 1-13 (1-11 in the US)


Applicable Sections


  • WifiAP
    • Enables/Disables the build in Wifi Access Point
    • Note: This requires a Wifi antenna installed on the camera.  If your system did not come with version 0.18.0 of the firmware, contact Sentera to add the antenna to your camera.
    • Typical Settings:
      • Channel: 9
      • Enabled: true
      • IP: 192.168.43.1


Session Settings


This section defines when the camera will start a session, when it will start video feeds, how it will take a picture, as well as how it calculates overlap (when in automatic picture modes).  This is likely one of the most modified sections when flying with different overlap requirements.


Section Location: 

SessionConfig


Sample SessionConfig Settings:

SessionConfig:
  ForceAppendSessions: false
  GPSFixConfig:
    AccurateFixMeters: 6.0
    DegradedFixMeters: 20.0
    PreciseFixMeters: 1.0
  SessionType: GPS_FIX
SourceConfig:
  DjiConfig:
    PlatformType: M100
  ProcerusConfig:
    FirmwareType: LEGACY
    UseRevRProtocol: false
  SourceType: U_BLOX_P_DJI
TriggerConfig:
  IntervalConfig:
    IntervalSeconds: 2.0
  LocationTriggerConfig:
    AutoHeightOverlapConfig:
      MinimumTriggerHeightAGLMeters: 10.0
      OverlapPercent: 30.0
    DistanceConfig:
      TriggerDistanceMeters: 10.0
    KnownHeightOverlapConfig:
      OverlapPercent: 25.0
  TriggerType: AUTO_HEIGHT_OVERLAP
KnownHeightAGLMeters: 5.21208


Session Start Settings


Settings in this section control when the camera will start an active session.  This means it will begin streaming video and start listening for triggers when the conditions in the SessionType are met.


  • SessionConfig::SessionType
    • This setting defines when the camera will enter an active state.  When the camera is active, the green LED will begin blinking, the camera video feed will start, and the system will begin listening for camera triggers.  This is the active state of the camera, and it will draw more power while running.
    • Most customers will want to leave this on GPS_FIX, since this will ensure that the images are correctly stamped with the GPS position and time when they are taken.
    • Valid Settings:
      • COMMAND  : Only the Sentera ICD will trigger images.  Used for the Indago2.
      • GPS_FIX      : Start the camera only when the GPS has obtained a fix of GPSFixConfig->AccurateFixMeters (default 6m).  This is the most common mode for our systems and will ensure good location and time data for the flight.
      • IMMEDIATE  : Start the session immediately upon camera boot.   The timestamps and location data on the image WILL be incorrect. This should only be used for debugging and testing the camera indoors.
    • Typical Setting: 
      • GPS_FIX
  • SessionConfig::ForceAppendSessions**
    • If this is enabled, starting a new session with the same name will not create a new folder using the _XXX suffix.  Instead, the new images will be appended to the end of a session folder that is already present.
    • ** If this is enabled, it is possible to have flight data from multiple days and locations inside the same folder, which may make importing images more difficult
    • This is usually only used when in SessionType=COMMAND mode
    • Valid Settings:
      • true
      • false
    • Typical Setting:
      • false

SessionType: GPS_FIX Settings


Location:

SessionConfig

  • GPSFixConfig::*
    • Only Valid In:
      • SourceType: UBLOX or U_BLOX_P_DJI
    • These settings control when the GPS is considered to have a good lock
    • The values here are the predicted error in the GPS position that is provided by the receiver.
    • ** Setting this value too high may result in inaccurate altitude estimates, as the system will estimate the takeoff altitude once the accuracy is less than AccurateFixMeters
    • There are 3 levels to the reading:
      • AccurateFixMeters   : When the predicted accuracy is less than this number and the camera is in GPS_FIX mode, a session will start
      • DegradedFixMeters  : If a session is running and of the TriggerType: OVERLAP modes are used, the system will stop taking pictures if the GPS accuracy falls below this value.  This helps prevent bad GPS tagging in images
      • PreciseFixMeters     : Used in RTK systems with video feeds.  When the predicted accuracy is lower than this value, full bars are displayed on the GPS Icon overlay.
    • Valid Settings:
      • 0.0-50.0 meters
    • Typical Settings:
      • AccurateFixMeters: 1.0
      • DegradedFixMeters: 20.0
      • PreciseFixMeters: 1.0


Trigger Settings


After a session has started, the setting in this region determines when the camera will take a picture.  There are a number of ways to configure the system, so pay close attention to which settings control which TriggerTypes.


  • TriggerConfig::TriggerType
    • After SessionType has started a session, this setting determines when the camera will take a picture.
    • Valid Settings:
      • COMMAND                              : Only take a picture when commanded via the ICD.  This includes button presses on the Omni controller.
      • AUTO_HEIGHT_OVERLAP    : This is the recommended settings for survey missions.  The system will automatically detect it's altitude and adjust the trigger to take pictures with the image overlap specified in (5) OverlapPercent.   As a guard against taking images while on the ground, the system must be at least (4) MinimumTriggerHeightAGLMeters above the ground or the trigger will be ignored.
      • INTERVAL                                :  Take an image every IntervalSeconds number of seconds while a session is running.  This is used for debugging the system on the ground, as well as on systems that do not have an available gps.
      • KNOWN_HEIGHT_OVERLAP :  Special case settings.  DO NOT USE.
      • DISTANCE                                :   Special case setting. DO NOT USE.  Take an image whenever the camera moves a fixed distance in space regardless of the current altitude.
    • Typical Ag:
      • AUTO_HEIGHT_OVERLAP
    • Typical Inspection
      • COMMAND


TriggerType: INTERVAL Settings


Location:

TriggerConfig


  • IntervalConfig::IntervalSeconds
    • Sets the time between images in seconds
    • Valid Settings:
      • 0.7 - 30.0
    • Typical Setting:
      • 2.0



TriggerType: AUTO_HEIGHT_OVERLAP Settings


Location:

TriggerConfig::LocationTriggerConfig


  • AutoHeightOverlapConfig::MinimumTriggerHeightAGLMeters
    • Sets the minimum height above ground in meters that the vehicle must be before it will start taking images based on the overlap setting.
    • Valid Settings:
      • 0.0 - 200.0
    • Typical Setting:
      • 10.0
  • AutoHeightOverlapConfig::OverlapPercent
    • The is the percentage overlap in the triggered images.  The system will use this percentage and the measured height above ground to trigger the camera when the desired overlap is reached.
    • Valid Settings:
      • 10.0 - 100.0
    • Typical Setting for QuickTile:
      • 30.0
    • Typical Setting for Stitching (Pix4d)
      • 70.0


TriggerType: DISTANCE Settings


Location:

TriggerConfig::LocationTriggerConfig

  • DistanceConfig::TriggerDistanceMeters!!
    • Sets the horizontal distance in meters that the camera should trigger at.  This does not take height into account.
    • !! In almost all cases, AUTO_HEIGHT_OVERLAP is a better mode to run in than this one.
    • Valid Settings:
      • 0.0 - 200.0
    • Typical Setting:
      • 10.0


TriggerType: KNOWN_HEIGHT_OVERLAP Settings


Location:

TriggerConfig::LocationTriggerConfig

  • KnownHeightOverlapConfig::OverlapPercent!!
    • The is the percentage overlap in the triggered images.  The system will use this percentage and the height above ground provided by KnownHeightAGLMeters to trigger the camera when the desired overlap is reached.
    • !! In almost all cases, AUTO_HEIGHT_OVERLAP is a better mode to run in than this one.
    • Valid Settings:
      • 10.0 - 100.0
    • Typical Setting for QuickTile:
      • 30.0
    • Typical Setting for Stitching (Pix4d)
      • 70.0
  • KnownHeightAGLMeters!!
    • The height above ground that is used to calculate the overlap.  The GPS height if present is ignored, and this is used instead.
    • !! In almost all cases, AUTO_HEIGHT_OVERLAP is a better mode to run in than this one.
    • Valid Settings:
      • 1.0 - 200.0


Data Source Settings


These settings determine how the camera receives its attitude (roll/pitch/yaw) and location (lat/long/height).  These settings are programmed at the factory for your particular system and usually are not modified unless custom control of the camera is required.

  • SourceType!!
    • This specifies the source of the metadata used to locate the image.
    • !! The valid settings for this depend on the particular system that you are using.  Contact Sentera before changing this value.
    • Valid Settings:
      • PROCERUS            : All GPS and attitude data is received via the Sentera ICD over UDP
      • U_BLOX                  : A Ublox GPS provides the location directly over a serial port, the attitude data is provided by an internal IMU on the camera
      • MAVLINK                 : All GPS and attitude data is received via serial over the Mavlink protocol
      • MAVLINK_SBP         : Attitude from Mavlink, position from a Swift RTK receiver
      • DJI                           : All GPS and attitude data is received over UDP via a Sentera Comms Board from an A3 autopilot with an RTK GPS (Standard GPS will not provide correct altitude data)
      • U_BLOX_P_DJI      : GPS information is provided by an external GPS, while the attitude is provided by a combination of the Gimbal and DJI A3 Autopilot via the Sentera Comms Board
      • SBP                          : Direct connection to a Swift RTK gps system using the swift binary protocol, attitude is from the internal IMU
      • NONE                      : No GPS or attitude data is provided
    • Typical Settings:
      • Omni: U_BLOX_P_DJI
      • Phantom/Inspire: DJI
      • Phoenix2: MAVLINK
      • Indago2: PROCERUS


SourceType: DJI or U_BLOX_P_DJI Settings


Location:

SourceConfig


  • DjiConfig::PlatformType!!
    • Specifies which DJI platform is being used for the DJI protocol.  Different platforms provide different data, so it must be provided here
    • !! Only the systems specified below are supported.  Contact Sentera if you wish to inquire about support for other platforms.
    • !! Incorrectly specifying the platform may result in invalid location/attitude
    • Valid Settings:
      • M100         : Omni Systems with a Gimbal
      • A3              : M600 Systems with an A3 Autopilot w/ Up to date firmware
      • A3_LEGACY: M600 Systems with firmware older than June of 2017
    • Typical Settings:
      • Omni:  M100
      • M600:  A3


SourceType: PROCERUS Settings


Location:

SourceConfig


  • ProcerusConfig::UseRevRProtocol!!
    • Some older Kestral autopilot based systems are incompatible with the new Sentera ICD.  For those systems, an older protocol can be used.
    • Currently, Indago1 and Phoenix2 [Kestral Variant] require this flag to work properly.
    • !! Only enable this if directed by Sentera
    • Valid Settings:
      • true
      • false
    • Typical Settings:
      • Phoenix2[Kestral]/Indago1: true
      • All Others: false

  • ProcerusConfig::FirmwareType!!
    • Older versions of the Sentera Gimbal with the Indago2 would not receive roll/pitch/yaw data from the aircraft, so NADIR roll was always assumed.  This is the LEGACY setting.
    • Newer Indago2 systems correctly report roll/pitch/yaw to the payload, allowing more accurate attitude stamps in the metadata.  This is AHRS_ASSIST.
    • Version 2.7.0+ of the Indago2 firmware support AHRS_ASSIST
    • !! Only change this if directed by Sentera
    • Valid Settings:
      • LEGACY
      • AHRS_ASSIST
    • Typical Settings:
      • Phoenix2[Kestral]/Indago1: LEGACY
      • All Others: false