Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Почему про PPP "лучше забыть вообще"?
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
AlexFTF
Добрый день!

Просматривая тему "SIM900 Подключение к GPRS", один из участников сказал следующее
Цитата
относится к PPP и про него лучше забыть вообще
, другой из участников привел аргументы в пользу PPP
Цитата
Я НЕ согласен с вами. Я решил наоборот - забить на встроенные стеки и научился-таки за пару месяцев поднимать PPP и TCP на мк (из lwIP) и использую теперь самые дешевые модемы без TCP, могу переползать с одного производителя на другого абсолютно безболезненно и быстро (вообще не нужно переписывать софт, не нужно изучать ат команды и вообще что то изучать заново не нужно), мне плевать на прошивки модемов - на что многие жалуются, и т д и т д.
, но аргументов, почему от использования PPP следует отказаться (кроме того что реализация внешних стеков TCP\IP и PPP, требует значительных аппаратных ресурсов) я так и не увидел.

Хотел бы узнать у сообщества, почему про PPP "лучше забыть вообще"...
AlexandrY
Цитата(AlexFTF @ Jul 25 2017, 12:57) *
Добрый день!
один из участников сказал следующее , другой из участников привел аргумент...

Они просто не знают что такое PPP или имеют его примитивные реализации.
PPP используется в VPN и никто от него отказываться не собирается.
Правда в былые времена в Win XP был встроенный PPP сервер. И можно было просто подключившись к RS232 компьютера включить автоматом броузер с WEB страницей дивайса.
Нынче такую фичу с PPP убрали из Windows. Но есть RNDIS и можно подключившись по USB автоматом открыть WEB страницу дивайса.
Хотя будущее за BLE 5.0 с профилем TCP, так что любители малинок и ардуин могут себе позволить забыть про PPP.
alex2103
Использую PPP из LWIP. Мне кажется удобно не привязываться к строенному стеку.
Сергей Борщ
Пример для SIM800 кто-нибудь может показать в качестве отправной точки? У меня есть устройство с эзернетом и lwIP, заказчик хочет сделать резервный канал на SIM800. Полагаю, поднять ppp будет гораздо проще, чем дублировать весь код обмена с использованием внутреннего стека модема. Точнее, какие-то примеры я в интернете бегло находил, но они начинаются с
CODE
поднимем_на_модеме_ppp_at_командами();  // это вам надо написать самостоятельно
Эдди
pppoe? Есть такое, правда, уже так часто, как в эпоху модемов, не используется.

И да, понятное дело, этой штуке нужен внешний сервак с хотя бы серым айпишником. А при таких делах проще без ppp наладить обычную связь tcp/ip.
krux
все USB-свистки 3G/4G имеют интерфейс подключения к ПК - COM over USB.
а затем поверх этого COM комп поднимает PPP-сессию с провайдером, где фигурируют APN, login и password.
просто потому, что так задумано и поддерживается microsoft и её виндой.

ну а различные модули, в том числе выпускаемые SimCom, следуют маркетингу, и не смеют выбиваться из этого общего генерального направления.
AlexandrY
Цитата(krux @ Jul 25 2017, 20:40) *
все USB-свистки 3G/4G имеют интерфейс подключения к ПК - COM over USB.

Прям все!?
Может все-таки CDC-ECM?
Там не нужен никакой PPP.


krux
Цитата(AlexandrY @ Jul 25 2017, 21:28) *
Прям все!?
Может все-таки CDC-ECM?
Там не нужен никакой PPP.

ну удивите меня.
назовите пять наиболее популярных USB-свистков, в которых в качестве основного транспорта используется ваш Ethernet-over-USB aka CDC-ECM?
AlexandrY
Цитата(krux @ Jul 25 2017, 21:38) *
ну удивите меня.
назовите пять наиболее популярных USB-свистков, в которых в качестве основного транспорта используется ваш Ethernet-over-USB aka CDC-ECM?

Свистки сами по себе уже пережиток.
Так что в историю я углублятся не буду.
Ну вот пару лет назад у меня был AX326. Так вот он обычный network adapter в системе. Никаких PPP не было.
Эдди
Плюсую. Есть у меня "свисток" от билайна, поддерживающий 4G. В системе он — как обычная USB'шная сетевуха. И никаких ppp не надо, я уж забыл, когда последний раз надо было на "свистке" в бубен бить и ppp поднимать. Сейчас они вполне себе хорошо работают, главное — если ядро самосборное, не забыть всяких разных модулей понакомпилять для них. Иначе придется, как мне в аэропорту, ядро пересобирать, чтобы интернет получить (да-да, уже года 3-4 назад в московских аэропортах "бесплатный" wifi практически не работал, сейчас ситуация еще хуже).
AlexFTF
Цитата(Сергей Борщ @ Jul 25 2017, 22:04) *
Пример для SIM800 кто-нибудь может показать в качестве отправной точки? У меня есть устройство с эзернетом и lwIP, заказчик хочет сделать резервный канал на SIM800. Полагаю, поднять ppp будет гораздо проще, чем дублировать весь код обмена с использованием внутреннего стека модема. Точнее, какие-то примеры я в интернете бегло находил, но они начинаются с
Код
поднимем_на_модеме_ppp_at_командами();  // это вам надо написать самостоятельно


Статью "STM32 + PPP (GSM) + LwIP" смотрели?
Эдди
Цитата(AlexFTF @ Jul 26 2017, 05:37) *
Статью "STM32 + PPP (GSM) + LwIP" смотрели?

