To configure the Vision Navigator and visualize the current trajectory, the user can access the web interface through a browser using the IP 10.0.1.1 with a direct Wi-Fi connection or 10.0.2.1 with a direct Ethernet connection. Note that these IP addresses only apply when the sensor is configured as the DHCP server or using the access point directly. The figure below presents an overview of the web interface content. In the Wi-Fi case, the SSID is the UID of the Vision Navigator, and the default password is “1234567890”.

Web interface structure overview
The home page of the web interface is the 'Fusion Status' page, which is shown in the figure below. The user can access the different configuration options through the navigation bar at the top of the screen, which also contains status indicators to monitor the sensor. Refer to Fusion Status Dashboard for more information about the status indicators.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTU1KS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=jUhNVaWY1HS6BIcT1sdEtG~8PUs2KHaVXmi1Zm-s5lWMt7xqZm25sW-Tg2I6FfedVau9X2VrZOyMv56PvQGUxSt-QwQqKdrN5GQmdWn~mTYaLDm2ohDGwCaQYcW3m0gZX8FkeiEsjMHY95oc79T~K-gE-A3DXNAMWcjQ50WT7WZeS-t2prrvwe0d3VrGygF~-aGuqk5YeRxPTZ7NVVAxmOBXoOsvgV-NXCPBAHAjg83oFAQTkjRYf7yvbmvbvl7~XPiLTTrYS8Mcfcmv3YgbSk0XsxoivhmSgmWpOHk7cIjTW7NiDXgz-6RVDt14ROsUEjuTT368dMolx-kDIkGqOg__&Key-Pair-Id=K2TK3EG287XSFC)
Home page of the web interface
Besides the status indicators and badges, this page contains a map with the downsampled GNSS1/2 and Fusion position trajectories. The table at the bottom of the page shows the position, orientation, and velocity data in the second column, while in the last column, the respective covariances are given.
On the home page, the user can find buttons to start (not displayed in the figure above) or stop the Fusion engine. Stopping the Fusion engine is necessary for most configurations. Please note that most of the configuration can also be done via API.
Furthermore, upon pressing the ’Actions’ button, the user can restart the Fusion engine with the ’Reset’ button (see the figure below). Besides that, an initial pose can be saved or loaded in this menu. One can save and label 5 different positions on the device. It is important to note that saving is only possible once Fusion is fully initialized. For Loading, on the other hand, Fusion only needs to be started and a previously warmstarted IMU bias needs to be available. Upon loading a previously saved position, Fusion is locally initialized, which means initializing in GNSS-denied environments is possible.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTUyKS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=pFjGwYyiZ9XP1EQ04hfwv1gHFp2wmvHl2Tm3NQSC0SDqw3zQKhoOjq85fZIed82UD1buLA4CFTsxVMlKubua7rY4vISsOVCV77UqTKFbITltR-c~xe8Xm8HVA1PEdnpn3Sj~1zX0Bu~XO3qFec-bIvmHQvzAlZy~XK7O5KS3~F5Vi9XlcXlA1GME67St6k5H0w~mu3i~t7o1hUoAWdusuaOPuNjGb67ImtsD7Zdc4N-LBDsiXMHjXA6voShCv-APzXWX1Zgd7nMKoC8e6DKycPq522Dm6pBL6MPddqhzqvtkRIyK6yoc8qbQRuK5IaEwge~o1UMf~1dvDJR8kOByrA__&Key-Pair-Id=K2TK3EG287XSFC)
Actions menu
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTUzKS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=DPY1pRfAIgdFVwlUEryVf1fsk1guNkNxPCI14F389FgslQ-Il0Qt4721twwTgbgf7xfPYhRb2KM2qVxsSPuuLa7j9Nnm4hUTUD3mhD~mE0xvtovgtdm3aaOXls4U~ZYSfuDkIw4GF6SFynEkKcgESxzGp6o9O63aIyXcgXSReWNzloNpsmKgxf4Wy94~d3owNw0z1eeKyLWA9JzlRwhCiK90uHAtjerQ00DMg4EWl-zaotdsEGg8UAHNlqdZqNAZmDTkpHIuSvWKHqLgFBUbhir5iyObUebjQcnQO1PJlrTUb6zAOfJ8rCl3Jgb4tuucZBkIeVqhhgefZWHLeq62Tg__&Key-Pair-Id=K2TK3EG287XSFC)
Saving a position on an empty slot and adding a label
This feature should be considered as experimental as it can create unexpected behavior.
Upon updating to 2.102.2, the priorly saved biases are deleted and users thus need to converge the IMU (and if enabled wheel odometry) by moving for around 80-100 meters while receiving RTK Fix type signals. Only then, it is possible to use the new save position feature. Please note that this process is only necessary the first time the sensor is used, i.e., when no IMU bias data is available.
The user can configure the sensor fusion engine by accessing the web interface and navigating to the "Configuration → Fusion" panel. In this section, the following configuration options are available:

