PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Навигация (http://pccar.ru/forumdisplay.php?f=176)
-   -   USB GPS for Android (http://pccar.ru/showthread.php?t=18871)

ABCh 03.02.2017 20:44

Попробуйте оба варианта.

elected 11.02.2017 00:16

Победил заразу) Собрал пакадж fusion location provider и первую попавшуюся сериал либу. Видимо из-за того, что не запускался нормальный локейшн провайдер, не проводилась процедура инициализации приемника и либа соответствующую ошибку выдавала (хотя локейшн менеджер стоит и пакеты com.android.location.provider присутствует в папке фреймворков). Когда смотрел логи, система также пыталась запустить нативный провайдер на джаве, который по всей видимости должен работать без либы вообще (насколько я понял - заменять ее функционал). Однако там тоже валились ошибки. Вобщем, если у кого такие же проблемы, с какими столкнулся я - обращайтесь.

xemulres 11.02.2017 07:25

подскажите,пожалуйста, как определить подхватывается ли либа?

elected 11.02.2017 11:43

Все либы, что я видел в исходниках (штук 5-6 разных), основываются на функциях, объявленных в gps.h, hardware.h и прочих исходниках прослойки HAL, поэтому, основной смысл у них у всех одинаковый - на выходе имеем стандартный набор функций инициализации и работы с последовательным GPS, которые немного отличаются в реализации. Поэтому, в первую очередь нужно смотреть на вывод logcat - нет ли ошибок по основным функциям - init, start, stop, location_inject и пр. Но это сработает при условии, что либа собрана с опцией отладки! Т.е. если мы видим, что logcat молчит по поводу gps и он не работает, то уже имеем 2 варианта - либа не подхватилась, либо подхватилась, но ошибки совершенно в другом (как было в моем случае) и она при этом молчит и в логи ничего докладывает.

fathernet 11.02.2017 18:35

спустя столько времени.... перерыв кучу сайтов и форумов, решив уже отказаться от всего и купить 2din (быстро передумал из за ограниченности а самое главное норм аппарат от 25 кусков)
моя проблема была только в одном... каждый раз надо было запускать UsbGPS4Honeycomb_MR1_alpha1, делать stop потом start и все работало отлично, но каждый раз это делать не удобно.

Сегодня же наткнулся на вот что
Настройки под Ваш GPS/GLONASS приемник необходимо добавить в файл /system/build.prop

ro.kernel.android.gps=ttyUSB0
ro.kernel.android.gps.speed=9600
ro.kernel.android.gps.max_rate=1

а в папку /system/lib/hw/ закинуть gps.default.so от сюда https://github.com/dipcore/gps-glona...aster/libs/x86

в итоге после перезагрузки все заработало сразу..... но как всегда не без косяков.... видит много а зацепился за 3 спутника (((((

что можно исправить чтоб улучшить картину?

Asus 11.02.2017 19:17

Использовав наработки elected и добавив fusion location provider у меня получилось запустить GPS приёмник через UART-USB преобразователь.
В системе он видится как ttyUSB0.

fathernet 11.02.2017 19:28

ссылки бы указали откуда что брали.

Asus 11.02.2017 19:57

Цитата:

Сообщение от fathernet (Сообщение 382054)
ссылки бы указали откуда что брали.

Все вопросы к разработчику. Думаю он сам скоро всё выложит и распишет как подключать.
А я вроде как бета-тестер.

elected 11.02.2017 19:58

Цитата:

Сообщение от fathernet (Сообщение 382052)
спустя столько времени.... перерыв кучу сайтов и форумов, решив уже отказаться от всего и купить 2din (быстро передумал из за ограниченности а самое главное норм аппарат от 25 кусков)
моя проблема была только в одном... каждый раз надо было запускать UsbGPS4Honeycomb_MR1_alpha1, делать stop потом start и все работало отлично, но каждый раз это делать не удобно.

Сегодня же наткнулся на вот что
Настройки под Ваш GPS/GLONASS приемник необходимо добавить в файл /system/build.prop

ro.kernel.android.gps=ttyUSB0
ro.kernel.android.gps.speed=9600
ro.kernel.android.gps.max_rate=1

а в папку /system/lib/hw/ закинуть gps.default.so от сюда https://github.com/dipcore/gps-glona...aster/libs/x86

в итоге после перезагрузки все заработало сразу..... но как всегда не без косяков.... видит много а зацепился за 3 спутника (((((

что можно исправить чтоб улучшить картину?

Проверьте скорость порта, возможно еще у него неправильно выставлен режим (либы обычно отключают echo и еще некоторые параметры меняют при инициализации устройства). Проверьте аппаратную составляющую - подключите например к по на windows (в моем случае я использовал ublox center) и промониторьте, сколько там ловится спутников. Возможно банально отвалилась антенна.

fathernet 11.02.2017 20:45

Вложений: 1
Цитата:

Сообщение от elected (Сообщение 382056)
Проверьте скорость порта, возможно еще у него неправильно выставлен режим (либы обычно отключают echo и еще некоторые параметры меняют при инициализации устройства). Проверьте аппаратную составляющую - подключите например к по на windows (в моем случае я использовал ublox center) и промониторьте, сколько там ловится спутников. Возможно банально отвалилась антенна.


эх..... все это перепроверено 10 раз. и скорость 4800 прописана, он на другой и не работает, больше ничего не прописывалось. на винде в тех же условиях 8 цепляет.

сколько цепляет при использовании UsbGPS4Honeycomb_MR1_alpha1 - ХЗ, но работает стабильно и адекватно, потерь нет. при использовании UsbGPS4Honeycomb_MR1_alpha1 никаких манипуляций вообще - голый андройд + UsbGPS4Honeycomb_MR1_alpha1 = ВСЕ. теперь я поправил build и заменил библиотеку дефолтного gps. стартует все сразу и ничего не надо тыкать но - 3 спутника.

gps.default.so - думаю дело все в этом модуле - видимо не совсем под мой приемник. Как узнать что за приемник? usb uart pl2303 а дальше что стоит?

Rage2 13.02.2017 00:41

Цитата:

Сообщение от elected (Сообщение 381997)
Победил заразу) Собрал пакадж fusion location provider и первую попавшуюся сериал либу. ... Вобщем, если у кого такие же проблемы, с какими столкнулся я - обращайтесь.

Может поделитесь? прикреплю в шапку, многим это будет полезно.:happy:

elected 13.02.2017 22:25

Вложений: 1
Цитата:

Сообщение от Rage2 (Сообщение 382191)
Может поделитесь? прикреплю в шапку, многим это будет полезно.:happy:

Собирал из исходников, собранный fusedlocations.apk и собранная либа во вложении (Allwinner H2 SDK, android 4.4.2), изменения в build.prop:

android.hardware.location.gps=true
gps.enable=true
ro.kernel.android.gps=ttyACM0 - поменять на свой серийный gps
ro.kernel.android.gps.speed=9600
ro.kernel.android.max_rate=1
ro.gps.agps_provider=1

APK у меня складывается в /system/priv-app, либа - как у всех /system/lib/hw
Перед пробным запуском необходимо убедиться в наличии всех пермишенов в /system/etc/permissions, а также наличия в папке /system/framework пакаджа locations.provider.

elected 13.02.2017 22:28

Цитата:

Сообщение от fathernet (Сообщение 382061)
эх..... все это перепроверено 10 раз. и скорость 4800 прописана, он на другой и не работает, больше ничего не прописывалось. на винде в тех же условиях 8 цепляет.

сколько цепляет при использовании UsbGPS4Honeycomb_MR1_alpha1 - ХЗ, но работает стабильно и адекватно, потерь нет. при использовании UsbGPS4Honeycomb_MR1_alpha1 никаких манипуляций вообще - голый андройд + UsbGPS4Honeycomb_MR1_alpha1 = ВСЕ. теперь я поправил build и заменил библиотеку дефолтного gps. стартует все сразу и ничего не надо тыкать но - 3 спутника.

gps.default.so - думаю дело все в этом модуле - видимо не совсем под мой приемник. Как узнать что за приемник? usb uart pl2303 а дальше что стоит?

Разберите приемник и посмотрите, какой там стоит чип. Либы - все под NMEA приемники. Попробуйте мою, что выложил, она вроде ничего (у меня в комнате не самый хороший ublox 6-series ловит 8-9 спутников с 3д фикс).

fathernet 13.02.2017 22:38

elected - спасибо попробую. но и с той что 3 ловит сегодня 120 км проехал. да 3 ловит и 10 видит.... но не пропадало и не отваливалось, скорость показывало четко, маршрут ровно. может и наплевать на цыфру 3)))) Но ваше попробую обязательно!
PS разбирать магнит не охото)))) но думаю придется - иначе все время буду страдать и помочь не смогут мне)))

