Рубрика «PPP»

Приветствую всех!
Многие из нас застали лично и всё ещё помнят «модемную» эпоху. И даже мне самому доводилось ими пользоваться, а много позже я писал про то, каково в нынешних реалиях сидеть в интернете через старый аналоговый модем. Но вот мне стало интересно: а как насчёт попробовать позвонить не через мини-АТС, а на модем в другом районе или даже в другом городе? Именно этим мы сейчас и займёмся.

Звоним через полстраны по dial-up модему в 2025 году - 1

Итак, в сегодняшней статье проверим на практике, реально ли заставить два модема связаться друг с другом в наши дни заката эпохи медных линий. Узнаем, насколько стабильным будет соединение и будет ли оно вообще. Традиционно будет много интересного.Читать полностью »

STM32 + PPP + GSM + LwIp + TLS 1.2 - 1

Недавно пришлось снова поднять PPP на STM32
Первая часть
Задача усложнилась обязательным требованием, использовать TLS 1.2 и отправлять данные по MQTT

Напомню, что MQTT и TLS находятся выше TCP (гуглим osi)

Беглый поиск выдал скудную таблицу результатов
Amazon FreeRTOS
очень похожая реализация от ST

В первом варианте оказалось около 10-ти различных архитектурных платформ
Как часто бывает, чип уже был выбрал и запаян на плату (STM32F429)
Ближайшим его родственником в списке оказался L475, под stm32l475_discovery соответственно
На этом отличая не закончились, в discovery используется WI-FI ISM43362-M3G-L44, он добавил сложности в понимании работы
Читать полностью »

Большинство GSM модулей работают по интерфейсу UART, посредством AT-команд. Но для серьезных проектов, использование AT команд несет определенные трудности:

• контроль и обработка ошибок
• результат выполнения команды возвращается с длительной задержкой
• необходимо разбирать входящие строки налету

Нужно понимать, что с результатом выполнения команды, в буфер может попасть URC-код от входящего звонка, SMS, принятые данные и пр. Входной буфер с принятыми строками, приходится разбирать опираясь лишь на символы переносов и «эхо» команды, а сами команды зачастую сильно отличаются форматом. По этим причинам, использование AT вносит дополнительную задержку, алгоритмически ее устранить практически невозможно, ведь причина находится в самом модуле и несовершенстве его встроенного ПО

В этом примере я использовал SIM800C. Посмотрев спецификацию и убедившись в поддержке PPP, стал изучать способы реализации. Для использования PPP, модуль переключается несколькими настроечными командами, после этого режим AT становится недоступным и фактически идет общение с вышкой оператора напрямую, минуя внутренний стек модуля, что позволяет значительно ускорить обмен данными.

Пример PPP-пакета:

STM32 + PPP (GSM) + LwIP - 1
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js