Fusion engine configuration on the web interface
To access the network configuration page in the web interface, the user must press "Configuration" on the navigation bar and select "Network". As shown in the figure below, this page presents the configuration for the Wi-Fi interface, client, and access point, as well as the Ethernet connection configuration.

Networking configuration page in the web interface
To connect to a Wi-Fi network and access the Internet, the user must specify the configuration of the Wi-Fi interface, which includes the desired Wi-Fi band and whether the access point of the sensor is enabled. Currently, the sensor supports the 2.4 and 5.0 GHz bands or disabling the Wi-Fi module altogether (see the figure below). After updating the configuration of the Wi-Fi interface, it is necessary to reboot the sensor to apply them.
Currently, we only support one band at a time, meaning the access point and the hotspot should operate at the same frequency.

WiFi interface configuration options
The table below summarizes all available network configurations for the Vision Navigator:
Network configuration details
|
Network |
Sensor IP |
Netmask |
Client IP |
Configuration |
|
Wi-Fi client |
Dynamic |
Dynamic |
n/a |
Web interface |
|
Wi-Fi access point |
10.0.1.1 |
255.255.255.0 |
10.0.1.10–254 |
Enabled by default |
|
Ethernet DHCP server |
10.0.2.1 |
255.255.255.0 |
10.0.2.10–254 |
Enabled by default |
|
Ethernet DHCP client |
Dynamic |
Dynamic |
n/a |
Web interface |
|
Ethernet static |
Variable |
Variable |
n/a |
Web interface |
| USB | 10.0.3.1 | 255.255.255.0 | 10.0.3.10-254 | For recovery only |
Some details, recommendations, and known limitations to take into consideration:
If the Ethernet is configured as static-ip and it doesn't provide Internet access, make sure to leave the gateway field empty. Only then the Wi-Fi connection will be used for Internet access.
The default route defines the path network packets take if no specific route is determined. Typically, it relates to the Internet access route, for example, when connected to a Wi-Fi hotspot or plugged into the cable modem/router at home. The table below provides the default route in different configurations and states as the interface over which any network packet going outside will travel. For example, the NTRIP client connection request to an NTRIP caster on the Internet would go over the presented interface.
Note that this table shows that when both the Wi-Fi client and Ethernet (DHCP client or static IP with gateway) have Internet access, the Ethernet route is preferred (i.e., in this context, it means used exclusively). There is no such thing as an automatic retry via another route.
Network data ports: Default route
|
# |
Wi-Fi Client |
Ethernet |
Default route |
| 1
|
Not configured or not connected |
Not configured or not connected |
None |
|
2 |
Configured and connected |
Not configured or not connected |
Wi-Fi client |
|
3 |
Configured and connected |
Configured (DHCP client) and connected |
Ethernet |
|
4 |
Configured and connected |
Configured (DHCP server) and connected |
Wi-Fi client |
|
5 |
Configured and connected |
Configured (static IP w/o gateway) and connected |
Wi-Fi client |
|
6 |
Configured and connected |
Configured (static IP with gateway) and connected |
Ethernet |
| 7 | Not configured or not connected | Configured (DHCP client) and connected | Ethernet |
| 8 | Not configured or not connected | Configured (DHCP server) and connected | None |
| 9 | Not configured or not connected | Configured (static IP w/o gateway) and connected | None |
| 10 | Not configured or not connected | Configured (static IP with gateway) and connected | Ethernet |
This table is valid under the assumption that the external DHPC server (Wi-Fi hotspot or Ethernet router) does provide a default route (i.e., has Internet access). The user can choose not to do that, allowing for various network setup variations.
In this context, "Connected" means the network link is up. It does not mean "Internet" is available (i.e., it does not imply that the upstream connection is good). For example, you can be connected to a Wi-Fi hotspot on your phone even though it is disconnected from the cellular network. In this situation, and with the configuration 1, 4, or 5, it would mean that the device would no longer access the Internet.
Besides the default route, each interface (Wi-Fi client, Wi-Fi access point, Ethernet) has a specific route for that network. Therefore, connections to an address in that network always go via that interface independent of any default route.
The "Configuration → Network" page of the Web Interface shows the current default route as shown in the figure below, where we can see that the Ethernet connection is preferred over the Wi-Fi client.