RomkaT4 14.02.2017 01:56

Спасибо elected! На Orange PI PC заработало. Видит 11 спутников, использует 8. Но, есть нюанс: в Навителе моргает индикатор спутников желтый/зеленый с периодичностью в 1 сек.

elected 14.02.2017 05:06

Цитата:

Сообщение от RomkaT4 (Сообщение 382274)
Спасибо elected! На Orange PI PC заработало. Видит 11 спутников, использует 8. Но, есть нюанс: в Навителе моргает индикатор спутников желтый/зеленый с периодичностью в 1 сек.

У меня тоже скачет, если честно, не знаю что это, навител у меня как запасной вариант, планирую пользоваться yandex navi, осталось только клавиатурное управление к нему прикрутить))) (пока нет нормального монитора с тачскрином) ну и 3g модем. Правда я использую pi plus 2e, pi pc мне кажется слабовата будет.

slon25 14.02.2017 09:45

Для 6 андроида подойдет?

fathernet 14.02.2017 12:36

Вложений: 1
elected - как ни странно ваши компы одинаковы - разница в памяти. Тоже заинтриговала эта машинка, может вы с RomkaT4 тему откроете?

а я вот упорядочил 4 варианта этих компиков чтоб было удобнее сравнивать))) На одном даже SATA есть!

