PDA

Просмотр полной версии : Ауди коннект и Google с 3GP без симки с Raspberry



knfevg
27.03.2015, 20:53
Всем привет. Видел в продаже коробочки которые работают на Raspberry для подключения с Ауди Коннект через WLAN а не через АМИ. Есть несколько свободных Raspberry и думал сделать это сам. Вообщем идея понятна:
1. На Распберы ставим систему и конфигурируем ее как раутер NAT и конектим к точке доступа в MMI
2. в MMI прописываем default route на Распберри
3. в зеленом меню активируем все фишки.

Если кто-то это все делал и может поделится деталями (может даже скриптами) буду признателен.

knfevg
04.04.2015, 02:52
Все!!! Сделал!!! Решаю последние моменты но уже все работает!

jalib
04.04.2015, 04:49
Интересно, подробностями поделитесь?

knfevg
04.04.2015, 22:49
Можно, но как только все доделаю. Все уже работает но я сделал небольшую ошибку и сейчас голова умерла. Как только верну ее и доделаю то сразу все опишу.

Lef
25.04.2015, 20:55
Как успехи?

knfevg
26.04.2015, 13:20
Принципиально все работает. Есть две проблемы:
1. Не работает Google Earth (то есть пробки показывает но не показывает спутниковые картинки)
2. Пока каждый раз надо запускать скрипт с карточки при включение.

Решение обеих проблем одинаковая: записать две строчки для автозпауска при включение MMI но я пока не знаю в какой файл записывать эти строки.

VitaminA
29.04.2015, 17:43
А в зеленке Google врублены? Ща уже не помню, был у меня блок без сим, тоже не показывали, потом че то сделал в зеленке, появились...
Значок Google в правом углу включается вроде так: зеленка/diagnose/settings/tel_settings ставим галку напротив NAD activation

knfevg
29.04.2015, 19:40
значок есть, в зеленке вроде все включил. В карте выбираю Google Earth, он начинает грузиться а потом выдает "Not enought data in memory". в другом форуме читал что google earth может не работать если при его загрузки (то есть при включение головы) нет инета, а у меня его при запуске нет так-как скрипт подгружаю с карты после загрузки. Вот надо научится его грузить автоматом (допустим через startdumper.sh но я его один раз уже сломал и пришлось голову менять по гарантии. теперь боюсь)....

VitaminA
02.05.2015, 10:53
Ну да, когда нет инета по-моему именно такая фраза от Google была... Странно конечно, то есть даже когда есть интернет, но который подключен чуть позже уже не дает загрузке Google.

knfevg
02.05.2015, 19:42
Да, именно так. Правда я вообще не очень понимаю зачем нужен GEMMI.... Мне главное чтоб пробки были.

unbe
17.05.2015, 13:19
Если работает online, но не работает gemmi, то скорее всего неправильно выставлен resolver.

knfevg
17.05.2015, 13:34
setconf _CS_RESOLVE "nameserver_8.8.8.8"

unbe
17.05.2015, 14:54
GEMMI нужен \n в конце строки.

knfevg
17.05.2015, 15:08
То-есть команда ?
setconf _CS_RESOLVE "nameserver_8.8.8.8\n"

Кстати, Unbe, скажи пожалуйста еще две вещи:
1. где находится pf.conf который надо менять чтобы открыть 23 порт? У меня в /etc его нет....есть в /mnt/ifs-root/etc/ но там все закоментированно
2. какие wlan и 3G свистки ты используешь? Те что у меня не работают без USB HUB а это очень не удобно!

unbe
17.05.2015, 15:18
Да, команда такая.

1. Не помню, надо идти с ноутбуком к машине и смотреть. Посмотрю при случае.
2. WLAN - D-Link DWA-121. 3G свисток не использую, а подключаю по bluetooth (ASUS USB-BT400) к телефону.

knfevg
17.05.2015, 15:24
Буду признателен если при случае посмотришь где он там спрятался :)
То-есть у тебя схема что на телефоне всегда включен BT teather mode, ты сел в машину и RPI подключился к телефону по БТ? Тоже кстати вариант...
Оба свистка (wlan, bt) работают напрямую в RPI?