Default route example
The following network data ports are available over Ethernet and Wi-Fi:
|
Port |
Protocol |
Clients |
Function |
|
21000-21004 |
Raw TCP/IP socket |
Multiple |
XVN data output (for example, $FP_messages) and input (wheelspeed, RTCM3) |
| 21010–21011 | Raw UDP/IP | Multiple | XVN data input (wheelspeed, RTCM3) |
|
23010 |
Raw TCP/IP socket |
Multiple |
Correction data stream (for example, RTCM3 messsages from the NTRIP caster) |
|
80 |
HTTP |
Multiple |
Web interface (including firmware update) |
| n/a | ICMP | n/a | ICMP traffic (ping, etc.) |
|
53 |
TCP/UDP |
Multiple |
Domain (DNS) service, for internet sharing |
| 5353 | UDP | Multiple | Multicast DNS |
|
67 |
TCP/UDP |
Multiple |
DHCP/Bootstrap Protocol Server |
| 123 | UDP | Multiple | NTP time server (Network Time Protocol) |
| 319 | UDP | Multiple | PTP Event message |
| 320 | UDP | Multiple | PTP General message |
| 21100 | HTTP | Single | Network recording |
The Vision Navigator makes outbound connections to the Internet to the following servers:
While the web interface is open in a client browser:
While the remote support functionality is enabled:
The web interface (i.e., the client browser, not the Vision Navigator itself) connects to:
When connected to a PC, the USB port on the Vision Navigator acts as a "USB Ethernet gadget." The PC sees a network interface similar to a USB-to-ethernet dongle.
The PC should automatically detect the network interface and configure it. This way, the user can access the web interface via http://10.0.3.1 to change the configuration. The configured password does not protect this access mode to the web interface as with other interfaces (Ethernet and Wi-Fi).
The user cannot configure this network access mode as it is only for recovery (e.g., misconfigured Ethernet and Wi-Fi) and should not use it for data transfer.
The USB network interface should automatically work on Linux (e.g., Ubuntu 22.04). Windows should recognize the sensor as a "USB Ethernet/RNDIS Gadget," not as a (nonfunctional) COM port.
To change the configuration of the Wi-Fi access point, press the ’Edit connection’ button on the Wi-Fi access point section. As shown in the figure below, the web interface will display a configuration panel where the user can modify the following fields:

Wi-Fi access point configuration on the web interface
To set up a static IP for connecting to the Vision Navigator over Ethernet, press the 'Edit connection' button on the static IP field of the Ethernet section. As shown in the figure below, the web interface will display a configuration panel where the user can modify the following fields:
Press the 'Apply' button to apply the selected changes. At this point, the Vision Navigator is not yet using the static IP. Once configured, the user must press the 'Connect' button.

Static IP configuration on the web interface
To visualize which time source the Vision Navigator is employing, head to the "System → Info" page of the web interface and check the ’Time synchronization’ field. An example is shown in the figure below, where the Vision Navigator is synchronixed to the time information provided by the GNSS receivers.

Time information displayed on the Input/Output Dashboard
The time information can come from one of the following sources:
On initialization, the time information provided by the XVN is based on its internal clock. If an Internet connection is provided, the sensor will attempt to communicate with an NTP server to synchronize its clock, see Outbound connections. Once the GNSS1 receiver reads signals, it will synchronize with the GNSS time, which has the highest accuracy. That way, the internal clock of the XVN will be corrected by synchronizing with the GNSS1 receiver. Note that the XVN has an internal battery to keep its internal clock running without the sensor's power source connected.
In reality, the time kept by clocks in different network devices can drift from each other. In time-sensitive applications, this drift is mitigated by using time synchronization. Having time synchronized between any two clocks means that the difference in time between them has an upper bound. This can be achieved by periodically synchronizing the time between the clocks before the time difference gets too large. There are three options to synchronize another system with the very accurate clock of the Vision Navigator: Network Time Protocol (NTP), Pulse Per Second (PPS) signal, and Precise Time Protocol (PTP).
If a time synchronization precision of a few milliseconds is sufficient, the user can employ the Vision Navigator's built-in NTP server (port 123).
If the required time synchronization precision must be in the range of a few microseconds, the user can use the Vision Navigator’s PTP capabilities. The Ethernet MAC with IEEE 1588 of the Vision Navigator integrates a standard IEEE 802.3 Ethernet MAC with a time-stamping module. The IEEE 1588 standard provides accurate clock synchronization for distributed control nodes (e.g., industrial automation applications). Since firmware 2.81.x, the sensor can be a Precision Time Protocol (PTP) Grand Master (GM). The sensor provides a very precise time (sub-microseconds), which can be used by other devices if required.
The PTP functionality can be (de)activated in the Web Interface on the "Configuration → Time" page (see figure below). The following three PTP profiles are supported and can be selected in the Profile drop down menu:

Precise Time Protocol
Tests have shown that the precision of the time synchronization with the Vision Navigator using PTP is sub-microsecond. The time accuracy is based on the time provided by the GNSS receiver and is approximately 3us on the sensor with good GNSS reception. During periods of operation when there is no or only degraded GNSS reception, the time provided by PTP will naturally start to drift to the same extent as the time from the GNSS receiver and accuracy may suffer. In other words, under these conditions, PTP will continue to provide the system time and synchronize all connected slaves relative to each other and precision stays the same. However, the time provided may deviate from the global time and accuracy suffers. Note that measurement inaccuracies cannot be precluded. For more precise results, the measurements would have to be carried out again with a more accurate measurement setup.
For examples on how to use the PTP, please refer to How to Enable Precision Time Protocol(PTP) for XVN.
Using PPS with the corresponding timing message from the GNSS receiver provides the maximum accuracy. However, setting up this method is the most complex. The XVN outputs the PPS signal from the GNSS1 receiver.