elected 16.02.2017 14:17

Цитата:

Сообщение от fathernet (Сообщение 382283)
elected - как ни странно ваши компы одинаковы - разница в памяти. Тоже заинтриговала эта машинка, может вы с RomkaT4 тему откроете?

а я вот упорядочил 4 варианта этих компиков чтоб было удобнее сравнивать))) На одном даже SATA есть!

Насколько знаю САТА там беспонтовый, т.к. работает через USB. В целом железо шустрое, но тот андроид, который представляют производители, требует серьезных допиливаний - рута нет, init.d нет, отсутствует довольно много полезных модулей ядра (например cdc-acm, rtc, драйвера usb-to-serial контроллеров), в то время, как имеются мало применимые, поддержка gps наполовину выпилена. Вобщем нужно садится, изучать SDK, конфигурировать ядро и андроид, тогда реально конфетку слепить. Если сообщество поддержит - можно и отдельный топик вести.

elected 16.02.2017 14:50

Цитата:

Сообщение от slon25 (Сообщение 382279)
Для 6 андроида подойдет?

Либа или apk?

Asus 17.02.2017 05:56

Поддержка Rtc через i2c было бы супер. Встроенных часов там нет.

OxYd 17.02.2017 07:22

Цитата:

Сообщение от elected (Сообщение 382433)
Насколько знаю САТА там беспонтовый, т.к. работает через USB. В целом железо шустрое, но тот андроид, который представляют производители, требует серьезных допиливаний - рута нет, init.d нет, отсутствует довольно много полезных модулей ядра (например cdc-acm, rtc, драйвера usb-to-serial контроллеров), в то время, как имеются мало применимые, поддержка gps наполовину выпилена. Вобщем нужно садится, изучать SDK, конфигурировать ядро и андроид, тогда реально конфетку слепить. Если сообщество поддержит - можно и отдельный топик вести.

