Настройки WiFi-роутера для ESP32

Оптимальные настройки роутера для стабильной работы ESP32 — диапазон частот, шифрование, каналы и совместимость.


← Назад к решению проблем

Частые причины

  • 📡

    Только диапазон 5 ГГц

    ESP32 поддерживает только 2.4 ГГц. Если роутер настроен только на 5 ГГц или объединяет оба диапазона под одним SSID с приоритетом 5 ГГц, ESP32 не сможет подключиться.

  • 🔒

    Несовместимый протокол шифрования

    ESP32 лучше всего работает с WPA2-PSK. WPA3, WPA2-Enterprise или устаревший WEP могут вызывать проблемы с подключением.

  • ⚙️

    Неправильный режим Wi-Fi

    Некоторые роутеры настроены на режим «только 802.11ac» или «только 802.11ax», которые работают только в 5 ГГц. ESP32 требуется режим, включающий 802.11b/g/n.

  • 🧯

    Изоляция клиентов или фильтрация MAC

    Функции безопасности роутера, такие как изоляция клиентов (AP Isolation) или фильтрация MAC-адресов, могут препятствовать подключению ESP32 или блокировать взаимодействие устройств.

Симптомы

ESP32 не видит вашу сеть при сканировании

При запуске WiFi.scanNetworks() ваша сеть не появляется в списке, хотя другие устройства её видят. Это обычно указывает на работу сети только в 5 ГГц.

Подключение проваливается с ошибкой аутентификации

ESP32 находит сеть, но не может аутентифицироваться — часто из-за WPA3 или WPA2-Enterprise.

Подключение работает, но нет связи с другими устройствами

ESP32 подключён к Wi-Fi и имеет IP-адрес, но не может обмениваться данными с другими устройствами в сети — признак включённой изоляции клиентов.

Работает на одном роутере, но не на другом

ESP32 успешно подключается к домашней сети, но не работает на корпоративном роутере, хотспоте или mesh-системе.

Решения

Включите отдельную сеть 2.4 ГГц

Если ваш роутер объединяет 2.4 ГГц и 5 ГГц под одним SSID, разделите их на два разных имени сети. Подключайте ESP32 к сети 2.4 ГГц.

Используйте шифрование WPA2-PSK

Настройте роутер на использование WPA2-PSK (также называемое WPA2 Personal). Это наиболее совместимый и надёжный вариант для ESP32.

Установите режим Wi-Fi b/g/n

Убедитесь, что роутер работает в смешанном режиме 802.11b/g/n на частоте 2.4 ГГц.

Отключите изоляцию клиентов и фильтрацию MAC

Для IoT-проектов, где устройства должны взаимодействовать друг с другом, отключите AP Isolation и убедитесь, что MAC-адрес ESP32 не заблокирован.

Подробнее

Настройки WiFi-роутера для ESP32

Правильная настройка роутера — часто упускаемый, но критически важный шаг для стабильной работы ESP32 в Wi-Fi сети. Многие проблемы с подключением, которые кажутся ошибками кода или оборудования, на самом деле вызваны несовместимыми настройками роутера.

Это руководство описывает все важные параметры роутера и рекомендуемые значения для стабильной работы с ESP32.


Ключевые настройки роутера

📡 Диапазон частот: только 2.4 ГГц

ESP32 поддерживает только Wi-Fi 2.4 ГГц (802.11 b/g/n). Он не поддерживает 5 ГГц (802.11ac/ax).

Если ваш роутер — двухдиапазонный:

Настройка роутераСовместимо с ESP32?
Только 2.4 ГГц✅ Да
Только 5 ГГц❌ Нет
Двухдиапазонный (раздельные SSID)✅ Да (подключайтесь к 2.4 ГГц)
Smart Connect / Band Steering (общий SSID)⚠️ Может работать, но ненадёжно

Рекомендация: Создайте отдельную сеть 2.4 ГГц с уникальным SSID, например MyNetwork_2.4G.


🔒 Шифрование и безопасность