An illustration of time pulse function
Time pulse:
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTU0KS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=GcfJKKoLYqXhxX6vyLwmj1NOHNc8RT82xP3qEnqpA0LoXKn9cupF7Jzbl4l7zVnR~ml~el7U5PaxAYxQHTDZCoG6xNWntfiakKEJAhL-F~vd1MO0ZGbAIQlxtF84XFfVTwB2q3MrjTSz53hyHaBPD6yCEgajhKT8MhnRnKw0kyTtPtNs9ZK-LJH2uCXMiXtnVViboHDoYcRdM-0TRXntx~3alk27VJ26pnRER0AR~6jDvtH2zd1SdlVko4hM1c5kBvH7nO2TDflzAxHLzr3i7fagdf-Rc45pcSr46foP2QXWe8xxkMXjfLwGoazhHZ1atrpUNcJCt~dyUhm~Tvv2xw__&Key-Pair-Id=K2TK3EG287XSFC)
Input/output system overview
The Vision Navigator provides multiple input and output data stream options. This section provides an overview of the I/O system. Note the distinction between:
The network interfaces of the sensor comprise Ethernet, Wi-Fi station (client), Wi-Fi access point, and USB network. See the previous section for more details on network configuration.
|
Port |
Interface |
Connector |
Description |
|---|---|---|---|
|
UART1 |
UART1 |
I/O |
(Asynchronous) serial port for speed up to 1 Mbit/s, via a UART1 interface |
|
UART2 |
UART2 |
AUX |
(Asynchronous) serial port for speed up to 1 Mbit/s, via a UART2 interface |
|
TCP0 |
Network |
Eth, Wi-Fi, USB |
TCP/IP raw socket server on port number 21000, can handle multiple clients |
|
TCP1 |
Network |
Eth, Wi-Fi, USB |
TCP/IP raw socket server on port number 21001, can handle multiple clients |
|
TCP2 |
Network |
Eth, Wi-Fi, USB |
TCP/IP raw socket server on port number 21002, can handle multiple clients |
|
TCP3 |
Network |
Eth, Wi-Fi, USB |
TCP/IP raw socket server on port number 21003, can handle multiple clients |
| TCP4 | Network | Eth, Wi-Fi, USB | TCP/IP raw socket server on port number 21004, can handle multiple clients |
| UDP0 | Network | Eth, Wi-Fi, USB | UDP/IP raw socket server on port number 21010 for input, user-configurable output to ip address and port |
| UDP1 | Network | Eth, Wi-Fi, USB | UDP/IP raw socket server on port number 21011 for input, user-configurable output to ip address and port |
| CANSTR | CAN | I/O | CAN "streaming" port. Broadcasts output messages and listens to incoming messages. |
The UART1 and UART2 ports correspond to the pins 7 (UART1_RX), 8 (UART1_TX), 4 (GND) in the I/O connector, and pins 2 (UART2_RX), 3 (UART_TX), and 4 (GND) in the AUX connector (see Hardware connections). The user can configure the baud rate of the UART ports inside the "Configuration -> I/O" panel of the web interface. The available options are 9’600, 19’200, 38’400, 57’600, 115’200, 230’400, 460’800, or 921’600. A baud rate of 115’200 or higher is recommended.
The user can input the wheelspeed sensor and RTCM3 correction data streams into the Vision Navigator via UART. The XVN can stream the output messages (e.g., FP_A-ODOMETRY) via UART.

UART baud rate configuration
The UDP0 and UDP1 ports are accessible via ethernet (recommended), WiFi or USB (see the table above for more information). The user can use the UDP ports for inputting data such as wheelspeed or RTCM3 correction data via the designated port numbers. For outputting data on UDP0 and/or UDP1, the user needs to select the 'Output' as 'Enabled', insert the respective IPv4 address, and add a chosen port number that lies within 1024 - 65530. Save the configuration changes and enable the desired output messages.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTU2KS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=neqlKMQeUua0IdvJWrYXC3lan~Bswyaf5x8GfCO7UA3EBKgrRgLVUkc~EYj2qe-AXAfxHkb8l09RCPeUlLOdRLS4tY8Jthf5tMT4RmdoXRsTAGAV-v2udsAvODLP8lLAAXOMko7ki97hD5WBUtc326VgHOQHovfw4cmsfuXgcSLAsnH7-D2AU0IuPXyigvBp5KftNtG7g3g1-csweEe7j3BR1g0KfZE1kY2ZLomXma1Ny-blnxZR4xuNfQXwNtU~Fc9Ol5gFjLWj7mBImWO8eHzA37StCN~OIfDIXuC6PoYv7zwYNyZ6rwL~T07tso0E3YznRgmz5QxIo9pVnm~XqQ__&Key-Pair-Id=K2TK3EG287XSFC)
UDP port configuration
All input and output ports are streams of bytes (uint8_t). The CANSTR port packs the output stream of bytes into as many CAN frames as necessary. Depending on the CANSTR configuration, this can be classical CAN frames with up to 8 bytes or CAN FD frames with up to 64 bytes of payload. The figure below shows the CANSTR message format generation. The CANSTR port corresponds to the pins 1 (CANH), 2 (CANL), and 4 (GND) of the I/O connector (see Hardware connections).

