更新日期:2023-08-04
注意: MT Manager不可以在ARM架构的主机运行(例如nVidia的Jetson Nano等设备), 对于Jetson Nano等设备,请使用Xsens ROS MTi Driver或者MT SDK example下面的public xda c++/python示例代码。
注:在看此文之前,可以先看MT Manager Linux安装文件夹下面的文档MTM.README:
/home/{your pc user name}/Documents/mtmanager_linux-x64_2021.4/mtmanager/linux-x64/doc/ MTM.README
在本文最后的附件中,也有翻译
Prerequisites:
先决条件:
The following packages/libraries need to be installed:
需要安装以下包/库:
- QT5
- libqt5opengl5
- libusb-1.0-0
- libxcb-xinerama0 (on Ubuntu)
- libxcb-xinput0 (on Ubuntu)
-libdouble-conversion1 (on Ubuntu)
第一步,使用FireFox浏览器到https://content.xsens.com/mt-software-suite-download
下载软件: Download MT software for Linux x64
第二步,解压mtmanager_linux-64_2021.4到你指定的文件夹:
cd 至mtmanager目录下:
cd /home/bryanhe/Documents/mtmanager_linux-x64_2022.0/mtmanager/linux-x64/bin
然后运行:
./mtmanager
报错:
./mtmanager: error while loading shared libraries:libdouble-conversion.so.1: cannot open shared object file: No such file ordirectory
参考MTM.README安装依赖:
安装QT5:
运行:
sudo apt update
运行:
sudo apt install qt5-default
输入Y
安装完毕:
安装 libqt5opengl5
运行:
sudo apt-get update -y
运行:
sudo apt-get install -y libqt5opengl5
安装libusb-1.0-0
运行:
sudo apt-get install -y libusb-1.0-0
安装libxcb-xinerama0
运行:
sudo apt-get install-y libxcb-xinerama0
安装 libxcb-xinput0
运行:
sudo apt-get install -y libxcb-xinput0
sudo apt-get install -y libdouble-conversion1
重启虚拟机
再次cd 至mtmanager目录下
运行
sudo ./mtmanager
Xsens MT Manager 2021成功打开
以下流程为依赖安装检查的Trouble Shoot流程:
参考Xsens技术支持网页关于Ubuntu相关依赖:
https://xsenstechnologies.force.com/knowledgebase/s/feed/0D52o0000BIOvuOCQT?language=en_US
里面提到:
1. In case ofmissing dependency "libdouble-conversion.so.1"
如果缺少依赖项“libdouble-conversion.so.1”
[if !supportLists]1. [endif]wget
http://ftp.br.debian.org/debian/pool/main/d/double-conversion/libdouble-conversion1_3.1.0-3_amd64.deb
[if !supportLists]2. [endif]sudo
chmod +x libdouble-conversion1_3.1.0-3_amd64.deb
[if !supportLists]3. [endif]sudo
dpkg -i libdouble-conversion1_3.1.0-3_amd64.deb
运行
wget http://ftp.br.debian.org/debian/pool/main/d/double-conversion/libdouble-conversion1_3.1.0-3_amd64.deb
结果:
运行:
sudochmod +x libdouble-conversion1_3.1.0-3_amd64.deb
再运行:
sudo dpkg-i libdouble-conversion1_3.1.0-3_amd64.deb
运行结果:
接下来,根据base.xsens.com的建议,做下一步:
Then add to end
of file: deb http://security.ubuntu.com/ubuntu bionic-security main
[if !supportLists]1. [endif]sudo
apt-getupdate
[if !supportLists]2. [endif]sudo
apt-getinstall libicu60
运行:
sudo apt-get update
运行结果:
运行:
sudo apt-get install libicu60
运行结果:
接下来,安装其他依赖:
Installing
other required dependencies for Ubuntu:
[if !supportLists]1. [endif]sudo
apt-getinstall libxcb-xinerama0
[if !supportLists]2. [endif]sudo
apt-getinstall libxcb-xinput0
运行:
sudo apt-get install libxcb-xinerama0
sudo apt-get install libxcb-xinput0
附录:
==============[MTManager for Linux ]======================
Xsens文档 :https://mtidocs.xsens.com/home
Prerequisites:
先决条件:
Thefollowing packages/libraries need to be installed:
需要安装以下包/库:
-QT5
- libqt5opengl5
- libusb-1.0-0
- libxcb-xinerama0(on Ubuntu)
- libxcb-xinput0(on Ubuntu)
-libdouble-conversion1 (on Ubuntu)
----------------------------------[
Troubleshooting故障排除]------------------------------------------------------------
问题1:
- The MTi-1 (MotionTracker Development Board) is not recognized.
无法识别 MTi-1系列(惯性传感器开发板)。
Support for theDevelopment Board is present in recent kernels. (Since June 12, 2015).
最近的内核中提供了对开发板的支持。 (自 2015 年 6 月 12 日起)。
If your kernel doesnot support the Board, you can add this manually
如果你的内核不支持开发板,你可以手动添加
$ sudo /sbin/modprobe ftdi_sio
$ echo 2639 0300 | sudo tee/sys/bus/usb-serial/drivers/ftdi_sio/new_id
问题2:
- Trackers connectingthrough a CA-CONV-USB dongle (e.g. MTI-600-series) are not recognised.
- 无法识别通过 CA-CONV-USB 加密狗(例如 MTI-600 系列)连接的传感器。
Support for the MtiUSB dongle is present in recent kernels. (Since Aug 24, 2020).
最近的内核中提供了对 Mti USB 的支持。 (自2020 年 8 月 24 日起)。
If your kernel doesnot support the dongle, you can add this manually
如果您的内核不支持MTI USB,您可以手动添加
$ sudo /sbin/modprobe ftdi_sio
$ echo 2639 0301 | sudo tee /sys/bus/usb-serial/drivers/ftdi_sio/new_id
问题3:
- The device isrecognized, but I cannot ever access the device –
- 该设备已被识别,但我无法访问该设备:
Make sure you are inthe correct group (often dialout or uucp) in order to access the device. Youcan test this with
确保您在正确的组中(通常是dialout或 uucp)以便访问设备。 你可以用
$ ls -l /dev/ttyUSB0
crw-rw---- 1 root dialout188, 0 May 6 16:21 /dev/ttyUSB0
$ groups
dialout audio video usbusers plugdev
If you aren't in thecorrect group, you can fix this in two ways:
如果您不在正确的组中,可以通过两种方式解决此问题。
[if !supportLists]1. [endif]Addyourself to the correct group
将自己添加到正确的组
You can add yourself to it byusing yourdistributions user management tool, or call
您可以使用您的发行版用户管理工具将自己添加到其中,或运行:
$ sudo usermod -G dialout -a $USER
例如: $ sudo usermod -Gdialout -a bryanhe
Be sure to replace dialout with the actual group name if it is different.After adding yourself to the group, either relogin to your user, or call
如果实际组名不同,请务必将 dialout 替换为实际组名。 将自己添加到组后,重新登录到您的用户,或运行:
$ newgrp dialout
例如下图,输入之后,再运行groups检查一下,第一个是否变成了dialout
to add the currentterminal session to the group.
将当前终端会话添加到组中。
[if !supportLists]2. [endif]Use udev rules
使用 udev 规则
Alternatively, put the followingrule into /etc/udev/rules.d/99-custom.rules
或者,将以下规则放入/etc/udev/rules.d/99-custom.rules
sudo edit /etc/udev/rules.d/99-custom.rules
SUBSYSTEM=="tty",ATTRS{idVendor}=="2639", ACTION=="add", GROUP="plugdev",MODE="0660"
Change $GROUP into your desiredgroup (e.g. adm, plugdev, or usb).
将 $GROUP 更改为您想要的组(例如 adm、plugdev 或 usb)。
问题4:
- The device is inaccessible fora while after plugging it in –
插入设备后一段时间无法访问
When having problemswith the device being busy the first 20 seconds after plugin, purge themodemmanager application.
如果在插入后的前 20 秒内遇到设备繁忙的问题,请清除 modemmanager 应用程序。
问题5:
- Error while loading shared libraries:libicui18n.so.XX: cannot open shared object file: No such file or directory
加载共享库时出错:libicui18n.so.XX:无法打开共享对象文件:没有这样的文件或目录
Missinga dependency:
原因是缺少依赖库
Downloadand install libicuXX package:
下载并安装 libicuXX库
[if !supportLists]1. [endif]Addanother trusted package server to your /etc/apt/sources.list:
将另一个受信任的软件包服务器添加到您的 /etc/apt/sources.list:
$ sudo gedit /etc/apt/sources.list
For version 52, add the followingline at the bottom:
对于版本 52,在底部添加以下行:
deb http://security.ubuntu.com/ubuntutrusty-security main
For version 60, add the followingline at the bottom:
对于版本 60,在底部添加以下行:
deb http://security.ubuntu.com/ubuntubionic-security main
$sudo apt-get update
$sudo apt-get install libicuXX
问题6:
- Error while loading sharedlibraries: libpng12.so.0: cannot open shared object file: No such file ordirectory
加载共享库时出错:libpng12.so.0:无法打开共享对象文件:没有这样的文件或目录
Missing a dependency:
原因是缺少依赖库
This package is available in Ubuntu 16.04 but no longer in Ubuntu 18.04and requires manual installation.
该软件包在 Ubuntu 16.04 中可用,但在 Ubuntu 18.04 中不再可用,需要手动安装。
Download and install libpng12package:
下载并安装 libpng12 包:
$ wget -q -O /tmp/libpng12.debhttp://mirrors.kernel.org/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1_amd64.deb
$ sudo dpkg -i /tmp/libpng12.deb
$ rm /tmp/libpng12.deb
问题7:
- Error while loading sharedlibraries: libdouble-conversion.so.1: cannot open shared object file: No suchfile or directory
加载共享库时出错:libdouble-conversion.so.1:无法打开共享对象文件:没有这样的文件或目录
Missing a dependency:
原因是缺少依赖库
This package is available inUbuntu 18.04 but no longer in Ubuntu 20.04 and requires manual installation.
该软件包在 Ubuntu 16.04 中可用,但在 Ubuntu 18.04 中不再可用,需要手动安装。
Download and installlibdouble-conversion1 package:
下载并安装libdouble-conversion1 库:
$ wget -q -O /tmp/libdouble-conversion1.debhttp://ftp.br.debian.org/debian/pool/main/d/double-conversion/libdouble-conversion1_3.1.0-3_amd64.deb
$ sudo dpkg -i /tmp/libdouble-conversion1.deb
$ rm /tmp/libdouble-conversion1.deb
问题8:
- Failed to load platform plugin"xcb". Available platforms are: xcb
无法加载平台插件“xcb”。 可用平台有:xcb
Missing a dependency. Can be morethen one but on Ubuntu 16.04:
原因是缺少依赖项。 可以不止一个,但在 Ubuntu 16.04 上:
If prerequisites havebeen installed, use ldd platforms/libqxcb.so to check for missing dependencies
如果已安装先决条件,请使用 lddplatforms/libqxcb.so 检查缺少的依赖项
This error can beoutput either on commandline or in the file~/.local/share/Xsens/mtmanager/mtmanager.log
此错误可以在命令行或文件 ~/.local/share/Xsens/mtmanager/mtmanager.log 中输出
其他关于无法连接的问题:
https://base.xsens.com/knowledgebase/s/article/My-MTi-6XX-is-not-detected-Installing-the-MTi-USB-dongle-driver-for-Linux-1605869708834?language=en_US
My MTi-6XX is not detected / Installingthe MTi USB dongle driver for Linux
Article Body
TheMTi USB dongle allows users to connect the robust MTi 600-series (such as theMTi-680G) to a USB port. Support for this accessory is not yet present in olderLinux versions of the MT Software Suite. The drivers can be installedseparately using:
MTi
USB dongle允许用户将MTi 600 系列(例如MTi-680G)连接到USB 端口。MT 软件套件的旧Linux 版本尚不支持此附件。 可以使用以下方法单独安装驱动程序:
$sudo /sbin/modprobe ftdi_sio
$echo 2639 0301 | sudo tee /sys/bus/usb-serial/drivers/ftdi_sio/new_id
After installing the drivers, the USB dongle should automatically be mounted tottyUSB. This can be verified using the dmesg command. If this is not the caseany more after rebooting your system, consider adding a udev rule:
安装驱动程序后,USB
dongle 应该会自动挂载到ttyUSB。 这可以使用dmesg 命令进行验证。 如果在重新启动系统后不再出现这种情况,请考虑添加udev 规则:
Create a file called “95-xsens-ftdi.rules” in the folder /etc/udev/rules.d withthe following contents:
在文件夹 /etc/udev/rules.d 中创建一个名为“95-xsens-ftdi.rules”的文件,内容如下:
sudo gedit /etc/udev/rules.d/95-xsens-ftdi.rules
ACTION=="add"\
,ATTRS{idVendor}=="2639" \
,ATTRS{idProduct}=="0301" \
,RUN{builtin}+="kmod load ftdi_sio" \
,RUN+="/bin/sh -c 'echo 2639 0301 >/sys/bus/usb-serial/drivers/ftdi_sio/new_id'"
And then reload udev or restart your computer.
然后重新加载udev 或重新启动计算机。