Я очень ЗА! НА Orange pi PC ставил андроид от Beelink x2, впечатления положительные:yes2:

elected 18.02.2017 15:45

Цитата:

Сообщение от Asus (Сообщение 382489)
Поддержка Rtc через i2c было бы супер. Встроенных часов там нет.

Читал 4pda.ru, там форумчанин жаловался на ошибки при инициализации внешних устройств i2c, надо копать эту тему, хотя в разных дистрибах линукса все работает.

nikopol70 21.02.2017 00:22

коллеги, в руки попался внешний GPS HOLUX M-1000C
есть блютух, ЮСБ
спутники ловит в секунды, по сравнению со встроенным GPS N7 2013 WF - который иногда хватает сразу, иногда как ему хочется
по блютузу все понятно - конектися работает и т.д.... только кумарит что после переподключения юл.туза надо вводить пин на приемнике каждый раз

а вот вариант с подключением по ЮСБ интересен
рассмотрел что стоит MT3329 чип, с обратной стороны на антене Р236
пробовал скормить апк которая пару страниц назад была... не установилась, вручную скопировал в прив апп, поставил прова, подредактировал билдпроп, либу скопировал выставил права
при подключении в ДЕВ появляется ttyACM0
значит система (экспериментирую на 7.0) видит приемник. а може проблема в том что пробую на 7-ке?

elected 25.02.2017 07:08

Цитата:

Сообщение от nikopol70 (Сообщение 382724)
коллеги, в руки попался внешний GPS HOLUX M-1000C
есть блютух, ЮСБ
спутники ловит в секунды, по сравнению со встроенным GPS N7 2013 WF - который иногда хватает сразу, иногда как ему хочется
по блютузу все понятно - конектися работает и т.д.... только кумарит что после переподключения юл.туза надо вводить пин на приемнике каждый раз

а вот вариант с подключением по ЮСБ интересен
рассмотрел что стоит MT3329 чип, с обратной стороны на антене Р236
пробовал скормить апк которая пару страниц назад была... не установилась, вручную скопировал в прив апп, поставил прова, подредактировал билдпроп, либу скопировал выставил права
при подключении в ДЕВ появляется ttyACM0
значит система (экспериментирую на 7.0) видит приемник. а може проблема в том что пробую на 7-ке?

Перво-наперво посмотрите вывод Вашего интерфейса командой cat /dev/ttyACM0 - в терминале должны побежать координаты в формате NMEA. Дальнейшие действия зависят уже от конкретного устройства на Андроиде.

kamenev.n 26.02.2017 01:50

Цитата:

Сообщение от RomkaT4 (Сообщение 382274)
Спасибо elected! На Orange PI PC заработало. Видит 11 спутников, использует 8. Но, есть нюанс: в Навителе моргает индикатор спутников желтый/зеленый с периодичностью в 1 сек.

У Вас какой модели GPS ?

OxYd 26.02.2017 20:19

Orange pi pc + u-blox 7( vk-172)
 
Друзья, кто-нибудь прикручивал gps модуль u-blox 7( vk-172) к orange pi? как-то не идет и все тут. cdc-acm.ko заливал, insmod, а в ответ failed (exec format error):closedeyes:

Demon_AV 07.03.2017 14:55

