AT+CGDCONT=1: настройка APN на модеме через AT-команды

Команда AT+CGDCONT=1 вводится в терминале при настройке USB-модема или GSM-модуля, когда устройство не выходит в интернет из-за неверной точки доступа: она задаёт PDP-контекст №1 — профиль с типом протокола и APN оператора, без которого модем не может установить соединение передачи данных. Если после подключения модема сеть регистрируется, а интернет не работает, проверка и корректная запись этой команды — один из первых шагов диагностики.

Ниже разберём синтаксис команды, примеры для российских операторов, порядок ввода через терминал и типичные ошибки, из-за которых модем отвечает ERROR или соединение не поднимается даже при правильном APN.

Что делает команда AT+CGDCONT

Команда AT+CGDCONT определяет контекст пакетной передачи данных (PDP Context) в памяти модема. Упрощённо это профиль подключения: какой протокол использовать, к какой точке доступа обращаться и какие параметры аутентификации применять. Модем может хранить несколько таких профилей, каждый со своим номером — идентификатором cid.

Форма AT+CGDCONT=1,..." означает запись контекста с идентификатором 1. Именно первый контекст чаще всего используется по умолчанию при активации соединения, поэтому запрос «at cgdcont 1» обычно связан с настройкой основного профиля интернета.

Полный синтаксис выглядит так:

AT+CGDCONT=<cid>,"<PDP_type>","<APN>"

Где <cid> — номер контекста, <PDP_type> — тип протокола (IP, IPV6 или IPV4V6), а <APN> — точка доступа оператора в кавычках.

Примеры для популярных операторов

APN зависит от оператора связи и тарифа. Ниже — общеизвестные точки доступа, но перед вводом стоит свериться с актуальными данными на сайте вашего оператора, так как для отдельных тарифов и модемных устройств APN может отличаться.

  • 📶 МТС: AT+CGDCONT=1,"IP","internet.mts.ru"
  • 📶 Билайн: AT+CGDCONT=1,"IP","internet.beeline.ru"
  • 📶 МегаФон: AT+CGDCONT=1,"IP","internet"
  • 📶 Tele2: AT+CGDCONT=1,"IP","internet.tele2.ru"
  • 📶 Yota: AT+CGDCONT=1,"IP","internet.yota"

Обратите внимание на кавычки: они обязательны и должны быть прямыми (не «ёлочки» и не типографские), иначе модем вернёт ошибку. Пробелы внутри APN недопустимы.

Как ввести команду: пошаговый порядок

Для отправки AT-команд нужен терминал, подключённый к COM-порту модема. На Windows подойдут PuTTY, HyperTerminal или встроенные средства прошивальщиков; на Linux — minicom или screen. Порт и его параметры можно посмотреть в диспетчере устройств: модем обычно создаёт несколько виртуальных COM-портов, и AT-команды принимает не каждый из них.

Порядок действий:

  • 🔌 Подключите модем и дождитесь его определения в системе; закройте фирменную программу модема, чтобы она не занимала порт.
  • 🔍 Найдите в диспетчере устройств порт, помеченный как UI, AT или Application Interface (название зависит от модели).
  • ⌨️ Откройте порт в терминале и проверьте связь командой AT — модем должен ответить OK.
  • 📝 Отправьте AT+CGDCONT=1,"IP","ваш_apn" и дождитесь ответа OK.
  • ✅ Проверьте запись командой чтения AT+CGDCONT? — модем выведет список всех контекстов.

☑️ Проверка после ввода AT+CGDCONT

Выполнено: 0 / 5

После записи контекста соединение нужно переустановить: переподключите модем или перезапустите сессию передачи данных. На части устройств настройки сохраняются в энергонезависимой памяти, на других профиль придётся задавать заново после сброса — это зависит от модели.

📊 Для чего вы настраиваете модем через AT-команды?
USB-модем не выходит в интернет
Настройка GSM-модуля в проекте (Arduino и т.п.)
Смена оператора / APN
Диагностика и эксперименты

Типичные ошибки и их причины

Ответ ERROR после ввода команды почти всегда указывает на синтаксис, а не на неисправность. Самые частые причины — пропущенные или неправильные кавычки, лишние пробелы, кириллические символы, случайно попавшие в строку, и неподдерживаемый тип PDP.

