Связываем простые устройства с Интернетом.
На воркшопе мы познакомимся с популярным микроконтроллером ESP8266 и технологией Google Firebase. ESP8266 позволяет выполнять простые программы и соединяться с Интернетом через встроенный Wi-Fi. Данное сочетание делает плату отличным стартом для тех, кто создает продукты для сферы Интернет Вещей. Firebase - гибкий инструмент для мобильных и веб-приложенией. Применение: Firebase можно использовать не только в Интернете или мобильных устройствах, но и в “подключенных гаджетах”. В ходе воркшопа мы сделаем первые шаги с ESP8266 - соединим необходимые проводки, светодиоды и кнопки, подключим к компьютеру, настроим среду разработки Arduino IDE. Затем напишем программу для ESP8266 и подключим к облачному сервису Firebase. В результате, вы получите двустороннюю связь между устройством и мобильным (или веб) приложением.
Вам потребуется:
- Наш набор
- Ноутбук
- Вайфай и подключение к Интернету
Время работы - 2 часа, размер комадны - 1-3 человека
На Воркшопе мы соберем одну схемку - кнопка, красная или зеленая лампочка, модуль esp8266. Исходный код уже написан, необходимо будет скачать его с гитхаба, открыть в Arduino IDE и модифицировать 4 строчки.
Первый этап. Настройка программного обеспечения
- Скачать среду новую разработки Arduino, примерно 100Мб (не младше
1.6.4
) - Установить ее и зайти в
Preferences
- Вбить следующую строчку
http://arduino.esp8266.com/stable/package_esp8266com_index.json
в полеAdditional Board Manager URLs
- Открыть
Boards manager
из менюTools > Board
- В окне найти
esp8266
и установить (надо скачать порядка 150Мб). - После этого вы можете программировать платы, основанные на чипе esp8266. Более подробно об ПО для esp8266 можно почитать тут
- Установить драйвер для преобразователя USB-UART. Для Windows (32-bit, 64-bit), для Mac, для Linux драйвера уже включены в известные репозитории (Ubuntu, Debian и др.).
- Скачать zip-архив репозитория с драйвером Firebase для Arduino
- Удалить папку
thing
из директории/firebase-arduino-master/src/
этого архива (из-за нее не компилируются программы, она нам не нужна сегодня) - В Arduino IDE установить драйвер Firebase через
Sketch > Include Library > Add .ZIP Library...

- Взять набор
- Модуль ESP8266
- Макетная плата
- Последовательный порт USB-UART
- Набор проводков
- Светодиод, кнопка, резистор
- Провод USB
- Собрать схему под рисунку
- Подключить USB-UART к компьютеру.
Третий этап. Настройка Firebase
- Открыть пример
File > Examples > FirebaseArduino > FirebaseRoom_ESP8266
- В примере
FirebaseRoom_ESP8266
заменить поляWIFI_SSID
иWIFI_PASSWORD
для подключения WiFi. - Открыть консоль Firebase и создать новую базу данных (
Database
) - Скопировать URL-адрес базы данных (без https:// и /) и заменить в программе
FIREBASE_HOST
- Найти "секрет" базы данных (
⚙ > Project Settings > Database > Database secrets
) и заменить в программеFIREBASE_AUTH
- Заменить
pinMode(buttonPin, INPUT)
наpinMode(buttonPin, INPUT_PULLUP)
- Выбрать плату
Generic ESP8266 Module
вBoard > ESP8266 Modules
- Выбрать последовательный порт
Tools > Port
(Port > /dev/tty...
в Linux,/dev/cu.PL2303...
в Mac,COM...
в Windows) - Установить скорость
Upload Speed > 115200
- Залить программу через
Sketch > Upload
Четвертый этап. Результат
- Открыть консоль Firebase, отобразить данные (Data)
- Изменить
redlight
с0
на1
- Убедиться, что лампочка загорелась
- Нажать кнопку на макетной плате
- Убедиться, что
pushbutton
изменился с0
на1
Призываем модифицировать код, добавить новые сенсоры и собрать свой проект на ESP-Firebase