15.06.2013, 19:33 | #1 |
Старший Пользователь
Регистрация: 17.01.2009
Возраст: 49
Город: Москва
Регион: 77, 97, 99, 177
Машина: Audi A5 3.2FSI Q, Porsche 996 Turbo
Сообщений: 669
|
Pl2303drv - замена pl2303.ko !
В недрах 4PDA нарыл программку, которая называется pl2303drv. Вкратце суть: выполняет ту же функцию что небезызвестный модуль pl2303.ko, но, соответственно, не является модулем, а посему, не несёт таких громадных неудобств по совместимости как pl2303.ko, который надо иметь скомпилированным под конкретную версию ядра.
Как программа может заменять драйвер? Ну вот так, может. Вот такой он, Linux. В том виде как программа была выложена, у меня она не работала. Выдавала ошибки, а та версия, что я всё же смог запустить, поддерживала только 9600, что мне не подходило. В итоге, я взял исходники, которые автор любезно опубликовал, убрал из программы лишнее, исправил ошибки (в частности, убрал вызовы system(), которые у меня работали некорректно) и дописал некоторые функции. Например, теперь можно указывать желаемое имя порта tty, а также скорость соединения. Usage: pl2303drv [имя порта] [скорость] Указывать только стандартные скорости! Пример: pl2303drv /dev/ttyUSB0 19200 Поддерживается именно PL2303, причём device ID должен быть стандартным для PL2303, т.е. 2303:067b. В принципе, у них у всех он одинаковый. Если в вашем конвертере помимо PL2303 установлена 8-контактная микросхема flash, скорее всего, в неё и зашит другой ID. Отключите её (5 и 6 ножки) и всё будет хорошо. Заодно те, у кого происходит постоянная борьба между GPS и модемом за имя порта, смогут навсегда решить свою проблему: вы можете указать порту любое имя какое вам вздумается. Кабель можно втыкать наживую, а затем запускать программу - ей всё равно. Лишь бы девайс присутствовал на момент запуска. Поскольку программа сама не умеет завершаться, она не удаляет при прерывании созданные порты. Поэтому при каждом запуске она будет их удалять. Программа ведёт лог, в который пишет поток входящих данных. Проверить работу программы можно как обычно командой cat /dev/ttyUSB0 У меня работает отлично. По идее, должна работать на любом девайсе с архитектурой ARM-v7, а это большинство современных девайсов. Исходник также прилагается, я его компилировал под Linux при помощи кросс-компилятора Sourcery G++, но у него есть и Windows версия, думаю, под виндой тоже при желании скомпилировать можно. Топик автора программы: http://4pda.ru/forum/index.php?showtopic=375823&st=40 Я несколько раз обращался к автору, но ответа не получил. Ссылка на скачку программы - в 4-м посте. Последний раз редактировалось AngelOfGrief; 16.06.2013 в 02:36. |
16.06.2013, 00:54 | #2 |
Гуру
Регистрация: 20.07.2009
Город: Минск
Регион: Беларусь
Сообщений: 1,543
|
я не очень понял, она же должна висеть в памяти постоянно.
Но это же не демон? Или демон? Убивает ли ее Андроид через некоторое время?
__________________
Мой проект: Citroen Xsara Android CarPC |
16.06.2013, 01:57 | #3 | |
Старший Пользователь
Регистрация: 17.01.2009
Возраст: 49
Город: Москва
Регион: 77, 97, 99, 177
Машина: Audi A5 3.2FSI Q, Porsche 996 Turbo
Сообщений: 669
|
Цитата:
На это тоже есть решение, кто-то писал уже. Нужно поместить прогу в notification area. Для этого есть софтина, название не помню. Я в любом случае буду работать в направлении компиляции модуля .ko, просто это сложнее намного... |
|
16.06.2013, 02:23 | #4 |
Старший Пользователь
Регистрация: 17.01.2009
Возраст: 49
Город: Москва
Регион: 77, 97, 99, 177
Машина: Audi A5 3.2FSI Q, Porsche 996 Turbo
Сообщений: 669
|
Версия без ведения лога, без вывода на экран статистики. Для улучшения быстродействия. Ещё внутри программы добавлены команды chmod, теперь устанавливать права на /dev/ttyUSB0 в .sh файле не нужно.
|
17.06.2013, 17:00 | #5 |
Старший Пользователь
Регистрация: 17.01.2009
Возраст: 49
Город: Москва
Регион: 77, 97, 99, 177
Машина: Audi A5 3.2FSI Q, Porsche 996 Turbo
Сообщений: 669
|
По поводу убивания программы андроидом: она провисела в течение 2 суток непрерывно вместе с GPSTest: всё работает. Сейчас попробовал запустить Antutu Test (к-й по идее достаточно много жрёт ресурсов), после его запуска всё продолжает работать. В течение этих 2 дней запускал разные программы, навигацию, плееры, Angry Birds итд итп.
Возможно, причина в том, что созданный виртуальный порт /dev/ttyUSB0 открыт системным процессом (GPS либой). Хотя, не знаю. )) |
13.09.2013, 14:12 | #6 |
Новый Пользователь
Регистрация: 13.09.2013
Город: MCK
Регион: 77, 97, 99, 177
Машина: GMT 900
Сообщений: 16
|
У меня вот что пишет. на любой скорости. и данные не идут в навител (((
со старой версией на 9600 которая все гуд, только скорость 9600 не устраивает. root@android:/data/test/1 # ./pl2303drv /dev/ttyUSB0 4800 PL2303drv by vovan.v.rum, mod by Ao'Gf -------------------------------------- Searching for device VID_067b&PID_2303 Found PL2303 device VID_067b&PID2303 (Index=0) Baudrate requested: 4800 Creating virtual tty. Virtual port: /dev/pts/5 System: unlink /dev/ttyUSB0 System: symlink(/dev/pts/5,/dev/ttyUSB0) PL2303 serial installed on /dev/ttyUSB0. Type `cat /dev/ttyUSB0` in another shel l window to test. System: chmod 0666 /dev/pts/5 System: chmod 0666 /dev/ttyUSB0 CTL=0 : CTL=0 : CTL=7 : CTL=7 : CTL=0 :CTL=7 :CTL=0 :BLK=-1 : RD=0xc0 : INT=-1 : RD=0xc0 :CTL=0 :INT=-1 :RD=0xc0 : err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 err_num - 1 ^C 130|root@android:/data/test/1 # |
13.09.2013, 14:16 | #7 |
Новый Пользователь
Регистрация: 13.09.2013
Город: MCK
Регион: 77, 97, 99, 177
Машина: GMT 900
Сообщений: 16
|
хотя данные идут
130|root@android:/data/test/1 # cat /dev/ttyUSB0 $GPRMC,091552.742,V,,,,,,,130913,,,N*4F $GPGGA,091553.742,,,,,0,00,,,M,0.0,M,,0000*5C $GPGLL,,,,,091553.742,V,N*70 $GPGSA,A,1,,,,,,,,,,,,,,,*1E $GPRMC,091553.742,V,,,,,,,130913,,,N*4E $GPGGA,091554.742,,,,,0,00,,,M,0.0,M,,0000*5B $GPGLL,,,,,091554.742,V,N*77 $GPGSA,A,1,,,,,,,,,,,,,,,*1E $GPRMC,091554.742,V,,,,,,,130913,,,N*49 $GPGGA,091555.742,,,,,0,00,,,M,0.0,M,,0000*5A $GPGLL,,,,,091555.742,V,N*76 $GPGSA,A,1,,,,,,,,,,,,,,,*1E $GPRMC,091555.742,V,,,,,,,130913,,,N*48 $GPGGA,091556.742,,,,,0,00,,,M,0.0,M,,0000*59 $GPGLL,,,,,091556.742,V,N*75 $GPGSA,A,1,,,,,,,,,,,,,,,*1E $GPRMC,091556.742,V,,,,,,,130913,,,N*4B $GPGGA,091557.742,,,,,0,00,,,M,0.0,M,,0000*58 $GPGLL,,,,,091557.742,V,N*74 $GPGSA,A,1,,,,,,,,,,,,,,,*1E ^C 130|root@android:/data/test/1 # |
13.09.2013, 14:30 | #8 |
Старший Пользователь
Регистрация: 17.01.2009
Возраст: 49
Город: Москва
Регион: 77, 97, 99, 177
Машина: Audi A5 3.2FSI Q, Porsche 996 Turbo
Сообщений: 669
|
Ну если идут, наверное в чём-то другом проблема... А что вы используете в кач-ве драйвера GPS ?
|
13.09.2013, 14:38 | #9 |
Новый Пользователь
Регистрация: 13.09.2013
Город: MCK
Регион: 77, 97, 99, 177
Машина: GMT 900
Сообщений: 16
|
|
13.09.2013, 15:04 | #10 |
Новый Пользователь
Регистрация: 13.09.2013
Город: MCK
Регион: 77, 97, 99, 177
Машина: GMT 900
Сообщений: 16
|
http://SSMaker.ru/86578a64/
что то с моим приемником случилось ((( данные принимает, но координату даже в винде не вычисляет. и лампочка красная на нем раньше моргала, а теперь просто горит. что это может быть? приемник BU-353s4 USB |
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2) | |
|
|