Прикладная некромантия: использование Garmin GPSmap 76S в 2021 году

pmn9qq8vteoa0i7jbqdqsgb2kra.png

За последнее десятилетие мы почти все привыкли часто обновлять устройства, которыми владеем. Старые устройства либо кладем на полку, либо продаем, либо вообще выбрасываем в помойку. И многие даже не думают о том, что по факту устройства нормально работают и могут продолжать выполнять свои функции.

Производители же стараются делать так, чтобы пользоваться старыми устройствами было максимально неудобно: для них перестают выпускать обновления, утилиты удаляются с сайтов, а официальный сервис на запрос о поддержке старого устройства в подавляющем большинстве случаев отвечает отказом.

Вот как раз подобное устройство завалялось у моего друга в чулане, и он отдал мне его для экспериментов. Этим устройством стал GPS-навигатор для туризма Garmin GPSmap 76S, в свое время бывший одним из лучших устройств в своем классе. И у меня родилась идея начать его использовать, например, для записи треков со своих велопоездок. О том, какие препятствия встали у меня на пути и как я с ними справился, читайте под катом.
Находясь в городе с доступным интернетом на смартфоне и возможностью легко его зарядить от розетки или пауэрбанка, таскать относительно громоздкое устройство для навигации нет никакой необходимости. Но, как только вы оказываетесь в местности, где сигнала сотового сигнала нет, а до ближайшей розетки несколько десятков километров пересеченной местности, автономный GPS-навигатор, работающий от стандартных батарей или аккумуляторов типоразмера AA, будет более чем полезным устройством.

В процессе знакомства с навигатором мне стало ясно, что есть 3 ключевые проблемы с использованием его в 2021 году:

  • Софт для заливки карт работает нормально с WinXP / Win7;
  • Дата-кабель имеет интерфейс RS-232;
  • Надо где-то брать актуальные карты.

Я стал решать проблемы по мере их поступления и для начала сбросил навигатор на заводские настройки. На форуме garmin.expert есть следующая инструкция, которая сработала идеально:
«Нажать и держать QUIT+DOWN+MENU. Продолжая держать, нажать и отпустить POWER, отпустить DOWN, удерживать MENU и QUIT еще 5 секунд. Когда навигатор включится, все отпустить.»

Инициализация


Теперь, когда у нас есть навигатор с чистой памятью и заводскими настройками, необходимо его инициализировать и откалибровать компас. Вначале проводим инициализацию: оставляем навигатор под открытым небом, позволяя принять сигнал со спутников. В процессе инициализации производится так называемый «холодный старт».
lov9d1do8c36h96pueazodrr4kw.png

Что такое «холодный старт»


Изначально GPS-навигатор ничего не знает об орбитах навигационных спутников GPS, он знает только частоту, на которой сможет принять сигнал. Как только сигнал с одного из спутников принят, навигатор сохраняет в своей памяти так называемый «альманах», то есть сведения о параметрах орбит всех спутников группировки. Эти параметры транслируются каждым из спутников. В дальнейшем этот «альманах» используется для «теплого старта».

Что такое «теплый старт»


У нас есть «альманах» с примерными параметрами орбит спутников на несколько месяцев, так что GPS-навигатор начнет инициализироваться, основываясь уже на этих данных. В ходе процесса будут приняты так называемые «эфимериды» — коррекционные данные, позволяющие вычислить точное местоположение каждого спутника в каждый момент времени. «Эфемериды» имеют свой срок годности, примерно 30 минут, так что если навигатор был выключен на большее количество времени, то он каждый раз будет пытаться их принять и только потом сможет использовать эти данные.

Что такое «горячий старт»


«Горячим стартом» называется инициализация GPS-навигатора, когда и «альманах», и «эфемериды» актуальны и по ним устройство сразу может определить свое местоположение. Если навигатор умеет использовать интернет-соединение для обновления этих данных, то в большинстве случаев используется именно «горячий старт». Это позволяет крайне быстро начать работу. Автономные же навигаторы используют «горячий старт», только если с момента приема актуальных «эфемерид» прошло менее 30 минут.

Если вы с автономным GPS-навигатором уехали далеко от той точки, где навигатор использовался в последний раз, например, на пару тысяч километров, то будет только «холодный старт». Теперь переходим к инициализации компаса. Нажимаем кнопку PAGE, выбираем «Calibrate compass» и дважды медленно поворачиваемся вправо, вокруг своей оси.

6wepefhwjnwsiokawain2esjpfs.png

Когда компас откалиброван, мы готовы к тому, чтобы решить проблему с заливкой актуальных растровых карт в девайс. Приступим.

Подготовка софта


Я уже не раз в своих статьях упоминал, что использую OpenSUSE Tumbleweed в качестве основной ОС. Разбираться с тем, как именно заработает или не заработает древний софт на Wine, мне не хотелось, так что решил создать отдельную виртуальную машину на Oracle VirtualBox с нужной ОС, в моем случае это была Windows 7. Поскольку COM-порта на моем ноутбуке нет, я воспользовался переходником USB2COM на базе Prolific 2303. Пробрасываем USB-переходник внутрь виртуальной машины:
2skqa72vs70ufjetxnimaejjapu.png
Устанавливаем ОС и соответствующие драйверы. В итоге у нас в системе появится COM-порт, к которому мы и будем обращаться в дальнейшем. Чтобы корректно работать с навигатором, нам потребуется софт под названием MapSource. Последняя версия от 2010 года до сих пор доступна на официальном сайте.
4tetq9u-4immitrsfqf6re1b6fs.png

Чуть позже вернемся к работе с этим ПО, а пока подумаем, откуда нам брать актуальные карты. Самым простым и очевидным будет использование карт из свободного картографического сервиса OpenStreetMap. Их достаточно легко скачивать и конвертировать.

Работа с картами OSM


Чтобы скачать нужный кусок карты, достаточно перейти на сайт проекта и выбрать нужный масштаб для экспорта. Увы, но существуют ограничения: масштабирование должно быть равным или более 11. Для большинства задач этого вполне достаточно.
vbojmxd0pzds0aqlxojyabwidza.png

Выбираем нужный кусок и нажимаем кнопку Экспорт, а затем Экспортировать. На выходе получаем файл с именем map.osm. Далее начинаются «танцы с бубном». У устройств Garmin свой собственный формат, и потребуется конвертер, благо, он существует и называется mkgmap.

Скачиваем конвертер с официального сайта и распаковываем архив. Конвертер написан на Java, так что придется вначале установить актуальный JRE, также потребуется Visual C++ для Visual Studio 2015. Теперь закидываем нашу карту map.osm в директорию с конвертером, открываем консоль и пишем простую команду:

java -jar mkgmap.jar map.osm

3buojszugsy1gduu0-_lgru8xzu.png

После завершения процесса конвертации мы получим набор файлов, среди которых будет файл с картой, вида 63240001.img. Это уже готовый файл, который можно залить в навигатор. Для заливки воспользуемся очень полезной софтиной, которая называется IMG2GPS. Найти ее в гугле не составит проблем, лично я брал отсюда.

Открываем приложение, нажимаем Load Folder и выбираем директорию с конвертированными картами. Ставим галочку на нашу карту и нажимаем Upload to GPS. Карта будет залита на навигатор.

kf2tscajxunksiqqdzt9zxazhi8.png

Проверяем на устройстве и убеждаемся, что все работает как положено:
j2otmc2a_rvvnqjpocpefecv4bw.png

Таким образом, мы получили участок карты со свежими и актуальными данными. Тем не менее, если нам потребуется расширить карту, например, добавить свои кастомные POI, то придется задействовать еще и MapSource. Софтина эта «хитрая» и рассчитана на то, что карты вы будете покупать и инсталлировать прилагающимся в комплекте регистрационным файлом. Но этот метод нам явно не подойдет. Энтузиасты давно написали свой собственный софт, который позволяет устанавливать произвольные карты в MapSource.

Одной из таких утилит будет MapSetToolKit v. 1.77 Beta by cypherman, которую также легко найти в сети, к примеру, на популярных torrent-трекерах. К сожалению, сама по себе эта утилита ни что иное, как графический интерфейс к утилите cgpsmapper. Так что вначале ищем и скачиваем это ПО, а уже потом запускаем MapSetToolKit. Очень часто на трекерах эту утилиту кладут, так сказать, «в довесок».

Чтобы инсталлировать карту, открываем утилиту, задаем директорию, где лежит cgpsmapper, а затем указываем следующее:

  • Select IMG — открываем директорию с картой, выделяем и кнопкой Add → переносим вправо.
  • Mapset Directory — также директория с картой.
  • Mapset Name — задаем желаемое имя карты для отображения.
  • Family ID — просто любое трехзначное число.
  • Install in Mapsource — ставим галочку.

bto7dg7docaul82e0tu4hmkgcds.png

Теперь нажимаем START и после завершения открываем MapSource. Наша карта успешно инсталлировалась и теперь мы можем с ней работать.

ttnmraeg_o1hiaimx40bvfse9dc.png

Вместо заключения


Итак, нам удалось использовать устройство с современными картами. По факту это означает, что если у вас есть подобный навигатор, то вы вполне можете его использовать и сейчас. Тот же Garmin GPSmap 276c, снятый с производства, до сих пор активно используется любителями покатушек по бездорожью и считается чуть ли не эталонным девайсом.

Производителям выгоден только один подход — продавать постоянно выходящие новые модели и искусственно прекращать использование старых. У навигаторов использование ускоряют, прекращая поддержку и актуализацию карт.

Пользователям, таким как я, важно другое: приобретая хорошее и качественное устройство, я хочу использовать его, пока это возможно, и в большинстве случаев не стану покупать новое. Жаль лишь то, что сейчас такие устройства — редкость и изначально проектируются, чтобы максимально усложнить использование после истечения «жизненного цикла» продукта, определяемого производителем.

0ddc9alnpxmvkdjx5bgsrnpiml4.jpeg

© Habrahabr.ru