Нетобзор - форум про интернет

Пожалуйста, войдите или зарегистрируйтесь.


Расширенный поиск  

Автор Тема: GPS-приемник в AirCard 802s - как полноценно пользоваться без использования сети  (Прочитано 800 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Сила в огнеАвтор темы

  • Новичок
  • *
  • Благодарность: +0/-0
  • Оффлайн Оффлайн
  • Сообщений: 64
  • Город: крабcбургер
  • Модем: AirCard 802s
  • Провайдер: DOMO
  • Тариф: 100500 мегабайт в секунду

Добрый день.
 Уже несколько лет ищу ответ на этот вопрос.
Как и с помощью каких утилит\ПО можно использовать GPS-приемник  Sierra на ноутбуке например, без подключения интернета на самом роутере?
Записан
Родина тебя не забудет.. но и не вспомнит

begemot

  • Новичок
  • *
  • Благодарность: +3/-0
  • Оффлайн Оффлайн
  • Сообщений: 52
  • Город: Днепропетровск

Все просто. GPS нужно инициализировать с помощью АТ-команды, как и на всех остальных сиеррах с GPS-модулем
Записан

begemot

  • Новичок
  • *
  • Благодарность: +3/-0
  • Оффлайн Оффлайн
  • Сообщений: 52
  • Город: Днепропетровск

Есть способ гораздо проще и куда универсальнее. Позволяет успешно пользоваться GPS приемником в ЛЮБЫХ операционных системах (точно проверено на Android, Ubuntu и Windows)
Источник вдохновения: https://developer.att.com/devices/2400045_AirCard_890_GPS_Developers__Guide_r1.1.pdf

Собственно суть:
После установки драйверов (в любой операционной системе) появляется 3 (в винде даже 4) COM-порта. Нас собственно интересуют 2 из них. Порт модема и NMEA порт.
Просто подключившись к NMEA порту с помощью hyperterminal становится ясно, что он нем как рыба. Нужна инициализация.

Для инициализации нужно послать в порт, соответствующий устройству-модему команду AT!GPSFIX=1,255,10
И из NMEA порта как из рога изобилия посыпятся сообщения протокола. Обратите внимание, команда на порт модема активирует работу порта NMEA:


На этом этапе мы уже вполне можем работать с данными спутников. Например Автоспутник или Ozy смогут напрямую подключиться к этому порту и снифить этот поток мути.
Собственно - это теоретические изыскания. Чтоб была понятна суть.

Применительно к практике. Учитывая простоту инициализации GPS приёмник может использоваться в ЛЮБОЙ операционке.

Windows
Есть чудная программка АТ Sender с почти однокнопочным интерфейсом - то что надо.
Скачать ее можно тут: http://upwap.ru/2844246

Запускаем, шлем AT!GPSFIX=1,255,10, закрываем. Все. Можно открывать любимый навигационный  софт, например Навикей 7 дорог,  и вешать его на NMEA  порт.


Linux. Большинство современных дистрибутивов эти вообщем-то старые модемы подхватывает автоматом. В результате имеем устройства /dev/ttyUSB0 (модем), /dev/ttyUSB1, /dev/ttyUSB3 и /dev/ttyUSB2 (NMEA)


1) AT команду в линуксах, андроидах и макосах можно отправить легко:
# echo -ne 'AT!GPSFIX=1,255,10\r' > /dev/ttyUSB0 (на порт модема) Уж это действие автоматизируется точно легко

Для понимания происходящего в первый раз советую открыть 3 окна терминала, в двух  слушать порты USB0 и USB2, в третьем слать команду


2) Чисто для проверки: ставим gpsd (демон) и xgps (графическое приложение). Запускаем gpsd /dev/ttyUSB2
Вуаля - видим спутники. Если небо над головой открытое...


Штатно советую использовать "Навикей 7 дорог", нормальный интерфейс и карты сносные

Цитировать (выделенное)
Касается Linux (Ubuntu в частности).
gpsd /devttyUSB3 не может отрыть стандартный свой порт 2947 и фейлится:
gpsd:ERROR: can't bind to IPv4 port gpsd, Address already in use
gpsd:INFO: command sockets creation failed, netlib errors -1, -1

