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
.