unbe
17.05.2015, 16:45
Да, да. :)

unbe
18.05.2015, 11:16
# grep 'port 23' /mnt/efs-system/pss/nws/usr/bin/pf.conf
pass in quick on uap0 proto tcp from any to any port 23 keep state

knfevg
27.05.2015, 12:51
Ура! Все работает! Спасбо unbe!
Следующая часть проекта:
1. Сделать чтоб это все работало НЕ через Raspberry а просто через телефон Андроид (rooted).
2. Это конечно совсем фантастика, но если есть инет на голове и есть более-менее функциональный QNX может получется запустить Google Maps......

Audi_fan
21.06.2015, 09:49
Можете выложить отчет о том как у Вас всё получилось? Пожалуйста

knfevg
21.06.2015, 17:24
Честно говоря отчет написать довольно сложно. Для подключения таким методом желательно иметь нормальный опыт с LINUX и понимание как работает сеть.
Вообщем процес такой:
1. Настроить RPI (ну или любой другой раутер) чтобы работал с 3Г свистком (лучше 3Г так-как 4Г часто требует мощности больше чем RPI может давать). Я использовал скрипт UMTSKEEPER и SAKASIS3G
2. Настроить WiFi адаптер чтобы автоматически подключался к WLAN Audi и использовал статический IP (например 192.168.1.254)
3. Настроить IPtables на NAT
4. в ММИ делаем все как для обычного решения с проводом.
5. Для работы по WIFI необходимо чтобы в голове был прописан route и _CS_RESOLVE. Для этого есть либо вариант запускать скрпит с карточки каждый раз после включения (делаем обычный скрипт run.sh) либо менять пароль root в shadow, убирать блокировку 22 порта для telnet, и expectom с RPI запускать эти две команды. Те кто умеет пользоваться linuxом и понимают идею того что мы делаем - догадаться как это все сделать. Для остальных я бы не рекомендовал пытаться это сделать самим.

Audi_fan
21.06.2015, 18:12
Честно говоря отчет написать довольно сложно. Для подключения таким методом желательно иметь нормальный опыт с LINUX и понимание как работает сеть.
Вообщем процес такой:
1. Настроить RPI (ну или любой другой раутер) чтобы работал с 3Г свистком (лучше 3Г так-как 4Г часто требует мощности больше чем RPI может давать). Я использовал скрипт UMTSKEEPER и SAKASIS3G
2. Настроить WiFi адаптер чтобы автоматически подключался к WLAN Audi и использовал статический IP (например 192.168.1.254)
3. Настроить IPtables на NAT
4. в ММИ делаем все как для обычного решения с проводом.
5. Для работы по WIFI необходимо чтобы в голове был прописан route и _CS_RESOLVE. Для этого есть либо вариант запускать скрпит с карточки каждый раз после включения (делаем обычный скрипт run.sh) либо менять пароль root в shadow, убирать блокировку 22 порта для telnet, и expectom с RPI запускать эти две команды. Те кто умеет пользоваться linuxом и понимают идею того что мы делаем - догадаться как это все сделать. Для остальных я бы не рекомендовал пытаться это сделать самим.


По 5 пункту можете скриптом поделиться? Ну либо в л.с. Ссылку дать

knfevg
21.06.2015, 18:34
Берешь run.sh от Sergeynik и добавляешь что то типа
route add default 192.168.1.254
echo "nameserver 8.8.8.8" > /mnt/efs-system/etc/resolv.conf
setconf _CS_RESOLVE "nameserver_8.8.8.8\n"

Audi_fan
22.06.2015, 12:07
Берешь run.sh от Sergeynik и добавляешь что то типа
route add default 192.168.1.254
echo "nameserver 8.8.8.8" > /mnt/efs-system/etc/resolv.conf
setconf _CS_RESOLVE "nameserver_8.8.8.8\n"

Вы можете выложить или отправить мне готовый скрипт? я уже и распберри настроил и проводное решение убрал.... уверен, многим именно рабочего скрипта и не хватает

