Многие пользователи порта CyanogenMod 7 под HTC Wildfire S могли сталкиваться с тем, что GPS на этой прошивке попросту не работает или фиксирует местоположение чрезвычайно долго. Определение местоположения в данных апаратах работает по технологии A-GPS, в которой для начального определения местоположения используются базовые станции и сервер поддержки (SUPL-сервер). Также, для определения местоположения необходимо точное время и его синхронизация по NTP-протоколу.
Дело в том, что в данном порте CyanogenMod присутствует не совсем корректный конфиг /etc/gps.conf. Чтобы GPS заработал корректно, нужно указать в конфиге правильный NTP и SUPL.
NTP-сервер можно выбрать на сайте pool.ntp.org. Для России оптимальным выбором будет ru.pool.ntp.org, для Украины — ua.pool.ntp.org, для Белоруссии — by.pool.ntp.org.
Далее, укажем SUPL-сервер supl.google.com и порт 7276. В итоге, получим примерно такой конфиг:
NTP_SERVER= ru.pool.ntp.org 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 SUPL_HOST=supl.google.com SUPL_PORT=7276
После этого, можно перезагрузить девайс и проверить GPS. Для проверки можно использовать утилиту GPS Status & Toolbox, которая может не только показывать статус GPS, но и обновлять информацию о спутниках для ускорения холодного старта.