Skip to content

SentiUtils Configuration

The configuration of SentiUtils is achieved through the use of a configuration file in the JSON format, and is supplied to SentiUtils in run-time as a parameter, i.e

$ ./sentiutils --config my-config.json

Config

An example config might look like this:

{
  "parser": {
    "rs232_1": "xsens",
    "uart1": "ublox",
    "uart2": "ublox",
    "spi1": "adis164xx",
    "spi2": "ic",
    "oc1": "trigger",
    "udp_sink": {
      "host": "127.0.0.1",
      "port": 21314
    }
  },
  "clock_filter": {
    "time_source": "uart2",
    "uart1": "tov",
    "rs232_1": "toa"
  }
}

Parser

The parser section tells SentiUtils which sensor/data format is to be expected on each of the SentiBoard's ports. The name of each sensor port is specificed as the SentiBoard's silkscreen for each port, and according to the "Trigger port" section in the listed trigger table. The config first lists the sensor port (name), and then the specific parser to be used for this port. A list of available parsers are listed below:

Output

The parser section is expected to be linked to a data sink. One such sink is the "udp_sink" and and can be added to the parser section as listed above. The udp_sink module takes "host" and "port" as config parameters in order to correctly bind the UDP socket to the requested endpoint.

List of available parsers:

Clock Filter

The clock filter will decide how the UTC field in the Header of each message should be populated. time_source specifies a time reference for SentiUtils. If this parameter is set to one of the SentiBoard's ports, SentiBoard expects a 1 PPS signal on the specified port's TOV-pin, together with a supported time reference message on that port's RX-pin. Supported time reference message protocols are NMEA ZDA, uBlox, and Piksi.

The time_source can also be set to system or sysclock, in which case the host will decide the UTC timestamp of the messages based on its internal time.

If there is no time_source set in the config, the SentiBoard's TOV of each message will be set also as the UTC time of the messages.

Further, each sensor port can be listed, and a timing/synchronization method can be chosen, either as tov (Time-of-Validity: a hardware timing signal connected to the port's TOV pin), or toa (Time-of-Arrival: the time of a sensor packet's first byte). If the sensor port is not listed under the clock_filter section, the timing method for that port will default to tov.