Перечитал всю в этой ветку, огромное спасибо всем вопрошающим и помогающим.
Имею в машине бокс M9SPro на Amlogic S905 с 5.1.1 и GPS стик U-blox7.
Подключаю стик, вижу в терминале устройство ttyACM0, ввожу cat /dev/ttyUSB0 и вижу NMEA данные. То есть бокс видит стик и драйвер не нужен.
Создал android.hardware.location.gps.xml в \system\etc\permissions, положил gps.default.so в /system/lib/hw. Права назначил.
Прописал в build.prop
ro.kernel.android.gps=ttyACM0
ro.kernel.android.gps.speed=9600
Проверил в терминале последовательно после su
stty -F /dev/ttyACM0 - показывает скорость 9600, то что нужно,
Затем ввожу chmod 666 /dev/ttyACM0 - программы видят спутники.
Захотел автоматизировать.
Создал модуль 01gpsactivate ( там только chmod 666 /dev/ttyACM0) и положил в /etc/init.d.
Задал права как у остальных файлов.
Нет реакции.
Добавил эту надпись в install-recovery.sh, но тоже не подхватывается после перезагрузки.
Если ввожу в терминале руками chmod 666 /dev/ttyACM0 то всё работает.
Решил проблему с помощью Таскера, который после загрузки системы запускает скрипт install-recovery2.sh с этой строкой.
Еще раз всем спасибо.
И да, после того, как добавил в permissions файлик с инфой о GPS, маркет теперь не пишет на приложениях с GPS "Не поддерживается на вашем устройстве". И тут же обновился Яндекс навигатор, который до этого я обновлял только вручную свежим установочным файлом.

Demon_AV 09.03.2017 17:20

Не всё так гладко как хотелось бы. Выяснилось после поездок. Да, спутники видятся, но яндекс навигатор показывает странную скорость (вот тут жалоба на то же самое), а iGo NextGen вообще её не показывает, и более того, карту всегда двигает с севером наверху. Никакие настройки внутри iGo не меняют этого отображения. Хотя спутники она видит прекрасно.
До этого пользовался этим же приемником через костыль в виде GNSS Commander и фиктивные положения, всё работало предельно точно и корректно и в яндексе и в iGo.
Поменял несколько найденных вариантов gps.default.so, с некоторыми не завелось совсем. Как можно исправить такое поведение устройства?

BoShe 27.03.2017 17:18

Добрый день! Не подскажите, удалось ли завести GPS на s912, хоть кому-нибудь? Я имею ввиду-нормально, с либой, а не с костылем

Buffononline 30.03.2017 18:59

Ребят, если есть решение, ткните носом нуба, а то по мере чтения ветки ничего подобного не увидел...
Суть: MoveO tpc-7vx, Android 2.3.1 в комбинации со свистком u-blox 7.
Сделано: чудо-планшет видит свисток на ttyUSB1, и получает данные в терминале после ввода cat /dev/ttyUSB1. Проверил также c "Serial port api" - в консоле данные идут непрерывно.
Проблема:ни одно приложение не видит спутники. Пробовал либы из перовй темы - нет реакции. Интересная вещь возникает при запуске USBGPS4droid: вначале идет подключение к ttyUSB1 на скорости 9600 (что и нужно для этого свистка, верно?) но через примерно минуту выскакивает сообщение: Connection problm. Will retry 5 more times before closing. Главное - NMEA log файлы которые создаются USBGPS4droid после каждого подключения, пусты.
Как мне заставить теперь приложения принимать данные со свистка? Может кто-нибудь посоветует какой промежуточный тестовый шаг можно произвести? Буду рад любой помощи!

sandr2010 30.03.2017 19:48

На него же есть андроид 4.0.3: http://www.moveo-mid.ru/support/files

Buffononline 30.03.2017 20:13

Спасибо за ответ! Пытаюсь скачать с этого сайта уже несколько дней - файлы не скачиваются. Да и судя по отзывам что я видел в интернете - я не один такой кто прошивку 4 на этот планшет кто не может скачать с этого сайта. Что-то сайт не рабочий. Пытался просто гуглить - на других файлообменниках этой прошивки нет. Так вот и ковыряюсь с 2.3.1...:be:

sandr2010 30.03.2017 20:30

Treelogic Gravis 72G на таком же железе,но с gps - может чем-то поможет.

