Glonass BN-808 GPS-приемник Glonass BN-808 USB-приемник в Ubuntu 18.04
Я установил OpenCPN в 18.04 и купил GPS-приемник Glonass BN-808 USB. Это, очевидно, UBLOX M8030, хотя я не уверен, что это на самом деле означает, но предполагается, что он поддерживается в Linux. Однако, хотя lsusb может видеть приемник на устройстве 003 шины 001 (что не похоже на формат tty или /dev, запрошенный OpenCPN), Ubuntu не может прочитать какие-либо данные из указанного приемника. Я следовал инструкциям в руководстве по OpenCPN, но безуспешно. У кого-нибудь есть предложения? Спасибо Дэйв
РЕДАКТИРОВАТЬ 1: Вывод для tail -f /var/log/syslog
Я запустил tail -f /var/log/syslog и получил намного больший вывод, чем вы, но ни один из них не имел для меня никакого смысла.
Приемник ublox был обнаружен, но оттуда вывод читался:
May 23 15:34:19 dave-Aspire-ES1-523 kernel: [ 1018.870051] usb 1-1.1: New USB device found, idVendor=1546, idProduct=01a8
May 23 15:34:19 dave-Aspire-ES1-523 kernel: [ 1018.870060] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
May 23 15:34:19 dave-Aspire-ES1-523 kernel: [ 1018.870064] usb 1-1.1: Product: u-blox GNSS receiver
May 23 15:34:19 dave-Aspire-ES1-523 kernel: [ 1018.870068] usb 1-1.1: Manufacturer: u-blox AG - www.u-blox.com
May 23 15:34:20 dave-Aspire-ES1-523 mtp-probe: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1"
May 23 15:34:20 dave-Aspire-ES1-523 mtp-probe: bus: 1, device: 5 was not an MTP device
May 23 15:34:20 dave-Aspire-ES1-523 kernel: [ 1019.001058] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM device
May 23 15:34:20 dave-Aspire-ES1-523 kernel: [ 1019.001512] usbcore: registered new interface driver cdc_acm
May 23 15:34:20 dave-Aspire-ES1-523 kernel: [ 1019.001513] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
May 23 15:34:20 dave-Aspire-ES1-523 upowerd[1059]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1
May 23 15:34:20 dave-Aspire-ES1-523 upowerd[1059]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1:1.1
May 23 15:34:20 dave-Aspire-ES1-523 upowerd[1059]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1:1.0
May 23 15:34:31 dave-Aspire-ES1-523 ModemManager[831]: [device /sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1] creating modem with plugin 'u-blox' and '1' ports
May 23 15:34:31 dave-Aspire-ES1-523 ModemManager[831]: Could not grab port (tty/ttyACM0): 'Cannot add port 'tty/ttyACM0', unhandled serial type'
May 23 15:34:31 dave-Aspire-ES1-523 ModemManager[831]: Couldn't create modem for device '/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1': Failed to find primary AT port
May 23 15:42:58 dave-Aspire-ES1-523 systemd-resolved[770]: Grace period over, resuming full feature set (UDP+EDNS0) for DNS server fe80::8e0d:76ff:fe57:2816%3.
May 23 15:48:17 dave-Aspire-ES1-523 systemd-resolved[770]: Grace period over, resuming full feature set (UDP+EDNS0) for DNS server 192.168.1.1.
May 23 15:48:19 dave-Aspire-ES1-523 systemd-resolved[770]: Using degraded feature set (UDP) for DNS server fe80::8e0d:76ff:fe57:2816%3.
May 23 15:50:31 dave-Aspire-ES1-523 systemd-resolved[770]: Using degraded feature set (UDP) for DNS server 192.168.1.1.
Я запускал apt-get install gpsd-clients ранее, но я не уверен, правильно ли он загрузился, я несколько раз видел слово "fail".
2 ответа
Лучший способ убедиться, что он обнаружен, это проверить /var/log/syslog
на его соединение:
- Отключить приемник GNSS
- Откройте терминал и запустите
tail -f /var/log/syslog
команда - Подключите приемник GNSS и дождитесь его инициализации
Для моего u-blox7 GPS/ ГЛОНАСС у меня есть следующий вывод:
22 мая 23:50:08 имя хоста kernel: [99544.380440] usb 3-2: новое высокоскоростное USB-устройство № 12 с использованием xhci_hcd
22 мая 23:50:08 имя хоста ядро: [99544.509111] usb 3-2: найдено новое USB-устройство, idVendor=1546, idProduct=01a7
22 мая 23:50:08 имя хоста ядро: [99544.509115] usb 3-2: новые строки устройства USB: Mfr=1, Product=2, SerialNumber=0
22 мая 23:50:08 имя хоста ядро: [99544.509117] usb 3-2: Продукт: u-blox 7 - GPS/GNSS Receiver
22 мая 23:50:08 имя хоста ядро: [99544.509119] usb 3-2: Производитель: u-blox AG - www.u-blox.com
22 мая 23:50:08 имя хоста kernel: [99544.509363] usb 3-2: ep 0x83 - интервал округления до 1024 микрофреймов, ep desc сообщает 2040 микрофреймов
22 мая 23:50:08 имя хоста mtp-probe: проверка шины 3, устройство 12: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-2"
22 мая 23:50:08 имя хоста mtp-probe: шина: 3, устройство: 12 не было устройством MTP
22 мая 23:50:08 имя хоста ядро: [99544.537420] cdc_acm 3-2: 1.0: ttyACM0: USB ACM-устройство
22 мая 23:50:08 имя хоста ядро: [99544.538041] usbcore: зарегистрирован новый драйвер интерфейса cdc_acm
22 мая 23:50:08 имя хоста ядро: [99544.538044] cdc_acm: драйвер абстрактной модели управления USB для USB-модемов и адаптеров ISDN
Обратите внимание на жирные линии выше - мы видим, что это действительно u-blox 7 и что он распознается как последовательный порт - ttyACM0 (действительно /dev/ttyACM0
).
Для тестирования приемника GNSS вы можете использовать gpsmon
(он будет декодировать NMEA по времени, широте, долготе и другим данным):
- устанавливать
gpsmon
сsudo apt-get install gpsd-clients
- запуск
gpsmon
для найденного последовательного порта сsudo gpsmon /dev/ttyACM0
- Подождите GNSS, чтобы найти спутники и получить данные NMEA.
Примечание: чтобы иметь доступ к последовательным портам как обычный пользователь, вам необходимо добавить своего пользователя в dialout
группа с sudo usermod -a -G dialout $USER
,
Ваше ядро неправильно обрабатывает тип.
Создайте файл: /etc/udev/rules.d/49-ublox.rules
# 1546:01a8 - uBlox Receiver
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", MODE:="0666"
Затем либо перезапустите, либо выполните:
sudo udevadm control --reload-rules
После чего снова подключите устройство. Устройство должно отображаться как /dev/ttyACM0 (число может измениться). Затем вы можете продолжить с предыдущих ответов.