我在联想 ThinkPad Yoga 370 上安装了 Ubuntu 22.04。它包含 Sierra EM7455 的 LTE 和 GPS 卡。我重新配置了 EM7455 卡以提供串行 GPS/NMEA 输出。如果我使用 Windows 10,它可以正常工作。com-Port 输出 GPS 数据。
不幸的是,Ubuntu 22.04 中并非如此。
(/dev/ttyUSB0、/dev/ttyUSB1 和 /dev/ttyUSB2 均不存在(调制解调器配置输入/输出可以正常工作)
我恳请您帮助我如何在 /dev/ttyUSB1 上获取 GPS/NMEA 数据输出
连接到调制解调器并在 /dev/ttyUSB2 上来回发送 at 命令工作正常。(我使用命令 $ sudo minicom -D /dev/ttyUSB2 进行通信。
以下是有关我的设置的一些信息。
sudo apt remove gpsd
sudo apt remove gpsd-clients
sudo apt remove modem-manager-gui
systemctl stop ModemManager
(目的是排除所有来自其他进程的干扰,以便在 /dev/ttyUSB1 上显示本机 GPS 数据)
lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 138a:0097 Validity Sensors, Inc.
Bus 001 Device 005: ID 13d3:5682 IMC Networks SunplusIT Integrated Camera
Bus 001 Device 004: ID 8087:0a2b Intel Corp. Bluetooth wireless interface
Bus 001 Device 003: ID 058f:9540 Alcor Micro Corp. AU9540 Smartcard Reader
Bus 001 Device 002: ID 1199:9079 Sierra Wireless, Inc. EM7455
Bus 001 Device 007: ID 056a:509c Wacom Co., Ltd Pen and multitouch sensor
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ sudo dmesg | grep ttyUSB
[ 8.850698] usb 1-2: Qualcomm USB modem converter now attached to ttyUSB0
[ 8.851173] usb 1-2: Qualcomm USB modem converter now attached to ttyUSB1
[ 8.942523] usb 1-2: Qualcomm USB modem converter now attached to ttyUSB2
[ 1383.674395] audit: type=1400 audit(1659010167.409:228): apparmor="DENIED" operation="open" profile="snap.chromium.chromium" name="/run/udev/data/+usb-serial:ttyUSB1" pid=5750 comm="ThreadPoolForeg" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
[ 1383.674803] audit: type=1400 audit(1659010167.409:229): apparmor="DENIED" operation="open" profile="snap.chromium.chromium" name="/run/udev/data/+usb-serial:ttyUSB2" pid=5750 comm="ThreadPoolForeg" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
[ 1383.675219] audit: type=1400 audit(1659010167.409:230): apparmor="DENIED" operation="open" profile="snap.chromium.chromium" name="/run/udev/data/+usb-serial:ttyUSB0" pid=5750 comm="ThreadPoolForeg" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
lsusb -t
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M
|__ Port 2: Dev 2, If 2, Class=Vendor Specific Class, Driver=qcserial, 480M
|__ Port 2: Dev 2, If 10, Class=Vendor Specific Class, Driver=qmi_wwan, 480M
|__ Port 2: Dev 2, If 0, Class=Vendor Specific Class, Driver=qcserial, 480M
|__ Port 2: Dev 2, If 3, Class=Vendor Specific Class, Driver=qcserial, 480M
|__ Port 2: Dev 2, If 8, Class=Vendor Specific Class, Driver=qmi_wwan, 480M
|__ Port 5: Dev 3, If 0, Class=Chip/SmartCard, Driver=, 12M
|__ Port 7: Dev 4, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 7: Dev 4, If 1, Class=Wireless, Driver=btusb, 12M
|__ Port 8: Dev 5, If 1, Class=Video, Driver=uvcvideo, 480M
|__ Port 8: Dev 5, If 0, Class=Video, Driver=uvcvideo, 480M
|__ Port 9: Dev 6, If 0, Class=Vendor Specific Class, Driver=, 12M
|__ Port 10: Dev 7, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 10: Dev 7, If 1, Class=Human Interface Device, Driver=usbhid, 12M
有关调制解调器的信息:
它设置为提供 GPS/NMEA 数据的串行输出。它自动启动并传输 ASCII-GPS-Data(在 Windows 10 中可接收,但在使用 Ubuntu 22.04 启动时不可接收)
我的问题是,这个 GPS 数据在 /dev/ttyUSB1 上不可用(或者在 /dev/ttyUSB0 上不可用)
下面是调制解调器响应,显示了我如何配置它(/dev/ttyUSB2):
ati3
Manufacturer: Sierra Wireless, Incorporated
Model: EM7455
Revision: SWI9X30C_02.38.00.00 rE3F3E55C03AE94 jenkins 2022/01/13 05:16:00
MEID: 01458200734481
IMEI: 014582007344816
IMEI SV: 22
FSN: LF725373650210
+GCAP: +CGSM
at!usbcomp?
Config Index: 1
Config Type: 1 (Generic)
Interface bitmask: 0000050D (diag,nmea,modem,rmnet0,rmnet1)
at!gpsautostart?
function: 1
fixtype: 1
maxtime: 180 seconds
maxdist: 100 meters
fixrate: 1 seconds
非常感谢您的帮助。
此致
哈特穆特