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)

dm66 21.05.2015 22:37

В итоге за 2 дня мучений дошел вот до чего:

посмотрел командой ls /sys/bus/usb/devices/ какое у меня устройство.

долго не мог понять как вычислить какое мне нужно выудить устройство из списка
1-0:1.0
2-0:1-0
2-1
2-1.1
2-1.1:1.0
2-1.2
2-1.2:1.0
2-1.3
2-1.3:1.0
2-1.3:1.1
2-1:1.0
usb1
usb2
в итоге выдернул USB GPS шнурок из хаба и сделал повтор той же команды, в результате увидел, что пропало из списка, воткнул обратно, увидел что появилось! Как то об этом нигде не упоминается....ну да ладно, это видимо для всех очевидно, мне нет.
Далее.... пошёл по пути создания скрипта 01myscript в папке /system/etc/init.d, оговорюсь, что данная папка у меня уже была, там создал только сам скрипт 01myscript:

#!/system/bin/sh
echo -n "2-1.1:1.0" > /sys/bus/usb/drivers/option/unbind
insmod /system/lib/modules/pl2303.ko
sleep 30
chmod 644 /system/lib/modules/pl2303.ko
busybox stty -F /dev/ttyUSB0 4800
busybox chmod 666 /dev/ttyUSB0
setprop ro.kernel.android.gps ttyUSB0

далее, не мог перемонтировать раздел /system в RW, в итоге вычитал в интернете как при помощи Total Commander (а я пользуюсь им) сделать специальную кнопку на панели задач для перемонтирования разделов. Кнопку сделал, раздел /system перевел в RW.
Далее запустил скрипт 01myscript вручную с помощью терминала командой sh /system/etc/init.d/01myscript
команда прошла и всё заработало!
НО после перезагрузки вижу, что скрипт не запускается вообще! более того обратил внимание, что раздел /system стал опять видимо только R вместо RW, при этом в свойствах папки /system вижу права 755, т.е. что R что RW = 755?! При этом кнопка на панели задач тотала четко отображает R. В итоге опять перемонтировал в RW и запустил скрипт вручную, заработало.

Так же для меня пока не ясен вопрос с переводом Unix строк - что это значит???? Я сделал все скрипты с помощью блокнота в Windows, затем всё это скопировал в свой свисток MK802IV. При открытии созданных в Windows файлов скриптов обратил внимание на пробелы в конце каждой строки команд, удалил их.
Ещё момент, у меня в терминале свистка все команды выполняются только если предварительно ввести команду SU, таким образом всё же непонятно, нужно писать SU вначале команд в скриптах или нет?!

Как делал скрипт по инструкции с этого сайта:
1. создал preinstall.sh по пути (его там не было) /system/bin/preinstall.sh. А ВОТ КАКИЕ ЗДЕСЬ Д.Б. ПРАВА - 755?
2. Добавляем в него стоку.
#!/system/bin/sh
exec /system/bin/logwrapper busybox run-parts -a start /system/etc/init.d

3. Папка init.d уже была, поэтому не создавал /system/etc/init.d
сделал ей права 755
chmod 755 /system/etc/init.d

4. Далее по пути /system/etc/init.d создал файл, назвав его 01myscript без расширения!
сделал ему права 755
chmod 755 /system/etc/init.d/01myscript

Что делать со скриптом и как перемонтировать на постоянку ума не приложу.

Как проверить, что система вообще пытается грузить скрипт?

Очень требуется Ваша помощь!

ABCh 22.05.2015 12:05

Цитата:

Сообщение от dm66 (Сообщение 328648)

посмотрел командой ls /sys/bus/usb/devices/ какое у меня устройство.

долго не мог понять как вычислить какое мне нужно выудить устройство из списка
1-0:1.0
2-0:1-0
2-1
2-1.1
2-1.1:1.0
2-1.2
2-1.2:1.0
2-1.3
2-1.3:1.0
2-1.3:1.1
2-1:1.0
usb1
usb2
в итоге выдернул USB GPS шнурок из хаба и сделал повтор той же команды, в результате увидел, что пропало из списка, воткнул обратно, увидел что появилось!

Вам нет особой нужды заморачиваться с этими файлами, один из них является ссылкой на устройство. Эти цифры отражают адресацию на шине USB.
Цитата:

Сообщение от dm66 (Сообщение 328648)

Далее.... пошёл по пути создания скрипта 01myscript в папке /system/etc/init.d, оговорюсь, что данная папка у меня уже была, там создал только сам скрипт 01myscript:

#!/system/bin/sh
echo -n "2-1.1:1.0" > /sys/bus/usb/drivers/option/unbind
insmod /system/lib/modules/pl2303.ko
sleep 30
chmod 644 /system/lib/modules/pl2303.ko
busybox stty -F /dev/ttyUSB0 4800
busybox chmod 666 /dev/ttyUSB0
setprop ro.kernel.android.gps ttyUSB0