ПротоколПоддержка ESP32Рекомендация
Открытая сеть✅ Поддерживается❌ Не рекомендуется
WEP✅ Поддерживается❌ Устаревший, небезопасный
WPA-PSK✅ Поддерживается⚠️ Устаревший
WPA2-PSK✅ ПоддерживаетсяРекомендуется
WPA2/WPA3 Mixed⚠️ Может работать⚠️ Зависит от прошивки
WPA3-SAE❌ Не поддерживается❌ Отключите
WPA2-Enterprise⚠️ Требует настройки⚠️ Сложно, но возможно

Для лучшей совместимости используйте WPA2-PSK (WPA2 Personal) с шифрованием AES (не TKIP).

// Проверка типа шифрования при сканировании
int n = WiFi.scanNetworks();
for (int i = 0; i < n; i++) {
  Serial.printf("%s (RSSI: %d) Шифрование: %d\n",
    WiFi.SSID(i).c_str(), WiFi.RSSI(i), WiFi.encryptionType(i));
}

Типы шифрования в Arduino-ESP32:

ЗначениеТип
2TKIP (WPA)
4CCMP (WPA2)
5WEP
7Нет шифрования
8Auto

📶 Режим Wi-Fi и стандарт

Роутер должен поддерживать режим 802.11 b/g/n (или хотя бы g/n):

Режим роутераСовместимо с ESP32?
802.11b/g/n mixed✅ Лучший вариант
802.11g/n mixed✅ Хорошо
802.11n only✅ Обычно работает
802.11b only✅ Работает, но медленно
802.11ac only❌ Не поддерживается
802.11ax (Wi-Fi 6) only❌ Не поддерживается

📊 Канал Wi-Fi

ESP32 поддерживает каналы 1–13 в диапазоне 2.4 ГГц (канал 14 — только Япония, обычно не используется).

Рекомендации по выбору канала:

  • Используйте неперекрывающиеся каналы: 1, 6 или 11
  • Избегайте загруженных каналов — используйте Wi-Fi анализатор для поиска свободных
  • Автовыбор канала роутером обычно работает хорошо
// Вывод канала текущего подключения
Serial.printf("Канал: %d\n", WiFi.channel());

🔧 Ширина канала

Ширина каналаРекомендация
20 МГц✅ Рекомендуется для ESP32
40 МГц⚠️ Может вызывать проблемы

Использование 20 МГц вместо 40 МГц улучшает совместимость с ESP32, особенно в условиях слабого сигнала или помех.


🛡️ Дополнительные настройки безопасности

Изоляция клиентов (AP Isolation / Client Isolation):

Эта функция предотвращает взаимодействие устройств в одной сети. Отключите её, если:

  • ESP32 должен взаимодействовать с другими устройствами в сети
  • Вы используете mDNS (esp32.local)
  • У вас есть веб-сервер на ESP32

Фильтрация MAC-адресов:

Если включена фильтрация MAC, добавьте MAC-адрес ESP32 в белый список:

// Узнайте MAC-адрес ESP32
Serial.print("MAC: ");
Serial.println(WiFi.macAddress());

Максимальное количество клиентов:

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


Настройки DHCP

ПараметрРекомендация
DHCP включён✅ Да
Время аренды≥ 24 часа (или бесконечно)
Диапазон адресовДостаточный для всех устройств
Резервирование IPРекомендуется для ESP32

Короткое время аренды DHCP (например, 1 час) может вызывать периодические отключения ESP32. Увеличьте его минимум до 24 часов или настройте статическое резервирование.


Полный чек-лист настроек роутера для ESP32

✅ Диапазон: 2.4 ГГц (отдельный SSID)
✅ Шифрование: WPA2-PSK (AES)
✅ Режим: 802.11 b/g/n mixed
✅ Канал: 1, 6 или 11 (или авто)
✅ Ширина канала: 20 МГц
✅ DHCP: включён, аренда ≥ 24ч
✅ AP Isolation: отключена
✅ Фильтрация MAC: отключена (или ESP32 в белом списке)
✅ WPA3: отключён (или WPA2/WPA3 mixed)
✅ Band Steering: отключён (или раздельные SSID)