Решение: запускаем его на нестандартном порту например командой
# /usr/sbin/gpsd -S 99 -N -D 4 -F /var/run/gpsd.sock -P /var/run/gpsd.pid /dev/ttyUSB2

Для демонизации процесса приводим файл /etc/default/gpsd к виду
START_DAEMON="true"
GPSD_OPTIONS=""
DEVICES="/dev/ttyUSB2"
USBAUTO="false"
GPSD_SOCKET="/var/run/gpsd.sock"


Android свежее 2.2. Android - линуксу брат и товарищ.
Нужен рут на устройстве и поддержка USB Host

Собственно все просто. Ставим с маркета
1) PPP Widget (станут драйвера, бонус - сможете ходить в 3G) http://travelgps.com.ua/forum/go.php?https://play.google.com/store/search?q=ppp%20widget&c=apps&hl=ru
2) Любой терминал и root, тьма их, по вкусу.
3) "You Are Here GPS" прога для работы с внешними GPS приемниками, делает внешний приемник системным упрощая сопряжение со всякими вашими навителами пр. http://travelgps.com.ua/forum/go.php?https://play.google.com/store/apps/details?id=com.agbooth.usbgps&hl=ru
4) любимую навигационную программу (Navitel, garmin, 7 дорог и пр.)

Дальше все просто. Убеждаемся, что есть устройства /dev/ttyUSB0 (модем), /dev/ttyUSB1 и /dev/ttyUSB2 (NMEA)
Шлем на порт "0" заветную команду AT!GPSFIX=1,255,10:
# echo -ne 'AT!GPSFIX=1,255,10\r' > /dev/ttyUSB0
В "You Are Here GPS" выбираем /dev/ttyUSB2. Пользуемся.

Думаю при желании можно чуток автоматизировать инициализацию.
Записан

begemot

  • Новичок
  • *
  • Благодарность: +3/-0
  • Оффлайн Оффлайн
  • Сообщений: 52
  • Город: Днепропетровск

Немножко Linux-way в Windows... Ну не могу я иначе...

Как обойтись без программ-инициализаторов, терминала и прочего (в Windows)

Как оказалось, в Винде тоже можно послать АТ команду прямо из командной строки прямо в порт модема. Делается это так:
1) если СОМ-порт ниже 10 то команда должна быть вида: echo AT!GPSFIX=1,255,10 >COM*
2) если СОМ-порт старше 10 то команда должна быть вида: echo AT!GPSFIX=1,255,10 >\\.\COM*


Итак, для инициализации модуля GPS автоматом,  при запуске навигационной программы, достаточно чуть отредактировать ярлык ее запуска:
 
было:
Объект:  "C:\Program Files\Навител 7 Дорог\7ways.exe"
Рабочая папка: "C:\Program Files\Навител 7 Дорог"


стало
Объект: C:\Windows\System32\cmd.exe /C echo AT!GPSFIX=1,255,10 >COM5 && start /d"C:\Program Files\Навител 7 Дорог" /b 7ways.exe
Рабочая папка: оставить пустой


Обратите внимание, путь к папке с навигационной программой пишется в кавычках, а сам ехе-шник - без. Программа и путь у вас, разумеется может быть другой. Номер порта модема подставите свой, если он старше 9го - добавите символы \\.\ перед названием порта, см. выше. Также для красоты можно сменить значок ярлыка, иначе превратится в черный (ярлык программы cmd)

И всё... Ваша изжога закончилась.

Кому неохота возится  - просто качаем самораспаковку 7дорог  или Автоспутник5 с уже вшитой инициализацией. Батничек внутри сам определяет на каком порту висит модем Sierra и инициализирует при запуске навигационной программы. Кстати, это работает и для всех других моделей Sierra с GPS - 5725, 595U, 598, 597 ....
7Дорог: http://depositfiles.com/files/nernhpojn
Автоспутник5: https://depositfiles.com/files/ghxdt1n20
Записан

 

+ Быстрый ответ