knfevg
22.06.2015, 12:15
#!/bin/ksh
# Определяем название SD-карточки
sdcard=`ls /mnt|grep sdcard.*t`


# Полный путь к SD-карте
SDPath=/mnt/$sdcard


# Получаем полный доступ к SD-карте
mount -u $SDPath


# Вывод картинки старта скрипта
$SDPath/utils/showScreen $SDPath/screens/scriptStart.png


# Удаляем файл .done (если вдруг остался на карточке с прошлого раза)
rm -f $SDPath/.done


# Создаем файл .started (флаг, что скрипт запущен)
echo started > $SDPath/.started


# Получаем полный доступ к EFS
mount -uw /mnt/efs-system

# Добавляем DNS в ресолвер (можно запустить один раз и удалить из скрипта, так-как эта установка запоминается)
echo "nameserver 8.8.8.8" > /mnt/efs-system/etc/resolv.conf

# Установка default route (поменять IP на тот который вы дали RPI)
route add default 192.168.1.254

# Установка системной переменной для DNS (надо делать каждый раз)
setconf _CS_RESOLVE "nameserver_8.8.8.8
nameserver_8.8.4.4"

# Проверка что работает интернет (после того как все работает, можно убрать)
ping -c 5 8.8.8.8 > $SDPath/.ping_ip

# Проверка DNS (после того как все работает, можно убрать)
ping -c 5 google.com > $SDPath/.ping_name


# Вывод картинки окончания работы скрипта
$SDPath/utils/showScreen $SDPath/screens/scriptDone.png


# Создаем файл .done (флаг, что скрипт отработал)
echo done > $SDPath/.done


# Удаляем файл .started (скрипт отработал до конца)
rm -f $SDPath/.started

knfevg
22.06.2015, 12:15
Но честно говоря, если вы не можете это написать сами то я бы не лез в это дело (скорей всего не заработает и надо будет отлаживать). Тем более что с работай в WiFi есть сложности (например то что RPI не моментально подключается к WLAN AUDI и у в ММИ нет инета несколько минут, соответственно и маршрут с пробками проложить не можете)

Audi_fan
22.06.2015, 12:19
Но честно говоря, если вы не можете это написать сами то я бы не лез в это дело (скорей всего не заработает и надо будет отлаживать). Тем более что с работай в WiFi есть сложности (например то что RPI не моментально подключается к WLAN AUDI и у в ММИ нет инета несколько минут, соответственно и маршрут с пробками проложить не можете)

а какой свисток вы воткнули в распберри? я взял Билайн, связь отвратительная. то поймает инет, то вообще ничего не ловит....

knfevg
22.06.2015, 13:11
4g? скорей всего не хватает мощности (RPI выдает меньше 0.5 А). Попробуйте с активным USB хабом. У меня Huawei e1550 вроде (не уверен). и в RPI кроме свистка и WiFi больше ничего не воткнуто в USB

Audi_fan
22.06.2015, 13:58
4g? скорей всего не хватает мощности (RPI выдает меньше 0.5 А). Попробуйте с активным USB хабом. У меня Huawei e1550 вроде (не уверен). и в RPI кроме свистка и WiFi больше ничего не воткнуто в USBвот

в том то и дело, что всего навсего 3g... в RPI кроме свистка и wifi tp-link ничего не воткнуто...
http://ahaba.ru/userimages/114938-800-600.jpg - что-то типа такого

как активный хаб запитать от 12? если они почти все идут от 220

Audi_fan
22.06.2015, 20:18
#!/bin/ksh
# Определяем название SD-карточки
sdcard=`ls /mnt|grep sdcard.*t`


# Полный путь к SD-карте
SDPath=/mnt/$sdcard


# Получаем полный доступ к SD-карте
mount -u $SDPath


# Вывод картинки старта скрипта
$SDPath/utils/showScreen $SDPath/screens/scriptStart.png


# Удаляем файл .done (если вдруг остался на карточке с прошлого раза)
rm -f $SDPath/.done


# Создаем файл .started (флаг, что скрипт запущен)
echo started > $SDPath/.started


# Получаем полный доступ к EFS
mount -uw /mnt/efs-system