CANSTR message format
The user can configure the CAN interface inside the "Configuration -> I/O" panel of the web interface, as shown in the figure below. The following configuration options are available:
The user must reboot the sensor after updating the CAN interface configuration.

CAN interface configuration
The CANSTR module configuration can be modified in the CANSTR panel inside the "Configuration -> I/O" panel of the web interface, as shown in the figure below. The following configuration options are available:
CANSTR is a specialized port built upon the standard CAN interface. It offers the flexibility to utilize the CAN protocol to stream input and output data, which the user can customize within the I/O configuration section of the web interface.
Additionally, the user can configure the CAN ID for these streams as required.
The main distinctions between CANSTR and the traditional CAN interface are:
A vital consideration when working with any CAN interface is the bitrate setting. Ensuring the correct bitrate is paramount for the seamless communication of all devices on the CAN bus.

CANSTR module configuration
The user can configure the Fusion output at the Output generators module inside the "Configuration -> I/O" panel of the web interface, as shown in the figure below. The following configuration options are available:

Output generators configuration
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTU4KS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=qQt6pNvbn4kmqc2xGillB6J6P0GJA11awwcaHyKANy4yaQzAPrudBpaMkyAioHLUU2F7s17iPbVB-kCDpbeGtjAMjDA452naLVZEhD2f-5vf3z2HN4w8pJaVE-jeBDO-QmrXgujI~~4Idguv9igC8RF8zoZ0jabthJH-Z0Cnz8fgRIumMghXB44xGAi2G1-tTwtl-DVBSGD-0SLdc8HseQyr5Y8EsBHS15uISZzTzjcluU6TDbJ2OjbwNmORTBdYKj58MmvAjIMA8g33Bx4HTJkcx55Y9IEwhYitePewIMsRO1i~sAGBvTw2eVtBQqnAupP5cE18VL7Ka45baEOj5A__&Key-Pair-Id=K2TK3EG287XSFC)
ENU Output configuration
|
Field |
Strict NMEA |
High-precision |
Notes |
|---|---|---|---|
|
Latitude, Longitude (degrees) |
ddmm.mmmmm [∼ 20 mm] |
ddmm.mmmmmmm [∼ 0.2 mm] |
Approximate, worst case (at the equator) |
|
Height, Altitude (meters) |
float(.1) [100 mm] |
float(.4) [0.1 mm] |
|
|
Time (seconds) |
ss.ss [10 ms] |
ss.ssss [0.1 ms] |
|
|
Speed (knots) |
float(.1) [∼ 100 mm/s] |
float(.5) [∼ 0.1 mm/s] |
|
|
Heading, Course (degrees) |
float(.1) [0.1 deg] |
float(.4) [0.0001 deg] |
|
|
Number of satellites |
00. . . 12 |
00. . . 99 |
|
The default reference frame of the XVN is located at the X shape on the sensor housing (see Mechanical Specifications). If the user requires the odometry output in a different reference frame, the “Output translation" meaning "Translation from the sensor to output represented by x-y-z Cartesian coordinates" and "Output rotation" meaning "Rotation from the sensor to output represented by Roll-Pitch-Yaw (RPY) in the Cartesian coordinates" fields in the Output generator module of the web interface can be used.
The XYZ displacements from the center of the XVN's reference frame to the desired point are expressed in meters. In contrast, the rotation from the sensor’s frame to the output’s body frame is expressed in degrees using Yaw-Pitch-Roll (YPR) rotations, also known as Euler Angles. For reference, the arrow on the web interface’s map page points towards the output frame’s positive X direction.
For reference, the figure below shows an example of a transformation between the XVN’s body frame and the output’s body frame using the previously described convention. In this example, the point of interest (POI) is located at an arbitrary point inside the vehicle. Therefore, the user must calculate the XYZ translations from the sensor’s frame of reference to the POI and then rotate the frame using YPR angles.

Transform from the XVN's body to the output reference frame

A segment of the possible output message configuration
The user can select which messages are assigned to each port at the Output messages module inside the "Configuration -> I/O" panel of the web interface, as shown in the figure above.
Fusion output: The output frequency of these messages is the same as the Fusion output frequency configured in the output generator. By default, the output frequency is 10 Hz, but the user can configure it to the range of 1-100 Hz. For a detailed list of all available messages, their formats, and examples, please refer to Input/Output messages.
Available Fusion messages:
IMU output: All IMU output is generated at the IMU frequency of approximately 200 Hz. Note that the IMU output requires a lot of output bandwidth. For example, on a serial port, the baud rate must be set high enough for the necessary bandwidth. The exact number depends on what messages are enabled for the port.
Available IMU messages:
TF output: The output frequency of these messages is 1 Hz. See exceptions below.
Available TF messages:
Text output: Irregular output of text messages (strings). There are four levels:
For example, the sensor outputs a "boot screen" on boot. While it does output it to any port where the FP_A-TEXT_INFO message is enabled, it is only practical to observe this output on UART and CANSTR ports. It is not possible to connect to the TCP ports in time to observe this output.
The boot screen is as follows:
Available text messages:
GNSS output: All GNSS output is generated by default at the GNSS frequency of approximately 5 Hz. In addition, some GNSS output messages cannot be distinguished between GNSS receivers; ensure you use different ports to avoid confusion.
Available GNSS messages:
Measurements input: For more information, see Input/Output Messages. Available measurement message:
Advanced view

Toggler to activate the advanced view for the output messages
In the advanced view, each available message shows its output rate. Zero (0) means the message is disabled and is not output. One (1) means the message is enabled, and its output frequency is 1 Hz. Values greater than one indicate that one of every n-th message is output (e.g., Five (5) means only one of every five messages is output).
While values other than 0 or 1 may not make sense for most messages or scenarios, there are use cases for these values. For example, we can configure the Fusion output to 50 Hz and enable the FP_A-ODOMETRY output on TCP0. Enabling this message implies a rate of 1 by default; thus, its output is also at 50 Hz. This high output rate would not be possible on a low-bandwidth port, such as UART. However, the user can select a rate of 10, meaning the sensor would output only every tenth message (i.e., 5 Hz), for which the bandwidth is sufficient.
Note that there is no guarantee for output rates greater than one to be aligned to the top of the second. For example, for a message generated at 10 Hz, with a rate of 5, the sensor cannot guarantee the time stamps to end in x.0 and x.5, as a slight delay could change the timings to x.1 and x.6 or x.4 and x.9.
In the figure below, the output rate is 10 for the FP_A-ODOMETRY message on the UART1 port. If the desired output frequency is 100 Hz, the actual output frequency is equal to or smaller than 10 Hz.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTYwKS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=cepjRD~Mz34tkzPTecG55DktA0VjOTprNO7GptF2GRs7FsNhK3J5RkG6whmRCSK1eXCd4QMRYnLlUYSS4qdYAM0R5gCCifiX3ltgWT-ihfm4XKoa~o6V11iuaOKJTJYPKFjpJA-8R70MogPcHB5isbHEVemht3invjF6hhrZfUrBFiA9h-4DMEJOwdklWexASMFpYW3j4rMTsbkv2PQ6xrKeALER9S21zMHuDBor~EiweoCdX~B3jyEjF5mWxYfreCgNE9bztWrgytt-oKtOTo0-FRW4DO3SZgPgyBWhzwu82Z1U9mTB-L4fqhLDNOWQ-QN-GYY~iJnN6HUNIBia-Q__&Key-Pair-Id=K2TK3EG287XSFC)
An example of setting up the output rate
The Vision Navigator offers multiple methods for streaming wheelspeed data. This section provides a detailed overview of the available options.
Ensuring adequate configurations for seamless data integration and optimal system performance is imperative. The user can input wheelspeed measurements over any port (see Input/output system overview) based on the wheelspeed measurement configuration employed (see Measurement sensor configuration). The corresponding messages must be input at regular intervals, and the input rate must be at most 50 Hz. The latency (from measuring the wheelspeed to inputting it on the selected port) must be as low as possible. Increased, and in particular, irregular latency degrades the Vision Navigator's performance.
The Vision Navigator requires RTCM3 data to provide real-time corrections for accurate localization. The user can configure the correction service in the "Configuration -> GNSS" panel of the web interface. The correction service configuration must fulfill the following specifications:
The user must select the desired method to input the correction service data in the "Source" parameter (see figure below for reference). The following methods are available:
For the NTRIP and TCP methods, one can choose if and how to send the sensor’s location to the caster:
The "Enter path" button can be used to easily configure a client using a string in one of the following forms:
The "Restart client" button force-restarts the built-in NTRIP client. Note that the client automatically keeps trying to connect to the configured caster until it succeeds. If the sensor receives no data for 10 seconds, it automatically tries to reconnect.

RTK configuration page in the web interface
In addition, you can visualize the NTRIP caster source table by pressing the "Sourcetable button". Here you can find more information regarding the NTRIP caster (e.g., host, port, ID, location), available networks (e.g., ID, operator, web data), and corresponding streams (e.g., mountpoint, format, RTCM3 message types, GNSS constellations).

NTRIP caster sourcetable
Many casters do not provide a complete or accurate source table, and some do not provide one at all.
Besides meeting the general requirements for correction service data, the Vision Navigator requires that the latency (age) of the data should be kept as low as possible (ideally better than 1 second) and at least the following RTCM3 messages for proper operation:
|
Type |
Message |
|
Reference station position
|
One of the following:
|
|
GPS observables
|
One of the following:
|
|
Galileo observables
|
One of the following:
|
|
BeiDou observables
|
One of the following:
|
|
GLONASS observables
|
One of the following:
|
|
GLONASS code-phase biases
|
|
RTKLIB’s str2str application has the capacity to divide an incoming data stream into several streams, each with different formats. Users interested in leveraging this functionality on a host system to connect to the NTRIP service, retrieve RTCM3 data, and subsequently relay this correction information to the Vision Navigator via I/O (UART/TCP/UDP), can follow the steps below. These guidelines will cover RTKLIB installation, establishing a connection with the NTRIP service, and streaming data to a designated IP address and port.
This process will generate an executable named str2str in the RTKLIB build directory.
Within the Vision Navigator web interface, users can navigate to "Configuration → GNSS", then select the "I/O port" option. This will enable users to stream RTCM3 data to any accessible TCP/UART/UDP port on the Vision Navigator device.
Some NTRIP services (including certain VRS services) require receivers to reciprocate with NMEA-GN-GGA_GNSS data. This enables the service provider to assign the user a nearby real or virtual base station. Given these circumstances, users also need to configure Vision Navigator to output the NMEA-GN-GGA_GNSS data. For instance, a TCP port (like TCP4) can be set to exclusively output NMEA-GN-GGA_GNSS data at a rate of 10 or less, as depicted in the figure below.

The setup of the output of NMEA-GP-GGA_GNSS in the I/O section
To establish a connection with the NTRIP service and stream data to a preferred IP address and port, the following command can be implemented:
In this command:
This command initiates data streaming. To halt the stream, press Ctrl+C in the terminal running str2str. Depending on your requirements, these steps may need adjustments. For instance, if you desire the stream to initiate automatically at system startup, consider creating a systemd service.
The user can visualize the camera stream in the "Configuration -> Camera" panel of the web interface. A distorted and downsampled (both in resolution and frame rate) stream of the camera is presented here. As mentioned in Installation guidelines, no static parts or featureless scenes must be present in the image view, as these would affect the sensor’s performance. The user can use the cropping tools on the page to eliminate these featureless areas.

Camera configuration page in the web interface
The auto-exposure calibration of the camera is affected by the cropped area. Thus, cropping this section will help with exposure if there is a bright object at all times in the camera view. The figure below presents an example of how to crop these undesired features from the camera view.

An example of the image view's cutout
The camera image streaming implementation on the Vision Navigator employs the Realtime Transport Protocol (RTP), which is a well-established network protocol for delivering video over IP networks. It runs over the User Datagram Protocol (UDP). RTP is designed for end-to-end, real-time transfer of streaming media. The protocol provides facilities for jitter compensation and detection of packet loss and out-of-order delivery, which are common, especially during UDP transmissions on an IP network. RTP allows data transfer to multiple destinations through IP multicast.
The camera stream is not enabled by default. To enable it, head to the "Configuration → Camera" page and change the "Enable stream" status. Two different encodings can be selected in the Encoding setting: H264 or H265. Depending on the streaming method used, different UDP destinations can be chosen: Multicast or Unicast.

