Dear Customers,

The PolySync Support Center is now just for submitting tickets to our support team. All articles and tutorials have been moved to the new PolySync Help Center and the content below will be removed shortly.

Thank you,
The PolySync Team

Xsens MTi-G-700 Series


Interface name
  • xsens-mt
Interface file
Supported Since
  • V2.0.0-b.1
OEM Hardware/Software/Firmware Version  
Sensor Communication Protocol  
PolySync Sensor Type
  • 60
Driver Notes
  • Xsens supplies a unique software key with each device - this must be stored in the Software Key field in the SDF Configurator (See Debugging at the bottom of this page)
  • See polysync_control.h for valid field usage
  • Requires UDEV entry in /etc/udev/rules.d/
  • Default baud rate is 115200, for the device and for the PolySync driver
  • -t perform a validation test on the XSens MT interface [optional]
  • -g get all available XSens MT device identifiers on the host [optional]

(OEM) Sensor Description

PolySync Configuration

  1. Locate the sensor's serial number
  2. Copy serial number into SDF configuration
  3. Run PolySync

It is required to have a Device Manager (udev) entry in the /etc/udev/rules.d/ directory for this node to run – see Debugging Tips below

Interface Requirements

  • List if it's CAN/Eth/Serial, etc.
  • Default IP Address or similar
  • If there are network restrictions (buffer sizes, MTU size, etc) list them here

Input Message Types

Input Msg Type
Native USB Uses libxsens utilities that ship with PolySync release packages

Output Message Types

Output Msg Type
 ps_platform_motion_msg  GPS/IMU data available

Command Line Arguments

  1. -h show this help message [optional]
  2. -o enable output of log messages to stdout (in addition to syslog) [optional]
  3. -w disable the hardware interface(s), allowing the node to run without hardware connected [optional]
  4. -r SDF runtime configuration key that specifies the domain to operated under, the default domain is used otherwise [optional]
  5. -n SDF node configuration key for the node [required]
  6. -i use provided PAL interface file instead of what is stored in the SDF [optional]
  7. -e export a JSON support string describing the interface, used by the SDF configuration tool [optional]
  8. -t perform a validation test on the XSens MT interface [optional]
  9. -g get all available XSens MT device identifiers on the host [optional]


Event ID
Event Description
Implemented (y/n)
Active When


Parameter ID
800 Active Coordinate Frame Identifier Meters
80 Third Party Software Key 0 Meters
81 Third Party Software Key Description 0 Meters
1001 Sensor 0 Identifier Degrees
1002 Sensor 0 X Position Degrees
1003 Sensor 0 Y Position Degrees
1004 Sensor 0 Z Position

Reflects SDF sensor configuration

1005 Sensor 0 Roll Orientation PolySync sensor type
1006 Sensor 0 Pitch Orientation Default: 0.25 seconds
1007 Sensor 0 Yaw Orientation Default: true

Debugging Tips

To parse the sensor identifier from the Xsens the PolySync Manager needs to be running to manage the wall clock.

`$ polysync-manager`

If you see the following error it's best to verify the UDEV file is installed to the system that is required by the Xsens device on Linux systems

ERROR : XSENS_MT : XSENS_MT_pre_validate -- no devices found

The UDEV file ships with PolySync and is located in $PSYNC_HOME/deps/92-xsens.rules. The file needs to be copied to the system /etc/udev/rules.d/.

$ sudo cp $PSYNC_HOME/deps/92-xsens.rules /etc/udev/rules.d/ 

It's also very important that the current user is part of the dialout group, which allows access to the USB device.

$ whoami
$ sudo adduser dev dialout 

The last requirement to connect to the Xsens is that the PolySync SDF contains the Sensor 0 Identifier that uniquely describes the connected device. See this article for more information on parsing the sensor identifier using the PolySync Dynamic Driver.

XSens MTi-G-710

Some Linux users reported that the MTi-G-710 model required additional steps to access the device through PolySync. Please follow the steps below to get the sensor running.

$ whoami
$ sudo adduser dev dialout
$ sudo reboot  # need to restart to have new permissions take effect
# after reboot... $ polysync-manager # start in wall-clock mode (no arguments)

 Now you can run the PolySync Dynamic Driver and parse the sensor identifier, and run the driver to publish data to the bus.

$ polysync-dynamic-driver -n 11 -g
$ polysync-dynamic-driver -n 11


You can also build and install the MT SDK libraries. Note that this is not required, but will confirm that you can properly talk to the Xsens device.

$ cd /usr/local/polysync/deps/
$ mkdir xsens-tmp
$ cd xsens-tmp
$ cp ../ .
$ unzip

$ tar xf mtsdk_linux_69.tar.gz
$ cd mtsdk/shared_object
$ make
$ sudo make system_install

Now you can run the Xsens MT SDK example applications to connect to the sensor.

Have more questions? Submit a request


Please sign in to leave a comment.