Далее запустил скрипт 01myscript вручную с помощью терминала командой sh /system/etc/init.d/01myscript
команда прошла и всё заработало!

К содержимому скрипта замечаний нет, тем более, что при ручном запуске все работает.
Цитата:

Сообщение от dm66 (Сообщение 328648)

НО после перезагрузки вижу, что скрипт не запускается вообще! более того обратил внимание, что раздел /system стал опять видимо только R вместо RW, при этом в свойствах папки /system вижу права 755, т.е. что R что RW = 755?! При этом кнопка на панели задач тотала четко отображает R. В итоге опять перемонтировал в RW и запустил скрипт вручную, заработало.

Права доступа можно посмотреть здесь https://ru.wikipedia.org/wiki/Chmod
Цитата:

Сообщение от dm66 (Сообщение 328648)
Так же для меня пока не ясен вопрос с переводом Unix строк - что это значит???? Я сделал все скрипты с помощью блокнота в Windows, затем всё это скопировал в свой свисток MK802IV. При открытии созданных в Windows файлов скриптов обратил внимание на пробелы в конце каждой строки команд, удалил их.

в Windows строка завершается 2-мя служебными символами "возврат каретки" 0x0A и "перевод строки" 0x0D, в Unix - только "перевод строки". Но присутствие символа 0x0A не мешает работе.

Цитата:

Сообщение от dm66 (Сообщение 328648)
Ещё момент, у меня в терминале свистка все команды выполняются только если предварительно ввести команду SU, таким образом всё же непонятно, нужно писать SU вначале команд в скриптах или нет?!

Еще раз повторю, в скрипте не нужно использовать команду su, поскольку скрипт инициализации исполняется под правами пользователя root, а при работе в терминале эти права нужно сначала получить с помощью этой команды.
Цитата:

Сообщение от dm66 (Сообщение 328648)
Как делал скрипт по инструкции с этого сайта:
1. создал preinstall.sh по пути (его там не было) /system/bin/preinstall.sh. А ВОТ КАКИЕ ЗДЕСЬ Д.Б. ПРАВА - 755?

При загрузке исполняется скрипт init.rc, расположенный в корне файловой системы устройства. Уже из него производятся вызовы все прочих скриптов. На моем устройстве у сервиса, которым вызывается /system/bin/preinstall.sh, установлена опция disabled, и он не исполняется автоматически при загрузке. Возможно, у Вас то же самое. У меня все действия производятся в скрипте /system/etc/install-recovery.sh

Farman 31.05.2015 13:12

u-blox 7m-c с либом из шапки нормально не работает. Скорость и направления не передается до андройда. До этого подключал другой гпс модуль (от navibi) - всё было хорошо. У кого есть либ для ю-блокс?

voodik 31.05.2015 13:30

Цитата:

Сообщение от Farman (Сообщение 329463)
u-blox 7m-c с либом из шапки нормально не работает. Скорость и направления не передается до андройда. До этого подключал другой гпс модуль (от navibi) - всё было хорошо. У кого есть либ для ю-блокс?

Можете эту попробовать ? Мне интересно с чем работает с чем нет.
http://pccar.ru/showpost.php?p=328033&postcount=696

Farman 31.05.2015 18:33

Проверил ваш либ, не поднимается. У меня Radxa Rock Pro rk3188. Можно собрать для rockchip?

oledv 31.05.2015 21:40

Цитата:

Сообщение от Farman (Сообщение 329496)
Проверил ваш либ, не поднимается. У меня Radxa Rock Pro rk3188. Можно собрать для rockchip?

Все прекрасно работает http://www.pccar.ru/showpost.php?p=312523&postcount=622

Farman 31.05.2015 23:21

Я по этому инструкции подключил свой старый gps.

С u-blox понял в чем дело. По дефолту u-blox передаёт данные ГПС каждый секунд. Почему то при секундом задержки скорость до андройд не доходят. Если снизить скорость до 500мс, скорость появляется. Я так понимаю - в либе есть максимальный таймаут для переменного скоростя который жизненный цикл меньше чем 1 секунд. Подправите если не прав.

DaveMF 02.06.2015 00:01

Цитата:

Сообщение от oledv (Сообщение 329509)
Все прекрасно работает http://www.pccar.ru/showpost.php?p=312523&postcount=622

Библиотека из шапки не дружит с ублоксами, не показывает в навителе скорость и направление, только точку. Поэтому еще и карта не вращается...

Farman 02.06.2015 00:25

Вот вот. А в чем причина? Скорость показывает если снизить рефреш рейт на ниже 600мс. Но одно большое НО - позиция и скорость сильно отстаёт от реальности, где то на секунд 8-10

licki 02.06.2015 00:34

А ещё либу из шапки не удалось запустить на чипе RK3288 (стик MK903V с ядром 3.10.0). Через костыли с mock location координаты ест, но естественно без спутников.


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

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