СимптомВероятная причинаЧто проверить
Модем отвечает ERRORОшибка синтаксисаКавычки, запятые, отсутствие пробелов в APN
Нет ответа вообщеНеверный COM-порт или порт занятДругой порт в диспетчере устройств, закрыть ПО модема
OK, но интернета нетНеверный APN или нет регистрации в сетиAT+CGDCONT?, AT+CREG?, уровень сигнала AT+CSQ
Контекст слетает после перезагрузкиПрофиль не сохранён в памятьДокументация модели: команды сохранения профиля различаются
ERROR на IPV6/IPV4V6Модем не поддерживает типИспользовать "IP" (IPv4)

⚠️ Внимание: не вводите команды наугад из чужих инструкций для других моделей. Некоторые AT-команды меняют заводские параметры модема (режимы работы, привязку к оператору), и откатить изменения без специальных утилит бывает сложно. Перед экспериментами зафиксируйте текущие настройки, например сохранив вывод AT+CGDCONT?.

Проверка регистрации и соединения

Правильный APN — необходимое, но не единственное условие. Если контекст записан корректно, а интернета нет, проверьте цепочку дальше. Команда AT+CREG? покажет регистрацию в сети (ответ с кодом 1 или 5 означает, что модем зарегистрирован), AT+CSQ — уровень сигнала. При слабом сигнале соединение может не устанавливаться даже с верными настройками.

Для активации контекста в разных устройствах используются разные механизмы: где-то применяется AT+CGACT=1,1, где-то — диалап через ATD*99#, а современные 4G-модемы часто поднимают соединение автоматически при наличии корректного контекста. Какой способ актуален для вашего устройства, нужно смотреть в его документации.

Особенности для GSM-модулей в DIY-проектах

С модулями вроде SIM800, SIM900 и аналогов команда работает так же, но последовательность важнее: контекст задаётся до открытия GPRS-сессии, а между командами нужны паузы и контроль ответов. Модуль отвечает асинхронно, и отправка следующей команды до получения OK — типичная причина «зависаний» скетча.

Также учитывайте, что дешёвые модули чувствительны к питанию: просадки напряжения при передаче данных вызывают перезагрузку, которая внешне выглядит как «не работает интернет». Прежде чем переписывать AT-последовательность, убедитесь, что источник питания соответствует требованиям модуля из его документации.

Что означают параметры команды подробнее

cid — числовой идентификатор контекста (обычно от 1; диапазон зависит от модема). PDP_type — тип протокола: IP для IPv4, IPV6 для IPv6, IPV4V6 для двойного стека. APN — строка точки доступа, выдаётся оператором. Дополнительные необязательные параметры (сжатие данных и заголовков) в современных сетях практически не используются и обычно остаются нулевыми.

⚠️ Внимание: для встраиваемых модулей не задавайте жёстко параметры, которых нет в официальном AT-руководстве именно вашей модели. Набор поддерживаемых команд и значений у разных производителей отличается, и «универсальные» примеры из форумов могут вернуть ошибку или сработать иначе.

Часто задаваемые вопросы

Чем отличается AT+CGDCONT=1 от AT+CGDCONT?

Первая форма записывает контекст с номером 1, а вторая (со знаком вопроса) — читает текущие настройки и выводит список всех заданных контекстов. После записи полезно сразу выполнить чтение, чтобы убедиться, что APN сохранился без искажений.

Можно ли задать несколько контекстов?

Да, большинство модемов поддерживают несколько PDP-контекстов с разными номерами, например отдельные профили для интернета и для услуг оператора. Какой контекст используется при соединении, определяется настройками устройства и способом активации.

Модем отвечает OK, но интернет не работает — что дальше?

Проверьте регистрацию в сети (AT+CREG?), уровень сигнала (AT+CSQ), правильность APN у оператора и баланс/статус SIM-карты. Также убедитесь, что соединение активируется способом, предусмотренным вашей моделью модема.

Нужно ли вводить команду после каждого включения?

На большинстве USB-модемов контекст хранится в памяти устройства и переживает перезагрузку. Если настройки сбрасываются, уточните в документации модели, предусмотрена ли команда сохранения профиля, — у разных производителей она своя.

Подойдёт ли команда для роутера с SIM-картой?

Сама команда универсальна для устройств с AT-интерфейсом, но у роутеров APN обычно задаётся через веб-интерфейс, и прямой доступ к AT-порту может быть закрыт. Используйте штатный интерфейс настройки, если он доступен.