В который раз убеждаюсь, что ничего приличного на БХ не выкладывают! Какой же автор наHAL!
Сергей Борщ
QUOTE (AlexFTF @ Jul 26 2017, 05:37) *
Статью "STM32 + PPP (GSM) + LwIP" смотрели?
Нет, не смотрел. Спасибо.
AlexFTF
Цитата(Эдди @ Jul 26 2017, 12:45) *
В который раз убеждаюсь, что ничего приличного на БХ не выкладывают! Какой же автор наHAL!


Почему применение библиотеки HAL вызывает негатив?
Сергей Борщ
QUOTE (AlexFTF @ Jul 26 2017, 09:15) *
Почему применение библиотеки HAL вызывает негатив?
Видимо, больше придраться не к чему.
Rash
А как в случае PPP обрабатывать входящие/исходящие звонки и смс?
AlexFTF
Цитата(Rash @ Jul 26 2017, 13:44) *
А как в случае PPP обрабатывать входящие/исходящие звонки и смс?


Видимо использовать сигнал RI для определения есть ли входящие звонки и смс, если есть, то переход в командный режим (+++), обработка звонков и смс и обратный переход в data режим (ATO)?
alex2103
Цитата(Rash @ Jul 26 2017, 09:44) *
А как в случае PPP обрабатывать входящие/исходящие звонки и смс?

Поднимаете CMUX. По одному каналу гоняете PPP, по другому всякие смс, звонки и т.п. При этом максимально используете стандартные АТ команды, которые поддерживают все производители.
Вот буквально недавно поменял в устройстве телит на симком и все работает как и работало.
Цырен.
Цитата(Rash @ Jul 26 2017, 09:44) *
А как в случае PPP обрабатывать входящие/исходящие звонки и смс?


У SIM800 есть второй UART порт. По одному можно лазить в PPP, а с другого ловить URC. Если обратитесь к док.SIM800 Series_Serial Port_Application Note_V1.хх, то там все найдете.
Rash
Судя по доке SIM800 Series_Serial Port_Application Note_V1.01 UART1 не полный, а UART2. Для модуля SIM800C наоборот. Значит ли это что в таблице UART1 и UART2 для SIM800C нужно поменять местами?
CADiLO
А где вы в 800С при штатной прошивке вообще второй UART нашли?
Rash
Схемотехнически он обозначен. А есть ли он в прошивке не знаю, но судя по вопросу думаю его там нет.
CADiLO
>>>>Схемотехнически он обозначен.

Дык он даже и доступен, но только из EAT
В ЕАТ и USB пользователю доступно как третий UART

EatUart_enum - This enumerate all the UART ports!

EAT_UART_1
represents physical UART port 1

EAT_UART_2
represents physical UART port 2

EAT_UART_USB
represents physical USB port

Rash
Значит для модулей SIM800С использовать 2-ой UART для PPP не получится на текущих версиях ПО.
Alechek
Rash, а чем не устраивает CMUX? Мне кажется, это проще, чем тянуть кучу дорожек от модема, использовать драгоценные ноги проца, и, главное, быть привязанным к определенному модему!
Rash
Думаю устроит и CMUX, просто поинтересовался, раз тема такая возникла. Вначале ещё в планах к PPP добраться нужно. Ножки проблема, если устройство малогабаритное, но и то есть корпуса QFN, а в основном 2 лишних дорожки не проблема.
Нашёл минимум одно ограничение, BT модуль не поддерживает CMUX, для этого случая 2 UART будут предпочтительнее.
Mihail Gluhowchenko
Есть несколько подходов к реализации.
PPP нормальная реализация для того чтобы в контексте поднять подключение получить IP и радость и счастье. Все современные модемы несколько более функциональны, имеют встроенные стеки TCP/IP шифрование SSL и не к ночи помянутое HTTPS. Возможно в 1 контексте поднять подключение и раздавать на хост интернет а в других контекстах работать на прямую со стеком TCP/IP модема.
Второй подход Intel CDC-ECM драйвер через USB открывает пачку USB-COM и пачку Ethernet.
Третий подход Qualcomm так же через USB только QMI интерфейсы. Некоторые производители выпускают свои библиотеки QMI и драйвера, чтобы можно было делать более сложны вещи. Агрегацию каналов управление трафиком по качеству обслуживания и так далее.

PPP иногда не совсем правильно настраивают, он начинает отваливаться например при 2 - 5 секундных задержках на слабых БС, по этому вот такие категоричные мнения.
Alechek
Цитата(Rash @ Jul 27 2017, 18:50) *
.. а в основном 2 лишних дорожки не проблема.

2 дорожки для модема - не считаю, что это хорошо. Без контроля передачи - могут быть проблемы!
Цитата(Rash @ Jul 27 2017, 18:50) *
Нашёл минимум одно ограничение, BT модуль не поддерживает CMUX, для этого случая 2 UART будут предпочтительнее.

Это да, по документации есть такие грабли.
Хотя, я так вообще не понимаю, как можно одновременно использовать BT и GSM часть без MUX... blink.gif Ведь каждая из подсистем будет иметь свои "плавающие задержки" То есть, к примеру, при регистрации модуля в сети будет таймаут на передачу данных по BT... wacko.gif
ИМХО, BT в модуле без MUX нужно использовать исключительно из под EAT.
Rash
Контроль можно и программно сделать. А задержки, это я уже молчу, всех устраивает, все этому явлению могут найти адекватное объяснение (на дворе 2017 год, а тут задержки в секунды, в следующем году, с новой операционкой, до минут дойдут) smile3046.gif
Цырен.
Цитата(Rash @ Jul 27 2017, 15:54) *
Значит для модулей SIM800С использовать 2-ой UART для PPP не получится на текущих версиях ПО.


не верно, получится.

Feature list SIM800C:
Dual UART
SIM800C24 - yes
SIM800C32 - yes
CADiLO
Поправлено.
Все верно - второй UART есть, дополнительной команды для включения не требует.
Эт я тормознул.....
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.