Чип был популяризирован среди англоязычного сообщества производителей в августе 2014 года благодаря модулю ESP-01 , созданному сторонним производителем Ai-Thinker. Этот небольшой модуль позволяет микроконтроллерам подключаться к сети Wi-Fi и устанавливать простые TCP/IP-соединения с помощью команд в стиле Hayes . Однако поначалу англоязычной документации по чипу и принимаемым им командам почти не было. [2] Очень низкая цена и тот факт, что в модуле было очень мало внешних компонентов, что предполагало, что в конечном итоге он может быть очень недорогим по объему, привлекли многих хакеров к изучению модуля, чипа и программного обеспечения на нем. а также перевести китайскую документацию. [3]
ESP8285 — аналогичный чип со встроенной флэш-памятью объемом 1 МБ, позволяющий создавать однокристальные устройства с возможностью подключения через Wi-Fi . [4]
На смену этим микроконтроллерам пришло семейство устройств ESP32 .
Функции
Каркасный чертеж модуля ESP-01
Процессор: 32-битное RISC- микропроцессорное ядро L106 на базе Tensilica Diamond Standard 106Micro, работающее на частоте 80 или 160 МГц [5]
Память: [6]
32 КиБ ОЗУ для инструкций
ОЗУ кэша инструкций 32 КиБ
80 КиБ ОЗУ для пользовательских данных
16 КБ оперативной памяти ETS для системных данных
Внешняя флэш-память QSPI: поддерживается до 16 МБ (обычно включено от 512 КиБ до 4 МБ)
В октябре 2014 года Espressif Systems выпустила комплект разработки программного обеспечения (SDK) для непосредственного программирования чипа, что устранило необходимость в отдельном микроконтроллере. [9] С тех пор было выпущено множество официальных выпусков SDK от Espressif; Espressif поддерживает две версии SDK — одна основана на FreeRTOS , а другая — на обратных вызовах . [10]
Альтернативой официальному SDK Espressif является ESP-Open-SDK с открытым исходным кодом [11] , основанный на наборе инструментов GNU Compiler Collection (GCC), поддерживаемом Максом Филипповым. [12] Другая альтернатива — «Неофициальный комплект разработки» Михаила Григорьева. [13] [14]
Другие SDK, в основном с открытым исходным кодом, включают:
Arduino — прошивка на основе C++. Благодаря этому ядру процессор ESP8266 и его компоненты Wi-Fi можно программировать, как любое другое устройство Arduino. Ядро Arduino ESP8266 доступно на GitHub.
ESPHome — ESPHome — это система управления вашим ESP8266/ESP32 с помощью простых, но мощных файлов конфигурации и удаленного управления ими через системы домашней автоматизации.
Tasmota — прошивка с открытым исходным кодом, для домашней автоматизации.
ESP-Open-RTOS — программная платформа ESP8266 на базе FreeRTOS с открытым исходным кодом.
ESP-Open-SDK — Бесплатный и открытый (насколько это возможно) интегрированный SDK для чипов ESP8266/ESP8285.
Espruino — активно поддерживаемый JavaScript SDK и прошивка, близко эмулирующая Node.js. Поддерживает несколько микроконтроллеров, включая ESP8266.
ESPurna — прошивка ESP8285/ESP8266 с открытым исходным кодом.
Прямо — Порт Джонс Далее к микроконтроллеру ESP8266.
MicroPython — порт MicroPython (реализация Python для встраиваемых устройств) на платформу ESP8266.
Модируемый SDK — включает поддержку языка JavaScript и библиотек для ESP8266.
Mongoose OS — операционная система с открытым исходным кодом для подключенных продуктов. Поддерживает ESP8266 и ESP32. Разрабатывайте на C или JavaScript. [15]
PlatformIO — кросс-платформенная IDE и унифицированный отладчик, работающий поверх кода и библиотек Arduino.
Punyforth — язык программирования на основе Форта для ESP8266.
Sming — активно развивающаяся асинхронная среда C/C++ с превосходной производительностью и множеством сетевых функций.
uLisp — версия языка программирования Lisp , специально разработанная для работы на процессорах с ограниченным объемом оперативной памяти.
ZBasic для ESP8266 — подмножество широко используемого Microsoft Visual Basic 6, которое было адаптировано в качестве языка управления для семейства микроконтроллеров ZX и ESP8266.
Zerynth — IoT-фреймворк для программирования ESP8266 [16] и других микроконтроллеров на Python .
IOTBAH — операционная система (ОС) для Espressif ESP8266.
Веб-сервер EspOS, простое решение IoT.
Модули эспрессо
ESP-КОМНАТА-02
Это серия модулей на базе ESP8266 производства Espressif:
В таблице выше (и двух последующих таблицах) «Активные контакты» включают контакты GPIO и ADC, с помощью которых внешние устройства могут быть подключены к MCU ESP8266. «Шаг» — это расстояние между контактами модуля ESP8266, которое важно знать, если устройство будет использоваться на макетной плате. «Форм-фактор» также описывает упаковку модуля как «2 × 9 DIL», что означает два ряда по 9 контактов, расположенных «Dual In Line», как контакты микросхем DIP. Многие модули ESP-xx имеют небольшой встроенный светодиод, который можно запрограммировать на мигание и тем самым указывать на активность. Существует несколько вариантов антенн для плат ESP-xx, включая трассировочную антенну, встроенную керамическую антенну и внешний разъем, позволяющий подключить внешнюю антенну Wi-Fi. Поскольку связь Wi-Fi генерирует много радиопомех (радиочастотных помех), государственные органы, такие как Федеральная комиссия по связи (FCC), предпочитают экранированную электронику, чтобы минимизировать помехи другим устройствам. Некоторые модули ESP-xx поставляются в металлическом корпусе с отпечатанным на нем знаком одобрения FCC. Рынки первого и второго мира, скорее всего, потребуют одобрения FCC и экранированных устройств Wi-Fi. [ нужна цитата ]
Это первая серия модулей, созданная на базе ESP8266 сторонним производителем Ai-Thinker , и она остается наиболее широко доступной. [20] Все вместе они называются «модулями ESP-xx». Для формирования работоспособной системы разработки требуются дополнительные компоненты, особенно последовательный адаптер TTL-USB (иногда называемый мостом USB-UART) и внешний источник питания на 3,3 В. Начинающим разработчикам ESP8266 рекомендуется рассмотреть более крупные платы разработки ESP8266 Wi-Fi, такие как NodeMCU, которые включают в себя мост USB-UART и разъем Micro-USB в сочетании с уже встроенным в плату стабилизатором питания на 3,3 В. Когда разработка проекта завершена, эти компоненты не нужны, и эти более дешевые модули ESP-xx представляют собой вариант с меньшим энергопотреблением и занимаемой площадью для производственных циклов.
В столбце «Примечания» размеры флэш-памяти относятся к данному модулю и всем модулям, расположенным ниже него в таблице. Исключения, применимые к одному модулю, показаны в ().
Причиной популярности многих из этих плат по сравнению с более ранними модулями ESP-xx является наличие на плате моста USB-UART (например, CP2102 от Silicon Labs или WCH CH340G) и разъема Micro-USB. в сочетании с 3,3-вольтовым стабилизатором для обеспечения как питания платы, так и подключения к главному компьютеру (для разработки программного обеспечения), обычно называемому консолью, что делает его простой платформой разработки. В более ранних модулях ESP-xx эти два элемента (адаптер USB-последовательный порт и регулятор) приходилось приобретать отдельно и подключать к цепи ESP-xx. С современными платами ESP8266, такими как NodeMCU , проще работать, и они предлагают больше контактов GPIO. Большинство перечисленных здесь плат основаны на модуле ESP-12E, но новые модули появляются, по-видимому, каждые несколько месяцев.
ЭСП32-С3
В 2020 году Espressif анонсировала новый чип ESP32-C3, совместимый по выводам с ESP8266. Он основан на одноядерном 32-битном процессоре RISC-V с тактовой частотой до 160 МГц. Он включает в себя 400 КиБ SRAM и встроенное ПЗУ объемом 384 КиБ. [45]
^ «Обзор ESP8266» . Системы эспрессо . Проверено 2 октября 2017 г.
↑ Брайан Бенчофф (26 августа 2014 г.). «Предупреждение о новом чипе: WiFi-модуль ESP8266 (5 долларов США)». Хакадей . Проверено 24 июня 2015 г.
↑ Брайан Бенчофф (6 сентября 2014 г.). «Текущее состояние разработки ESP8266». Хакадей . Проверено 24 июня 2015 г.
^ «Espressif анонсирует чип Wi-Fi ESP8285 для носимых устройств» . Системы эспрессо. 9 марта 2016 г. Архивировано из оригинала 25 июля 2016 г. Проверено 10 июля 2016 г.
^ «Справочник по API ESP8266 Non-OS SDK, Глава 2.4. Производительность системы» (PDF) . espressif.com . Системы эспрессо. Режим и частота прошивки напрямую влияют на скорость выполнения кода. Установка более высокой частоты вспышки и режима QIO может дать наилучшие результаты с точки зрения производительности, хотя это требует затрат с точки зрения энергопотребления. «Справочник по API ESP8266 Non-OS SDK» (PDF) . espressif.com . Системы эспрессо. Успех варьируется от чипа к чипу. [ нужна цитата ]
^ «Справочник по API ESP8266 Non-OS SDK, Глава 2.5. Системная память» (PDF) . espressif.com . Системы эспрессо.
^ «Технический справочник ESP8266, версия 1.7» (PDF) . Системы эспрессо . Проверено 22 апреля 2021 г.
^ «Дискуссионный форум зоны разработчиков Espressif ESP8266: действительно ли ESP8266 имеет аппаратный I2C?». Системы эспрессо. 27 октября 2014 г. Проверено 2 октября 2017 г.
↑ Брайан Бенчофф (25 октября 2014 г.). «SDK для чипа Wi-Fi ESP8266». Хакадей . Проверено 24 июня 2015 г.
^ «Официальный выпуск SDK от Espressif для ESP8266» . Системы эспрессо. 29 июля 2015 года . Проверено 8 августа 2015 г.
↑ Павел Соколовский (11 ноября 2022 г.). «esp-open-sdk: Бесплатный и открытый (насколько это возможно) интегрированный SDK для чипов ESP8266/ESP8285». Гитхаб .
↑ Макс Филиппов (15 февраля 2015 г.). «Связка инструментов ESP8266 GCC». Гитхаб . Проверено 8 августа 2015 г.
↑ Михаил Григорьев (29 августа 2022 г.). «Неофициальный комплект разработки для Espressif ESP8266 (репозиторий GitHub)». Гитхаб .
^ Михаил Григорьев. «Неофициальный комплект разработки проекта для Espressif ESP8266».
^ «Документация по ОС Mongoose» . Чесанта. Архивировано из оригинала 27 января 2018 г. Проверено 2 октября 2017 г.
↑ Луиджи Ф. Серфеда (15 июня 2017 г.). «Python для ESP8266 всего за несколько кликов с помощью Zerynth». Зеринт (ООО «Кинзика Венчурс»).
^ "Эспрессиф ESP-WROOM-02" . Системы эспрессо . Проверено 29 июля 2015 г.
^ ab «Техническое описание ESP-WROOM-02D/ESP-WROOM-02U» (PDF) . Системы эспрессо. Архивировано из оригинала (PDF) 1 декабря 2017 г. Проверено 25 ноября 2017 г.
^ «Техническое описание ESP-WROOM-S2» (PDF) . Системы эспрессо. Архивировано из оригинала (PDF) 8 октября 2017 г. Проверено 8 октября 2017 г.
^ «Семейство модулей ESP8266» . Вики-сообщество ESP8266 . Проверено 24 июня 2015 г.
^ «ESP-01 (esp8266): распиновка и характеристики высокого разрешения» . Мискьянти.
^ «ESP-01S (esp8266): распиновка и характеристики высокого разрешения» . Мискьянти.
^ «2ADUIESP-12 от Shenzhen Anxinke Technology Co., LTD для модуля Wi-Fi» . ФКС . 30 декабря 2014 года . Проверено 24 июня 2015 г.
^ «Идентификатор FCC 2AHMR-ESP12S, Shenzhen Ai-Thinker Technology co., LTD WIFI МОДУЛЬ -ESP12S» . ФКС . 4 августа 2016 г. Проверено 17 июля 2017 г.
^ "MOD-WIFI-ESP8266" . Олимекс . Проверено 25 июня 2015 г.
^ "MOD-WIFI-ESP8266-DEV" . Олимекс . Проверено 25 июня 2015 г.
^ "Прорыв Adafruit HUZZAH ESP8266" . Адафрут Индастриз . Проверено 25 июня 2015 г.
^ "Вещь SparkFun ESP8266" . СпаркФан . Проверено 27 июня 2015 г.
^ "KNEWRON smartWIFI" . КНЕВРОН. Архивировано из оригинала 14 ноября 2016 года . Проверено 4 марта 2016 г.
^ ESP8266 UNO (25 апреля 2016 г.). «Плата ArduCAM ESP8266 UNO».{{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
^ Лаборатории SwitchDoc. «Гроув УэзерПлюс». Архивировано из оригинала 14 апреля 2021 г. Проверено 30 июня 2018 г.
^ abcde WeMos. «ВЕМОС». ВЕМОС .
^ "ВеМос D1". ВеМос. Архивировано из оригинала 3 сентября 2017 г. Проверено 30 ноября 2016 г.
^ "ВеМос D1 R2" . ВеМос. Архивировано из оригинала 3 сентября 2017 г. Проверено 5 января 2016 г.
^ "WeMos D1 мини" . ВеМос. Архивировано из оригинала 2 июля 2017 г. Проверено 29 июня 2017 г.
^ "WeMos D1 mini Lite" . ВеМос. Архивировано из оригинала 6 июня 2017 г. Проверено 29 июня 2017 г.
^ "WeMos D1 mini Pro" . ВеМос. Архивировано из оригинала 27 августа 2017 г. Проверено 29 июня 2017 г.
^ "Эсперт". Эсперт . Проверено 7 января 2016 г.
^ "ESPresso Lite V2.0" . ООО "Эсперт Пте" . Проверено 2 октября 2017 г.
^ "Плата разработки ESP-ADC DIL18" . Внутрисхемная вики . Проверено 3 февраля 2016 г.
^ "Watterott ESP-WROOM02-Прорыв" . Уоттеротт . Проверено 6 ноября 2016 г.
^ «Плата для разработки Wi-Fi Geek Wave Solution ESP8266-WROOM-02-IOT» . Компьютерное волновое решение. Архивировано из оригинала 4 сентября 2017 г. Проверено 4 сентября 2017 г.
^ "Остроумная двухуровневая плата ESP8266 ESP-12E" . Н/Д . Проверено 29 августа 2019 г.
^ Список, Дженни (22 ноября 2020 г.). «Espressif Leaks ESP32-C3: SOC WiFi, который представляет собой RISC-V и совместим по выводам с ESP8266» . Хакадей .