SparkFun ESP8266 Thing: подключение и прошивка в Ubuntu 14.04

Подключение

SparkFun ESP8266 Thing - это плата для разработчиков на основе WiFi модуля ESP8266. К сожалению, на нее невозможно заливать прошивку просто через USB, USB используюется только для обеспечения питанием. Для программирования модуля необходим USB-to-Serial конвертер, например, такой, как использовал я: SparkFun FTDI Basic Breakout. Но и любой другой конвертер с 3,3 В на выходе должен подойти. Чтобы подключить конвертер к плате, нужно на ESP8266 Thing напаять разъем (далее будет фотография того, что получилось у меня).
Также не рекомендуется прошивать ESP8266, когда питание подается по USB. В моем случае это не было проблемой, так как у меня имелась батарейка, купленная специально для использования с этим модулем: JA-803450P. ESP8266 Thing умеет заряжать батарейку, когда подключено питание по USB.
В итоге у меня получилась такая конструкция:

На фото видно, что на плате (как и на конвертере) размечены все выходы, поэтому вопросов, как припаять разъем и как подсоединить конвертер, не возникает.
Следующий шаг - это залить тестовую прошивку. Самый простой способ - воспользоваться существующим аддоном к Arduino IDE.

Arduino IDE

Последнюю версию Arduino IDE можно скачать с сайта arduino.cc. В репозиториях Ubuntu тоже есть соответсвующие пакеты, но они содержат довольно старую версию Arduino IDE (я использовал 1.6.8).  После установки запускаем IDE, идем в File -> Preferences, ищем на этой вкладке поля ввода "Additional Board Manager URL" и добавляем туда следующий url: 
http://arduino.esp8266.com/stable/package_esp8266com_index.json
Далее идем в Tools -> Boards -> Boards Manager, ищем строчку esp8266 by ESP8266 Community, и нажимаем Install. Когда загрузка закончится, можно выбрать нашу плату в настройках (Tools -> Boards), выставить FTDI порт (Tools -> Port) и можно попробовать загрузить тестовую прошивку.
Также можно поменять скорость передачи в Tools -> Upload speed c 115200 на 921600. В случае с Ubuntu (как у меня), чтобы не запускать IDE от рута, необходимо разрешить своему пользователю доступ к /dev/tty (у меня после подключения конвертера к компьютеру порт определился по адресу /dev/ttyUSB0). Для этого надо добавить пользователя в группу dialout, например, командой:
sudo adduser $USER dialout

Тестовая прошивка

Чтобы проверить, что все работает, я использовал простую программу, которая мигает одним светодиодом, расположенным прямо на плате.
#define ESP8266_LED 5

void setup( )
{
    pinMode( ESP8266_LED, OUTPUT );
}

void loop( )
{
    digitalWrite( ESP8266_LED, HIGH );
    delay( 500 );
    digitalWrite( ESP8266_LED, LOW );  
    delay( 500 );
}
Копируем код в IDE, нажимаем Upload, и, после того, как программа скомпилируется и загрузится на плату, контроллер перезагрузится и светодиод начнет мигать.

Что делать дальше

Вот небольшой список примеров использования SparkFun ESP8266 The Thing, которые я попробовал сам: 
  1. SparkFun ESP8266 Thing: подключение к WiFi и выполнение POST-запроса с JSON
  2. SparkFun ESP8266 Thing: подключение датчика движения

Комментариев нет :

Отправить комментарий