Glukmedia 31.03.2017 16:41

Добрый день.
Стою перед выбором GPS USB приемника.
Какой на данный момент лучше покупать, что бы было меньше проблем с установкой драйверов и программ.
Система android 4.4 на процессоре Intel Z3736F.
Спасибо.

sandr2010 31.03.2017 18:07

Если hi-8,то есть же вроде бы как встроенный gps. Из тех что пробовал на z3735f(vi-8) : U-blox 7 работал не совсем корректно,на pl2303 - нормально.

Buffononline 01.04.2017 03:28

Небольшой апдейт, может кому будет интересно, у кого-то будут идеи как продвинуться дальше?
-oбновился до Android 4.0.
-ни один из модулей из шапки не идет. В итоге, подключаю свисток из терминала.
-Данные в терминале со свистка есть, те же что и на компьютере (если подключить свисток к компу видит много спутников). В итоге, все что я делаю в терминале построчно выглядит так:
su
echo "1546 01A7" > /sys/bus/usb-serial/drivers/option1/new_id - определяем ublox7
cat /dev/ttyUSB1 -Проверка, есть поток NMEA!
chmod 666 /dev/ttyUSB1 - есть права доступа
Ну и USBGPS4droid видит порт ttyUSB1, но не получает из него данные!!! =( При этом:
android.hardware.location.gps.xml - создан, стоит там где надо, с текстом как надо.
Ребят, что я забываю? В чем может быть причина того что USBGPS4droid не хочет читать данные с ttyUSB1?

Buffononline 01.04.2017 04:38

Вложений: 2
Вот что будет если набрать в терминале cat /dev/ttyUSB1 (прикрепленный файл 1), и соответственно logcat (файл 2) показывает отчет о том как USBGPS4droid пытается считать данные, насколько я понимаю. И если в первом случае все хорошо, во втором случае data:not ready. Может у кого-нибудь есть идеи почему они не готовы и как с этим бороться? Спасибо!

sandr2010 01.04.2017 08:44

У меня u-blox 7 работал на ttyACM0(1). Программка для u-blox: https://play.google.com/store/apps/d....ublox.ucenter . Build.prop правленный?

kostyamat 01.04.2017 17:27

Цитата:

Сообщение от Buffononline (Сообщение 385188)
Вот что будет если набрать в терминале cat /dev/ttyUSB1 (прикрепленный файл 1), и соответственно logcat (файл 2) показывает отчет о том как USBGPS4droid пытается считать данные, насколько я понимаю. И если в первом случае все хорошо, во втором случае data:not ready. Может у кого-нибудь есть идеи почему они не готовы и как с этим бороться? Спасибо!

Вот это в /system/etc/init.d в виде скрипта без расширения добавьте

#!/system/bin/sh
# GPS Switcher
# init.d 00_gps.sh
# dipcore@gmail.com


stop gpsd
stop gpscerd

# Speed
stty -F /dev/ttyACM0 ispeed 9600
# No echo
stty -F /dev/ttyACM0 -echo
# Owner
chown root:system /dev/ttyACM0
# Permissions
chmod 666 /dev/ttyACM0
start gpsd

И будет вам счастье. Само собой в системе должен быть busybox и поддержка init.d.
Если init.d нет, добавьте все это в /etc/install-recovery.sh, если его нет, создайте и присвойте ему права 755.
Пс. Чет у вас порт странный, нормально ttyACM0, но это и от ядра зависит ещё. Короче, если у вас свисток реально сел на ttyUSB1, то в скрипте, что я дал, смените порт на свой.
Ещё одно - если вы cat данные в терминал, то кроме терминала данные уже ничто в системе не увидит.
И вопрос в догонку- это echo "1546 01A7" > /sys/bus/usb-serial/drivers/option1/new_id зачем? Разве в dmesg не появляется устройство ttyACM0 при подключении, само по себе?
dmesg | grep ttyACM*


Часовой пояс GMT +4, время: 17:57.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot