Как улучшить поиск gps-спутников в телефоне?
Этот вопрос участвует в конкурсе «Вопрос дня»!
Для того, чтобы ответить на вопрос, требуется авторизоваться или зарегистрироваться
Самое тяжелое это "холодный" старт. Поиск идет чисто по спутникам. Занимает продолжительное время. А вот A- GPS уже хавает интернет, хоть мобильных, хоть вайфай. Но значительно ускоряет поиск местоположения. В случае с gprs хватает ваше местоположение по вышкам(чисто по ним погрешность в 100м у меня по городу), а вот по вайфаю и сам не знаю :) В общем, кому лень подождать пару тройку минут используйте A-GPS. И старайтесь быть не в закрытых местах аля домов.
- Ответ понравился: 1
Тут многое зависит от железа телефона.
В телефонах на базе процессоров Intel Atom, Qualcomm Snapdragon, Samsung Exynos GPS не надо настраивать вообще, он и так работает хорошо. Достаточно того, чтобы он был включен и программе было дано разрешение на использование сведений о местоположении.
Другое дело со смартфонами на MTK процессорах. В смартфоне одной фирмы может быть GPS нормального качества, правильно настроенный и работающий хорошо. А в смартфоне другой фирмы работающий плохо, потому что на GPS-модуле сэкономили или неправильно настроили, либо и то, и другое. И в этом случае часто помогает настройка GPS через инженерное меню, причем главным секретом успешной настройки, как оказалось, является запись NMEA LOG-а на SD-карту в течение 20 и более минут. Проверено на Fly IQ4410 с MTK6589. Работает успешно 3-й день.
- Ответ пока никому не понравился
Выйти в чисто поле! =)
- Ответ пока никому не понравился
достать из кармана, включить GPS и режим максимальной производительности, протереть экран и выйти из тени, (подходит ко всем моделям и пользователям)))
- Ответ пока никому не понравился
Можно включить A-GPS, если телефон поддерживает эту технологию.
- Ответ пока никому не понравился
С помощью каналов сотовой связи. Можно использовать данные мобильных операторов о месторасположении сим-карты конкретного телефона. Это может помочь более точно определять, для начала, место расположение обьекта. + дополнительная помощь для gps-спутников.
- Ответ пока никому не понравился
Якщо у вас не китайський нонейм смартфон на mtk, вам достатньо ввімкнути gps, і вийти з "бункера" на відкрите місце! У разі проблем, їх може вирішити перепрошивка з іншими настройками для приймача сигналу gps!
- Ответ пока никому не понравился
Если улучшить поиск спутников нужно для того, чтобы ускорить и улучшить определение своего местоположения, то самые простые методы для этого — включить в телефоне определение по сотовой сети (AGPS) и, например, быть подключённым к Wi-Fi сети.
- Ответ пока никому не понравился
Выбрать один из трех режимов работы GPS, чтобы было понятно покажу на примере одного из владельцев смартфона. "После приобретения смартфона Jiayu G3 на платформе MTK6577, возникла проблема с корректной работой модуля GPS. На открытой местности телефон обнаруживал 3-5 спутников, но все они были в статусе in view и не одного в статусе in use, даже спустя 30-40 мин координаты телефоном не определялись. Пришлось зайти на форум и черпать от туда опыт и знания от более продвинутых пользователей. Возможно, данная инструкция подойдет и для других моделей смартфонов на процессорах MTK6575, MTK6577.
Немного теории
GPS в платформе MTK 6577 реализован на чипе MTK6620/6628 , кроме функции GPS выполняет множество других — работу Bluetooth , WIFI, Сотовой сети и т.д. Антенной служит кусок фольги. Рассчитывать на качество и уровень Garmin не приходится, но свои навигационные функции телефон выполнять должен, пусть и с большей погрешностью.
Существует 3 режима работы GPS в наших смартфонах. 1) Чистый GPS. Не требует интернет подключение. При первом включении и если не пользоваться более суток стартует реально долго (от 5 мин до 1 часа). Если включать периодически в течении дня то за 5-15 мин у меня обнаруживал. В теории должен быстрее подхватывать спутники но в моем Jiayu G3 вообще не заработал в данном режиме.
2)GPS + A-GPS: Преимущества: A-GPS имеет несколько важных отличий от обычного GPS, которыми объясняются все преимущества этой системы. Главное преимущество: быстрое получение координат сразу после включения.Другое преимущество состоит в повышении чувствительности приёма слабых сигналов в «мёртвых зонах» (тоннелях, низинах, впадинах, на узких городских улицах, в помещениях, в лесу с плотным лиственным покровом).
Недостатки:A-GPS не функционирует вне зоны покрытия сотовой сети.Некоторые приёмники с A-GPS объединены с радиомодулем (GSM) и не могут стартовать, если радиомодуль отключен. Наличие GSM (GPRS) покрытия для старта самого модуля A-GPS не обязательно.Модули A-GPS при старте потребляют небольшой трафик, который составляет 5-7 кБ; при потере сигнала обычно требуется повторная синхронизация, что может привести к повышенным затратам, особенно при нахождении в роуминге. У меня данные A-GPS корректно не подгружались их пришлось обнулить. Как это сделать будет описано далее.После настройки данный способ оказался наиболее быстрым. Однако мне необходим GPS и за пределами страны, роуминг и интернет несовместимы (более 10 евро за 1 МБ). Этот метод оптимальным я бы не назвал.
3) GPS+EPO: Преимущества:EPO — сервис платформы MTK, аналог A-GPS, позволяющая залить в устройство альманах на месяц вперед. Ускоряет запуск GPS до 30 секунд. Не требует интернета при запуске — достаточно 1 раз скачать при помощи Wi-Fi или 3G/GPRS и месяц можно пользоваться.
Недостатки:не так быстр в наших странах. После выдачи EPO — подключается к 7-10 спутникам из 12 за 3-5 мин, потом работает намного шустрее, до 1 мин. Для моего телефона этот способ оказался наиболее привлекательным. Я дома загрузил альманах через WI-FI. Спутники подхватывает быстро. Я остался доволен. Настройка самого телефона. Многие пишут что необходимо получать права ROOT и знание кода для подключения к инженерному меню. Для калибровки GPS и проверки его работоспособности наиболее оптимальной является системная утилита YGPS. С ее помощью можно обнулить данные A-GPS и пройти все этапы калибровки чистого GPS. Основная проблема в том, что у YGPS нет ярлыка и вызывается она при помощи специального кода. При частом использовании YGPS это не удобно. Нет ничего невозможного, создадим ярлык YGPS, используя бесплатное приложение Any Cut."
- Ответ пока никому не понравился
В первую очередь необходимо следовать простым инструкциям:
- После включения GPS, включите сразу и мобильный Интернет - таким образом смартфон значительно быстрее определит координаты, после чего мобильный Интернет можно выключить.
- GPS садит аккумулятор, но еще быстрее садит аккумулятор постоянно включеный экран. В то же время, если заблокировать телефон - то отключается GPS. Хотите чтобы GPS проработал дольше (например, гуляя по незнакомому городу) - уменьшите яркость экрана до необходимого минимума.
- GPS не работает в помещении - только под открытым небом
- В некоторых смартфонах антенна GPS располагается в нижней части аппарата. Можно попробовать ускорить поиск спутников, перевернув смартфон на 180 градусов. Или не держать его в руках, а положить, например, на лавочку.
- Если все же необходимо воспользоваться GPS в помещении - можно выйти на балкон, либо подойти к окну. Та же хитрость работает и в маршрутках - нужно только сесть возле окна.
- В пасмурную погоду сигнал ловится хуже. Среди высотных зданий тоже ловится хуже. Иногда бывает достаточно отойти на 100-200м от 16-этажек - и результат становится заметно лучше.
- При холодном старте на ходу сигнал ловится хуже, чем стоя на месте. Заставьте себя остановиться и дождаться пока смартфон поймает спутники (запустите Статус GPS и любуйтесь ловко она ловит их один за другим) - в конечном итоге вы потратите так меньше времени, чем пытаясь сделать это на ходу.
- В теории нужно поймать 3 спутника чтобы определить координаты, и 4, чтобы определить координаты и высоту. В реальности же Статус GPS определяет все параметры, когда поймано 6-7 спутников.
Что касается телефонов с ОС Android, при наличии Root, можно отредактировать файл gps.conf, который находится по пути: /system/etc/gps.conf Прописываем следующие строки:
NTP_SERVER=ua.pool.ntp.org
NTP_SERVER=0.ua.pool.ntp.org
NTP_SERVER=1.ua.pool.ntp.org
NTP_SERVER=2.ua.pool.ntp.org
NTP_SERVER=3.ua.pool.ntp.org
NTP_SERVER=europe.pool.ntp.org
NTP_SERVER=0.europe.pool.ntp.org
NTP_SERVER=1.europe.pool.ntp.org
NTP_SERVER=2.europe.pool.ntp.org
NTP_SERVER=3.europe.pool.ntp.org
XTRA_SERVER_1=/data/xtra.bin
AGPS=/data/xtra.bin
AGPS=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
DEFAULT_AGPS_ENABLE=TRUE
DEFAULT_USER_PLANE=TRUE
REPORT_POSITION_USE_SUPL_REFLOC=1
QOS_ACCURACY=50
QOS_TIME_OUT_STANDALONE=60
QOS_TIME_OUT_agps=89
QosHorizontalThreshold=1000
QosVerticalThreshold=500
AssistMethodType=1
AgpsUse=1
AgpsMtConf=0
AgpsMtResponseType=1
AgpsServerType=1
AgpsServerIp=3232235555
INTERMEDIATE_POS=1
C2K_HOST=c2k.pde.com
C2K_PORT=1234
SUPL_HOST=FQDN
SUPL_HOST=lbs.geo.t-mobile.com
SUPL_HOST=supl.google.com
SUPL_PORT=7276
SUPL_SECURE_PORT=7275
SUPL_NO_SECURE_PORT=3425
SUPL_TLS_HOST=FQDN
SUPL_TLS_CERT=/etc/SuplRootCert
ACCURACY_THRES=5000
CURRENT_CARRIER=common
После редактирования перегружаем телефон.
- Ответ пока никому не понравился
Перед процедурой выясните код инженерного меню Вашего аппарата - он Вам понадобится.
- Точность работы GPS, и особенно скорость "захвата после холодного старта", сильнейшим образом зависят от точности установки времени на Вашем аппарате. Обычно у всех стоит в настройках "Даты и Времени", "синхронизировать время по сети". У меня тоже стояло. Но как выяснилось, при этом аппарат использует для установки времени сотовый сигнал оператора, который в некоторых случаях может давать точность установки времени хуже +-несколько минут, а в моем случае (Киев, опаратор Life) давал отличие от реального времени целых 3 секунды. В общем кал, а не "сигналы точного времени". Есть еще возможность "определять время по GPS", но если Вы не в деревне живете, то это будет жрать много батареи, а толку будет чуть - ни в квартире ни в метро ни в маршрутке, ни в офисе... Ну Вы поняли.
- Поэтому озаботимся сначала утсановкой наиболее точного возможного времени. Для этого я поставил бесплатную программу ClockSync, вот отсюда: https://play.google.com/store/apps/details?id=ru.org.amip.ClockSync&hl=ru, можно еще взять отсюда: http://4pda.ru/forum/index.php?showtopic=171610. Также можете воспользоваться методикой, которую я описал здесь: http://vyacheslav.blogspot.com/2013/07/android-gps_12.html - она не требует установки дополнительных программ, но требует ручного редактирования нескольких системных конфигурационных файлов.
- Далее, определяемся с опорным сервером точного времени, который будем использовать. Немаловажно, чтобы он был как можно ближе к Вам, и чтобы время пинга до него было минимальным. Для начала, адреса "пулов" - для Украины это ua.pool.ntp.org, для России ru.pool.ntp.org. Если Вы в другой стране, ищите вот здесь: http://www.pool.ntp.org/ru/.
- Теперь запускаем терминал, и в нем комманду "ping ua.pool.ntp.org", и смотрим на время отклика. Делаем это раз 10 - каждый раз она будет обращаться к случайному серверу "пула", и обычно к другому. Даже для Украины время "отклика" для разных серверов колеблется от 5ти до 60мс (по наземке), что уж говорить о России с ее размерами. Соответственно выписываем IP адрес сервера, время отклика от которого минимально. Его и будем использовать.
- Запускаем установленную программу ClockSync, Меню > настройки. Первый пункт "NTP сервер". Вписываем туда выбранный IP адрес. Далее, выставляем галочку "автоматическая синхронизация", потом выбираем "Интервал". Чем интервал" меньше - тем чаще будет проходить синхронизация, а это "немножко траффика и множко батареи", с другой стороны, мой аппарат за 3 часа "уходит" аж на 160-180 миллисекунд... Я остановился на 3х часах покачто. Далее галочка "точный интервал" - можете не ставить - чуть сохранит батарею, я лично поставил. "Режим высокой точности" - ставьте, тем более что синхронизация иногда будет идти через сотовую передачу данных с очень нестабильной скоростью (можете не ставить - точность упадет, зато существенно снизится расход батареи при синхронизации). Ставим также "определять часовой пояс",
- Выходим из меню настроек, жмем "меню", и выбираем "синхронизировать" - насколко Ваш аппарат идет "мимо времени" видно на экране. Да, в меню настроек через сутки сможете посмотреть насколько часы Вашего аппарата "спешат/опаздывают" в сутки (мой Fly IQ 450 на 9,21 сек в день).
- PS автоматическая синхронизация времени возможна только на "рутованном" аппарате. Если у Вас не рутованный, там есть в программе "ручной режим", но точность уже будет совсем не та.
- Примечание - добавлено позже. Также есть второй способ точной синхронизации времени, без установки дополнтилеьной программы, я его описал здесь: http://vyacheslav.blogspot.com/2013/07/android-gps_12.html. После сравнения результатов, я выбрал именно этот способ, но он требует некоторого редактирования конфигурационных файлов.
- Также желательно, если у Вас рутованный аппарат, отредактировать файл /system/etc/gps.conf. А именно, в первой строке, после "NTP_SERVER=", заменить указанный там "дефолтовый", на более подходящий для Вашей страны - например для Украины на ua.pool.ntp.org, или даже на ранее определенный IP адрес, но это будет менее универсально и иногда чревато сбоями, если конкретный сервер не будет работать, поэтому ua.pool.ntp.org универсальнее, зато IP адрес в этом поле может еще больше ускорить начальный холодный старт. Редактирование можно делать с помощью "Root Explorer".
- Со временем разобрались. Далее.
- Идем в настройки телефона. Местоположение. Отмечаем пункты: "По координатам сети", "Спутники GPS", "Вспомогательные данные", "AGPS", остальное "по вкусу". теперь заходим в пункт "Параметры EPO". Выключаем "EPO" на время калибровки. Здесь все.
- Запускаем Google Earth, в настройках переключаем его, чтобы показывал координаты в формате градусов и долей. Ищем поблизости место, где будем проводить калибровку. Это должно быть достаточно открытое место, например площадь. Выбираем точку где будем стоять при калибровке (выберите приметы, чтобы стать точно в нее потом), наводим на нее курсор, и записываем показанные координаты до последнего знака. Подготовка окончена - идем "в поле" :) с телефоном.
- Если использовали п3 - становимся ТОЧНО в точку, которую ранее выбрали. Запускаем "root explorer", заходим в папку /data/misc, удаляем файл mtkgps.dat. Загружаем самые свежие данные AGPS - например через программу Статус GPS (меню>инструменты>Данные AGPS>Загрузить). Проверяем время, например программой ClockSync (несколько раз проверяем, смотрим типичное отклонение, и потом жмем синхронизировать - как пользоваться программой и где взять - см ранее в статье о калибровке времени). Заходим в инженерное меню, LocationBasedServices, выбираем в меню "GPS", и нажимаем кнопку "GPS" (надпись на ней сменится с OFF на ON). Переходим во "View". Ждем пока появится "фикс" (перестанет мигать индикатор GPS), и потом еще не менее 2х минут. После чего жмем RefPosition, и в появившихся окошках вписываем координаты, ранее выписаные с Google Earth" для точки где Вы проводите калибровку (там будут нули). Жмем "ОК". Снова переходим к экрану View, и ждем после "фикса" не менее 2х минут, лучше минут 5. Выходим назад в инженерное меню. Если п3 не выполняли - просто выбираем любое достаточно открытое место. Вынимание - даже не пытайтесь проделывать калибровку на балконе или "из окна" - сделаете только хуже.
- Можете перед калибровкой еще проверить правильность выбора SIM карты для AGPS - если Ваш сотовый оператор "глюкало", а карты две и два оператора, то можно выбрать менее глючного, это в случае если был выбран "глюкавый", может существенно ускорить работу GPS, ато и "оживить" "неработающий напрочь GPS" процедура описана в самом конце заметки.
- Заходим в "Инженерное меню" (для моего FLY IQ 450 и многих китайцев-клонов это код ##3646633##, который набираем там где обычно набираете номер телефона при звонке, у Вас может быть другой). Находим "YGPS location", и запускаем. Телефон держите вертикально.
- Переходим на вкладку Information. Жмем кнопку "Full".
- Переходим на вкладку 'Satellites", ждем когда появится минимум 5 спутников (лучше больше - у меня их было 11 при настройке), и после того как они "появятся и позеленеют", ждем еще минимум 2 минуты, удерживая аппарат неподвижно (можно дольше - хуже не будет - только лучше). Это первичная калибровка. У меня она заняла минуты 3, но у некоторых аппаратов по отзывам может занять и до получаса.
- Идем в пункт Information", жмем "Cold". Далее как в п 8. Пункт 9 повторяем 3 раза. Можно больше.
- Снова в Information. Жмем "Warm". далее как в п.8. Повторять уже не обязательно.
- Снова в Information". Жмем "Hot". Далее как в п 8.
- Если Вы выполняли пункт 3, выходите в инженерное меню, выбираете пункт "LocationBasedService", переходим на вкладку "View" (на забудьте активировать GPS как описано в п 4), и ждем пока определится максимум спутников. Минимум 7, лучше больше (чем больше, тем точнее калибровка), и после того как определится максимум, ждем еще 2 минуты. После чего идем во вкладку GPS, и жмем "RefPosition". У Вас появятся две цифры, от той, что Вы ранее записали используя Google Earth, они будут отличаться скорее всего тысячными. Исправляете обе на те, что Вы записали ранее в п3. Жмем "ОК". Теперь переходим во вкладку GPS и ждем минут 5 держа телефон неподвижно. Вот в этом месте - чем дольше - тем лучше. Программа GPS, получив реальные координаты, сравнивает их с теми что "получаются у нее" и вносит коррекции. их уточняя. Ниже в окошке увидите счетчик "процесса" и данные, которые врем от времени меняются.
- Выходим из инженерного меню, перезагружаем телефон.
- Все. Радуемся шустрому и точному GPS.
- После полностью выполненной инструкции, реальная точность определения позиции (вычисленная по google earth а не та, которую показывает сам GPS), составила ~2.3-2.5 метра (GPS показывал точность в 5-6 метров в статусе), при "видимых" 9ти спутниках, и 8 метров (GPS показывал точность 10.5 метров в статусе) при видимых 7ми спутниках -спутники движутся и раз на раз не приходится в смысле день на день.
-
- PS Если Вы собираетесь использовать также программу, описанную здесь: http://vyacheslav.blogspot.com/2013/07/android-gps-6.html, то учтите что калибровать нужно после ее установки. И в случае ее деинсталяции - калибровать повторно - скидывает при деинсталяции калибровочные данные, и GPS снова начинает "искать спутники по нескольку минут". Загрузка ее данных "ускорения" ВРОДЕ БЫ не влияет на калибровку, но и смысла не имеет - разница по скорости "в пределах статистической погрешности". Но кажется, реальная точность чуть лучше, со свежезагруженными ее данными (процентов на 20, но тоже в пределах статпогрешности по сути). Также имейте в виду, что загруженные данные вышеуказанной программы быстро устаревают, и спустя день-два уже наоборот будут тормозить GPS и снижать точность (по сравнению с просто нормально откалиброванным родным по вышеописанной в этой статье методике). Плюс я ее снес нафик :) Бо во первых не нужна, а во вторых с ней можно получить "GPS который ничего не определяет", если забыли загрузить новые данные. Даже если Вы нажали кнопку "сбросить загруженные данные" и саму программу не запускаете. По кр мере у меня раз так случилось - проверять грабли еще раз не стал.
Информация взята от сюда
- Ответ пока никому не понравился
Є програмні шляхи, як от «тримати загруженим альманах», використовувати A-GPS... а є апаратний — замінити антену :)
- Ответ пока никому не понравился
почитать