Скетч для диагностики совместимости

#include <WiFi.h>

void setup() {
  Serial.begin(115200);
  delay(1000);
  
  WiFi.mode(WIFI_STA);
  WiFi.disconnect();
  delay(100);
  
  Serial.println("=== Сканирование Wi-Fi сетей ===\n");
  
  int n = WiFi.scanNetworks();
  
  if (n == 0) {
    Serial.println("Сети не найдены!");
    Serial.println("Проверьте:");
    Serial.println("  - Есть ли 2.4 ГГц сети поблизости");
    Serial.println("  - Работает ли антенна ESP32");
  } else {
    Serial.printf("Найдено %d сетей:\n\n", n);
    
    for (int i = 0; i < n; i++) {
      String encryption;
      switch (WiFi.encryptionType(i)) {
        case WIFI_AUTH_OPEN: encryption = "Открытая"; break;
        case WIFI_AUTH_WEP: encryption = "WEP"; break;
        case WIFI_AUTH_WPA_PSK: encryption = "WPA-PSK"; break;
        case WIFI_AUTH_WPA2_PSK: encryption = "WPA2-PSK ✅"; break;
        case WIFI_AUTH_WPA_WPA2_PSK: encryption = "WPA/WPA2"; break;
        case WIFI_AUTH_WPA3_PSK: encryption = "WPA3 ❌"; break;
        case WIFI_AUTH_WPA2_WPA3_PSK: encryption = "WPA2/WPA3 ⚠️"; break;
        default: encryption = "Неизвестно"; break;
      }
      
      String signal;
      int rssi = WiFi.RSSI(i);
      if (rssi > -50) signal = "Отлично";
      else if (rssi > -65) signal = "Хорошо";
      else if (rssi > -75) signal = "Средне";
      else signal = "Плохо";
      
      Serial.printf("%d. %s\n", i + 1, WiFi.SSID(i).c_str());
      Serial.printf("   RSSI: %d дБм (%s)\n", rssi, signal.c_str());
      Serial.printf("   Канал: %d\n", WiFi.channel(i));
      Serial.printf("   Шифрование: %s\n\n", encryption.c_str());
    }
  }
}

void loop() {
  delay(10000);
}

Особенности разных типов роутеров

  • Могут автоматически перемещать устройства между узлами и диапазонами
  • Иногда вызывают отключения ESP32 при переключении
  • Рекомендация: отключите Band Steering и Smart Connect

Роутеры провайдера

  • Часто имеют ограниченные настройки
  • Могут принудительно использовать WPA3 или объединённые диапазоны
  • Рекомендация: подключите свой роутер в режиме точки доступа

Мобильные хотспоты

  • Обычно работают хорошо с ESP32
  • Могут иметь ограниченное количество клиентов (обычно 8–10)
  • Полезны для тестирования, если основной роутер не работает

Заключение

Многие проблемы с подключением ESP32 к Wi-Fi решаются правильной настройкой роутера. Ключевые моменты:

  • ESP32 работает только с 2.4 ГГц — убедитесь, что эта сеть доступна
  • Используйте WPA2-PSK (не WPA3)
  • Установите режим 802.11 b/g/n mixed
  • Ширина канала 20 МГц улучшает стабильность
  • Отключите изоляцию клиентов и фильтрацию MAC

Если вы подозреваете проблему с роутером, попробуйте подключить ESP32 к мобильной точке доступа — если это работает, проблема точно в настройках роутера.

Быстрая навигация

Дополнительные ресурсы

Всё ещё есть проблема с ESP32? Давайте решим её вместе.

Наш интерактивный мастер устранения неполадок проведёт вас через распространённые проблемы ESP32 и их решения шаг за шагом.

Начать устранение неполадок

Регистрация не требуется. Начните решать проблемы прямо сейчас!

Узнайте больше о нашем процессе устранения неполадок →