# Добавляем DNS в ресолвер (можно запустить один раз и удалить из скрипта, так-как эта установка запоминается)
echo "nameserver 8.8.8.8" > /mnt/efs-system/etc/resolv.conf

# Установка default route (поменять IP на тот который вы дали RPI)
route add default 192.168.1.254

# Установка системной переменной для DNS (надо делать каждый раз)
setconf _CS_RESOLVE "nameserver_8.8.8.8
nameserver_8.8.4.4"

# Проверка что работает интернет (после того как все работает, можно убрать)
ping -c 5 8.8.8.8 > $SDPath/.ping_ip

# Проверка DNS (после того как все работает, можно убрать)
ping -c 5 google.com > $SDPath/.ping_name


# Вывод картинки окончания работы скрипта
$SDPath/utils/showScreen $SDPath/screens/scriptDone.png


# Создаем файл .done (флаг, что скрипт отработал)
echo done > $SDPath/.done


# Удаляем файл .started (скрипт отработал до конца)
rm -f $SDPath/.started

# grep 'port 23' /mnt/efs-system/pss/nws/usr/bin/pf.conf
pass in quick on uap0 proto tcp from any to any port 23 keep state

вот эту команду куда?

knfevg
23.06.2015, 01:16
эту команду никуда. Этой командой UNBE показывал мне где находится файл pf.conf и как он разблокирует порт 23. Это нужно если идти путем не скрипта а expect-а. Еще раз повторюсь что не рекомендую лезть в это дело если у вас нет полного понимания того что делаеться

knfevg
09.01.2016, 12:09
Давно ничего не писал тут. Raspberry по wifi работает на ура! кроме онлайна появилась возможности поставить переходник с HDMI на композит и подключить к АМИ и смотреть видео с youtube и т.д. Eсли постараться то можно будет и яндекс навигатор также использовать :)))
Но есть вариант по интересней! Скоро закончу делать программу на андроид которая заменит RPI и все будет работать через телефон. А если поставить гоогле хромкаст то экран андроида можно будет выводить на мми !!! Как только будет - напишу. Пока - если есть вопросы как сделать wifi пишите - все расскажу

VitaminA
09.01.2016, 23:25
Супир! Молодец! Давай подробный отчёт здесь и на АК!
Тема актуальна, не только тем у кого безсимочный блок, но и "симочным", поскольку данное подключение позволяет заводить быстрый инет в голову, а не ограничиваясь, потихоньку умирающим 3G!

zerbino
10.01.2016, 00:20
Красавец и молоток)

Artyom0101
10.01.2016, 10:34
Простите, а зачем такое преодоление ? Просто ради фана ?
Можно же все гораздо проще сделать.
Например в моем случае голова MU9411 + маршрутизатор TP-Link 3040 (Будет работать и с 3020) перешитый на прошивку Of Modems and Man (клон OpenWRT) + 4Г Свисток от Huawei прекрасно работают по WIFI. Бюджет подключения около 2000 руб.
Скрипты для этой конфигурации давно по интернету ходят, вместе с инструкцией пошаговой ...