Camera stream configuration
Some notes and warnings:
For examples on how to enable and read the camera stream, please refer to the Base article Camera Image Streaming with Xsens Vision Navigator.
The user can configure the measurement sensor input by accessing the "Configuration → Measurement" panel of the web interface. The measurement sensor, e.g., wheelspeed encoder, data can be coming from any of the UART, TCP, UDP, or CAN ports. However, before setting up the measurement sensor, the corresponding ports should be configured according to Input/output system overview.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTYyKS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=CSfY9PtMTmtQUfFYrRSDyJdDqv4XEyG8Qyjg3lW8T5ds-9xNDbNbEEFfX~jWX6Ntur6RYX02qh0XbTyfW3WacPdINQzPgum6x2A68H4mlDFPXEw5Kjd-lQ8rd~j0gQtW~2Cwx2y0HHD17Q9W~jnwbWKffm8uOe5w~fPcjLU04gilfoPaFpaVf8Axfn6-FFUmbjMKRCXoIWZJc4bHdUlgUPAORgDCSfm8TJwBrr2UePRZzSrjyFiJN9Buo1C7ICsDhUFO-uayPhR8QesNVc6yuvjqY~kkiKPz~KWv72RBg52yoEOkXSw8~yDUpVNFst5sUpUOg4MkUVWolEzv2PBCGA__&Key-Pair-Id=K2TK3EG287XSFC)
Measurement sensor configuration on the web interface
The measurement configuration supports up to five external sensors (up to ten by enabling the advanced features). Each sensor requires a specific definition to be an input to the sensor fusion engine.
The user can use one of our presets to configure the sensor (see the figure below). The order of the wheelspeed sensor definition does not matter. The low-level sensor configuration required by any of the ports involves the following fields:
Once you have selected a measurement source, you will be able to configure the sensor in more detail (see the figure below). When using one of the predefined wheelspeed sensors, some configurations are blocked. 1
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTY0KS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=EjopXNeFblpzBP3I3g81vORtyb8dGKST2Xd-KAHyL5ovWHFZu0N27xPGoOwEnKBbOTT~dCAmXHX6HP7rP03RFU7-9aGQKEh~4lvv6B7ZFyimHM3qaNeVP5C8m-N2JixeRjqKPDWWzdPFBzeqCdar~Pd8HwqrYrDBYW-UTgFRqQUSfJ2RUCaN3EJiwURI7Zi9mJrMaRsCu9TX1zEgENq3l9BaoIA-L3K9XkzFYi6Uu-pM32zH8K6GX8-O8qfMwohy97dqbLeLmUl8A05-UOs6UdPZWk-fmsi~Fx3BAqFH-cT1Hkj6gPTTARKegL596Ag3~8fD2Wh7kBppZwf-oNFQIg__&Key-Pair-Id=K2TK3EG287XSFC)
Preset list of the CAN and I/O wheelspeed configurations
Once the wheelspeed configuration is saved, the status of the data input is displayed on the System → Info page.
The CAN message must be formatted as described in Appendix B for a generic speed input. The user should send the corresponding CAN frames at regular intervals, where the input rate must be at most 50 Hz. The message latency, measured from computing the wheelspeed to broadcasting it over the CAN bus, must be as low as possible. Increased and, in particular, irregular latency degrades the Vision Navigator's performance. The low-level sensor parameters are automatically filled in when one of the preset settings is selected. For example, the figure below presents the configuration when the "Fixposition CAN message (vehicle speed, CAN)" preset is selected.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTY1KS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=HnlkBj3gsHsG2bvq7I2Y0BtJXBIXUaULdnkAQ6Lwy5nOexelYvxRbPPN~EAMA7XIyvtB1WMs1gckOgroUcvRuwkUpDQyimZjm2-3d5mgaPc7PPkafvg~FnVA2crLKN2qshyo0gZNpDL5AgbUIBC3TkworVONEBw72apF-eG8kRXKpsIrzumkqdw-4NPBHUMQWUolyztAxw4ZFVzBut8B52hvpU1gkvcND8AfXiKpXs-5akjDIVulQckrZ-PsxgvV~7~7-pvsoc4s1GeOgOJ2x9LYvke-Ng~b7dnlDyp2YvxcXf4oNt2tsFj5HWdQ9mHj2bChGH-cIj50aQ1UHWBtBw__&Key-Pair-Id=K2TK3EG287XSFC)
Example of CAN message (vehicle speed) preset configuration
Based on the CAN frame structure, when the Rear Centre (RC) wheelspeed sensor is selected, the corresponding vehicle wheelspeed value will be written in the Front Right (FR) data field. Thus, the CAN message will be structured as follows:
Else, if two or more wheelspeed sensors are selected, the message structure will be:
The CAN message can support wheelspeed measurements from one or four wheels. However, if two or more wheels are used, the user can combine their vectors and input them as a single rear center wheelspeed measurement. All available presets have been listed in the configuration panel of the wheelspeed module in the web interface (see the figure above). For customizing the CAN message interface of the Vision Navigator, please contact us at [email protected].
For proper operation using the CAN message, the user must verify the following four components:
For streaming the wheelspeed values via the UART, TCP, or UDP ports, the user must employ the FP_B-MEASUREMENTS message detailed in Output messages. The binary message must be input on a UART/TCP port at a regular interval with a maximum input rate of 50 Hz. The message latency, measured from computing the wheelspeed to broadcasting it over the I/O port, must be as low as possible. The low-level sensor parameters are automatically filled in when one of the preset settings is selected. For example, the figure below presents the configuration when the "Fixposition I/O message (vehicle speed, I/O port)" preset is selected.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy8yNzc1NC8zNTEzNS9ja2ZpbmRlci9pbWFnZXMvcXUvaW1hZ2UoNTY3KS5wbmciLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3NjUzNjkwNjd9fX1dfQ__&Signature=BD1VOh~u11-Ickv4gJr4b5T-7Wc0NOEpX0WBp30WAKS0aWfCKbcK0h3dfNhOQgoqVOuk-DR7o2wLbugEpvAb5yvcZJqzZzDYhYG37QATzNLf9wMpFXhq48mfrlw6oNDFQTVRwBuHzcZ6RdLn1XOJMIjgpzJ2q1sHKmpOpCUMcQJaOpf~3gMuoobVytbN9HHWiMhDO2mCAmEhElZbsipfcgmsq2HLt8MiJ3NkdXIvNr82YiKLlKskdtBjjR6AA8umSDzfPotozL5j8Lqxr~RdVDgZLu62xB3n7P2UZEp5pOoWzQ6ayor0c2LmZaMGjhM6KIMTy0DFAs~qHl2l0WKoiA__&Key-Pair-Id=K2TK3EG287XSFC)
Example of I/O message preset configuration
If your system employs ROS1 or ROS2, you can use this ROS Driver to stream the wheelspeed measurements.