четверг, 17 февраля 2022 г.

Подключение к esp-12e (ESP8266) с помощью FTDI, отправка AT-комманд, подключение к роутеру

Что есть:

USB-serial конвертер: упоминался в предыдущих постах в блоге, там подробно описан

Wi-Fi модуль: esp-12e

Ноутбук: Dell под Ubuntu 16.04

Схема подключения

Ниже есть ссылка на статью с картинками для наглядности, но все просто. Два провода на GND, еще два на плюс, RX/TX и готово. Конкретно: контакты ESP8266 GND и GPIO15 (они рядом) подключаем к GND; VCC и EN (на некоторых моделях это CH_PD) подсоединяем к +3.3 V. Далее как обычно RX модуля подсоединяем к TX адаптера, а TX - к RX адаптера, перепутать невозможно.

Осторожно: 5 вольт убьет чип; у меня на FTDI адаптере есть джампер для переключения между 5 и 3.3 вольт - проверяю его каждый раз.

Коммуникация

Когда все провода подсоединены, подключаю FTDI адаптер в USB ноутбука - esp модуль один раз кратко мигает светодиодом.

Далее можно настроить Arduino IDE (об этом ниже) и отправлять команды через нее или обойтись терминалом и утилитой screen - для этого в терминале набираю команду:

screen /dev/ttyUSB0 115200

перед этим надо определить, по какому порту обращаться к FTDI (у меня это /dev/ttyUSB0).

Когда запустится screen ничего не будет - пустой экран. 

Команды надо отправлять так: набрал команду, нажал Enter, потом нажал Ctrl-J - после этого команда отправится на модуль, и должен прилететь ответ. Например такая последовательность:

AT[Enter][Ctrl-J]

в ответ модуль должен прислать "OK"

Ниже есть ссылка на видео Great Scott, как с помощью таких комманд можно подключиться к домашнему ротуеру. А вот скрин моей попытки подключиться, только сначала нужно переключиться в режим 3 (в видео про это есть).


Настройка Arduino IDE

  1. Установить из Ubuntu Software последнюю версию Arduino IDE (сейчас 1.8)
  2. Далее всё по видео (ссылка внизу): в настройках File/Preferences вставить в поле "Additional Board Managers URLs" адрес http://arduino.esp8266.com/stable/package_esp8266com_index.json и нажать Ок
  3. Установить плагин esp8266: в меню Tools/Board выбрать Board Manager, в открывшемся окне в поиске набрать "esp8266", в выпадающем списке выбрать последнюю версию
  4. В списке Tools/Board появится ESP8266 - там выбрать "Generic ESP8266 Module"
  5. Для проверки запустить Serial monitor (предварительно выбрав Tools/Port), выставить BaudRate 115200 внизу и в выпадающем списке "Both NL & CR", потом набрать вверху в строке команду "AT" и нажать Send - должен прийти ответ "OK".

Ссылки

Пример подключения к роутеру (начиная с 4:50)

Подключение проводов

Почему нужно заканчивать команды нажатием Enter и Ctrl-J

Подключение и прошивка ESP8266 из Arduino IDE

Робот на esp8266