knfevg
10.01.2016, 18:37
Простите, а зачем такое преодоление ? Просто ради фана ?
Можно же все гораздо проще сделать.
Например в моем случае голова MU9411 + маршрутизатор TP-Link 3040 (Будет работать и с 3020) перешитый на прошивку Of Modems and Man (клон OpenWRT) + 4Г Свисток от Huawei прекрасно работают по WIFI. Бюджет подключения около 2000 руб.
Скрипты для этой конфигурации давно по интернету ходят, вместе с инструкцией пошаговой ...
Думаю примерно тоже самое что с raspberry только RPI универсальней (его можно подключить через HDMI к ММИ и смотреть youtube, игры ребенку, яндекс навигатор, и т.д.
Но по поводу вашего решения, мне было бы интересно узнать как там делается автоматичесое определение route. ТП-ЛИНК умеет делать telnet в ММИ или как?

Artyom0101
10.01.2016, 18:46
Проще,
поднимается DHCP сервер на ТП-Линке а на ММИ для интерфейса UAP0 дергается dhcp.client который получает ИП адрес с ТП-Линка, назначает его алиасом на UAP0 (как сайдэффект) ну и основное - получает адреса DNS серверов и default gateway.

knfevg
10.01.2016, 18:51
Красиво! А можно узнать как это сделано на ММИ? У меня ну ни как не получилось изменить настройки UaP0 (правда я наоборот, пытался DHCP server на мми заставить сообщать gateway на RPI, чтобы все клиенты ММИ могли юзать инет)

Artyom0101
10.01.2016, 18:54
Красиво! А можно узнать как это сделано на ММИ? У меня ну ни как не получилось изменить настройки UaP0 (правда я наоборот, пытался DHCP server на мми заставить сообщать gateway на RPI, чтобы все клиенты ММИ могли юзать инет)


ну а что тебе мешает скриптом default gateway ставить, каждый раз при старте мми ? внутренняя сетка-то одна всегда.

knfevg
10.01.2016, 19:07
скриптом мешает то что я один раз пытался его поставить в startDumper и убил этим голову. Решил больше не ставить авто-скриптов :) команда для dhcp.client понятна. А куда ты ее ставишь, чтобы автоматом запускалась?

Artyom0101
10.01.2016, 19:39
в скрипт, который стартует при старте ММИ

igorbelii
13.01.2016, 23:50
Доброго всем!
Ппытался найти описание такой пошаговой настройки организации инета в MMI только через WIFI (скрипты, настройки маршрутизатора mr3040, одинаков с 3020). Ткните пожалуйста где есть описание? и будет ли работать с WT3020F?
PS но если RPI позволит через hdmi картинку на экран выводить, то можно и на него перейти:)

@Artyom0101 а в настройках маршрутизатора есть как настроить, чтобы инет шел не из модема а с телефона по проводу (Iphone/Android)?

djdeniska
14.01.2016, 01:43
скриптом мешает то что я один раз пытался его поставить в startDumper и убил этим голову. Решил больше не ставить авто-скриптов :) команда для dhcp.client понятна. А куда ты ее ставишь, чтобы автоматом запускалась?

Вот тут на первой странице приаттачены несколько скриптов
http://forums.audipassion.com/topic/176913-tuto-online-services-audi-connect-google-earth-trafic-online-en-wifi/

Наиболее интересным может быть MMI-3GP-GE-WIFI.zip

Важно обратить там внимание (см. папку newfiles) на mmelauncher.cfg (чтобы было внутри mme_exe = /sbin/mme-becker.sh)
и на сам /sbin/mme-becker.sh

Artyom0101
14.01.2016, 08:45
@Artyom0101 а в настройках маршрутизатора есть как настроить, чтобы инет шел не из модема а с телефона по проводу (Iphone/Android)?

Как настроить есть, вот только драйверов под ios нет. Про андроид не в курсе.

energizer91
14.01.2016, 10:49
если я не ошибаюсь, то ios в режиме модема по проводу представляется сетевой картой и совместим практически со всеми устройствами. может рыть в сторону драйверов сетевых карт?

LBV
10.03.2016, 11:51
Доброго всем!
Ппытался найти описание такой пошаговой настройки организации инета в MMI только через WIFI (скрипты, настройки маршрутизатора mr3040, одинаков с 3020). Ткните пожалуйста где есть описание? и будет ли работать с WT3020F?
PS но если RPI позволит через hdmi картинку на экран выводить, то можно и на него перейти:)

@Artyom0101 а в настройках маршрутизатора есть как настроить, чтобы инет шел не из модема а с телефона по проводу (Iphone/Android)?

Мануал для настройки. (https://www.dropbox.com/s/y4v2pmfhfo353dx/MMI-3GP-odiconnect-v1.0.pdf?dl=0) С тырнетами, онлайн пробками и GEMMI. При наличии такого фэншуя вывод на экран, на мой взгляд, теряет свою целесообразность. Кто бы еще помог адаптировать скрипты используемые там под RNS850.

А вот еще мануал (http://www.club-q5.ru/forum/showthread.php?t=4572), но там по проводу.