Espressif inc что за устройство
ESP32-C3: первое знакомство. Заменим ESP8266?
Новая игрушка
В ноябре 2020 года Espressif анонсировала новую SoC под названием ESP32-C3. Они разослали несколько инженерных прототипов для тестирования и первого ознакомления.

Так довелось, что мне попался один из них на руки и я успел немного поиграться с ним. Надеюсь, мой краткий опыт будет интересен сообществу, так как тут есть на что посмотреть и ESP32-C3 имеет хороший шанс получить свою нишу в мире встраиваемых систем, так и в области DIY. Меня как раз больше интересует подход со стороны DIY, поэтому статья будет больше с этим уклоном.
В чём разница?
ESP32-C3 пытается занять нишу между ESP32/ESP32-S и нашим старым другом ESP8266. Даже больше хочет вытеснить ESP8266, чем быть дополнением к линейке ESP32.
Не знаю что там будет с ценами, но переход на RISC-V, упрощение периферии и прочее может сделать ESP32-C3 достаточно привлекательным, что бы он смог заменить ESP8266 полностью. В итоге мы получим достойную замену старичку, с которым мы вместе с 2014 года.
В таблице ниже я привёл основные отличия ESP32-C3 от предыдущих ESP32 и ESP32-S2. Так же у Espressif недавно был анонсирован ESP32-S3 с двумя ядрами, но я пока не буду его приводить ниже в силу отсутствия его в широкой продаже.
Количество ядер CPU
Как ESP8266, но не все выводы такие же
DevKit плата
ESP32-C3 приехал ко мне в виде платы ESP32-C3-DevKitM-1, на которой установлен модуль ESP32-C3-Mini-1 со встроенной 4 МБ флеш-памятью.

Так же на этой плате стоит USB-Serial конвертер CP2102 для подключения и прошивки по USB. На GPIO подключен RGB светодиод WS2812.
Сам модуль ESP32-C3-Mini-1 физически по размеру заметно меньше того же ESP-12E на базе ESP8266. И в то же время ESP32-C3 имеет намного больше возможностей.
«Engineering Sample Notes»
С платой была одностраничное приложение с некоторыми пометками.
Например, там написано, что потребление на DevKit’е ещё не достаточно оптимизировано и потому не рекомендуется для оценки в Deep-sleep режиме.
Так же сказано, что в данной версии чипа поддержка USB Serial/JTAG отсутствует, но она будет присутствовать в финальной версии.
Текущая версия ESP-IDF в процесс работы по добавлению поддержки ESP32-C3. Работа в этом направлении ведётся в ветках «master» и «release/v4.3».
Поддержка ESP-IDF
ESP-IDF является официальным фреймворком для разработки под ESP32. Сама среда поддерживает всю линейку ESP32. Большинство примеров можно собрать под Xtensa LX6/LX7, так и под RISC-V. Переключение сводится к одной команде «idf.py set-target esp32c3», которая выставляет riscv32-esp-elf- и прочие параметры в sdkconfig. Теперь после компиляции у нас готова прошивка для нового ESP32-C3.
Предварительно надо подготовить окружение в зависимости от ОС: Windows, Linux или macOS.
Установочный скрипт скачает компиляторы и дополнительные пакеты для ESP-IDF. После этого надо импортировать окружение для начала работы:
Рекомендую для проверки собрать «hello world»:
Не все примеры собираются под ESP32-C3, но Espressif активно работает над ESP-IDF для поддержки этого чипа.
CoreMark
Ради интереса запустил CoreMark бенчмарк для оценки производительности нового RISC-V ядра и сравнил эти данные с предыдущим ESP32 (к сожалению, у меня нет ESP32-S2 для более широкого сравнения).
Ниже приведены попугаи для разной частоты процессора и для общего ознакомления добавлены значения при компиляции с выключенными оптимизациями (-O0):
Я сделал измерения ESP32-C3 на 80 МГц, но значения получились ровно в два раза ниже, что и предполагалось и поэтому в таблице не привожу.
В попугаях RISC-V получился примерно на 24% быстрее. Конечно, обычные задачи, которыми мы загружаем такие микроконтроллеры будут сильно отличаться от синтетических бенчмарков, но было интересно посмотреть.
Надо так же не забывать, что ESP32 поддерживает работу на частоте 240 МГц, а у ESP32-C3 максимальная частота только 160 МГц. Так же ESP32 имеет два ядра, которые можно задействовать в зависимости от задач.
Но повышенная частота 240 МГц так же скажется на потреблении устройства. То есть, ESP32-C3 за каждый попугай будет просить меньше электронов (я не измерял потребление, но есть несколько замеров других наблюдателей).
ESP RainMaker
Вместе с этой новой платой Espressif продвигает платформу ESP RainMaker. Это некая среда, которая позволяет быстро создавать концепты и прототипы для IoT устройств.
На ESP32-C3-DevKitM-1 плате уже была прошивка ESP RainMaker, с которой можно получить общее представление об этом платформе.
Идея примерно такова:
На плате настроен обычный бинарный переключатель. При подключении платы через USB консоль мы получаем QR код, который надо отсканировать в приложении ESP RainMaker (доступно для Android и iOS) для первоначальной конфигурации настроек WiFi и добавлении этого устройства в приложение.
После этого можно управлять встроенным RGB светодиодом на плате через Espressif облако, которое находится на Amazon AWS.
ESP RainMaker SDK позволяет создавать разнообразные устройства, не только бинарный переключатель как в примере. Это может быть датчик измерения температуры или влажности, LCD экран, несколько выключателей сразу или много разных устройств вместе сразу. В последнем случае одна плата будет показана как несколько устройств в приложении.
Для того, что бы поиграться с ESP RainMaker не обязательно ждать когда можно купить ESP32-C3. Сама платформа замечательно работает на ESP32 и ESP32-S2. Для сборки прошивки достаточно иметь настроенный ESP-IDF:
В консоле появится QR код и дальше уже всё в приложении.
Выводы
Большее количество микроконтроллеров для фанатов DIY всегда позитивно, так как при большем выборе можно подобрать более подходящий МК и плату в зависимости от того, что более важно в новом проекте.
Всегда будут востребованы микроконтроллеры с большим количеством периферии, так и мелкие с хорошим соотношением потребления к производительности, но имеют достаточно памяти для разных свистелок и хотелок.
Отдельное спасибо Espressif за то, что сделали WiFi доступным для встраиваемых устройств 7 лет назад. А там и другие производители подтягиваются. Мы только в плюсе.
Порция полезной информации по ESP32 от Espressif Systems
TECHNO BROTHER
829 постов 7.7K подписчиков
Правила сообщества
1-Мы А-политическое сообщество. 2-Запрещено оскорбление: Администрации Пикабу, сообщества, участников сообщества а также родных, близких выше указанных.
Чёт не зашёл ролик, хотя вебинар то хороший.
Не понял, два минуса от сторонников ESP8266 что-ли? Он же слабее!
Прогрессивные интернет часы на ESP8266 и MAX7219
Авторское описание:
«Полностью переработанная версия Wi-Fi часов
Больше не нужно регистрироваться в погодном сервисе и получать API ключ!
Просто введите название своего города и часы всё сделают сами!
Часы показывают температуру в помещении, куры валют, а так же произвольный текст, который вы сами можете ввести когда угодно!
Присутствует регулировка яркости, автоматическое переключение в ночной и в дневной режим, время переключения яркости часы высчитывают исходя из названия города: они получают координаты населенного пункта и получают точное время восхода и заката!»
Скоро мы увидим новый модуль ESP32
Информация по чипу пока собирается. Массовое начало продаж модулей на базе этого чипа запланировано на февраль 2016 года. Цену обещают чуть выше, чем у ESP8266, но думаю китайцы на Aliexpress выгоды не упустят и цена сначала будет завышена.
Видео длинное, так как была прямая трансляция.
Но не обошлось и без минусов. По какой-то причине Espressif не дали разработчикам доступ к спецификациям и SDK самого чипа, вместо этого они написали свою обёртку над системными вызовами чипа, упаковали это в бинарные блобы с экспортированными функциями, которые и могли использовать разработчики. И всё было бы ничего, но данные блобы кишили ошибками, а по большей части экспортированных из них функций попросту не было документации и заголовочных файлов (для I2S, насколько я знаю, до сих пор нет). Но за такую цену энтузиасты не отчаивались, дизассемблировали блобы, восстанавливая по ним заголовочные файлы, патчили баги прямо в бинарных файлах. В общем было весело.
Звучит круто, но есть нюанс. Когда анонсировали ESP8266, то тоже было много обещаний, но на деле оказалось, что большая часть функционала просто не тестировалась, что-то совсем не работает, а где-то нужно городить костыли. Тем ни менее это был крутой чип, хотя бы из-за цены. Цену на новый ESP32 пока что не сообщают, и на данный момент разосланы только 200 тестовых экземпляров, один из которых мы сейчас и запустим.
В ESP32 отсутствует отдельный пин Reset, вместо него для сброса можно использовать Enable. Пин Enable болтается в воздухе, поэтому если его никуда не подключить, то чип будет беспорядочно включаться и выключаться. При логической единице на данном пине чип включается, при логическом нуле выключается. Для тестового включения достаточно подключить питание (3.3В на 3V3, землю на GND) и подключить EN к VCC. К сожалению, на плате отсутствуют какие-либо статусные светодиоды, но если всё сделано правильно, то через несколько секунд должна появиться WiFi точка с именем ESP32_AP_94000000. Пароль от неё пока неизвестен(
Процессор: двухядерный Tensilica L108 частотой до 160 MHz.
Поддерживаемые стандарты WI-FI: 802.11 b / g / n.
Поддерживаемы типы шифрования:WEP, WPA, WPA2.
Поддерживаемые режимы работы: Клиент(STA), Точка доступа(AP), Клиент+Точка доступа(STA+AP).
Поддержка Bluetooth Low Energy and Classic.
Напряжение питания 3.3в (?)
Количество GPIO: 33 (?)
Внешняя Flash память размером 512кб.
Интерфейсы: 16 ADC, 2 DAC, I2C. UART, SPI, SDIO, I2S, RMII, PWM.
Поддержка AES и SSL на аппаратном уровне.
Информация выше может быть не точной.
Ссылка на SDK и описание установки toolchain для Linux https://github.com/espressif/ESP32_RTOS_SDK
esptool32.py для прошивки модуля.
Для режима прошивки необходимо подтянуть GPIO 2 и 0 к GND. GPIO 5 к +VDD (непотверждено)
Вывод в консоль будет примерно следующий:
ets Jul 5 2015,rst cause:1, boot mode:(33)
_stack_sentry: 0x3fffe1d0, __stack: 0x40000000,
_bss_start: 0x3fffcd48, _bss_end: 0x3fffe1d0,
_data_start: 0x3fffc000, _data_end: 0x3fffc864
load 0x40040000, len 2912, room 16
load 0x3ffd8000, len 1424, room 8
load 0x3ffd8590, len 568, room 0
* hello espressif ESP32! *
* pro cpu 2nd boot is running! *
2nd boot version : 1.0
SPI Flash Size : 1MB
jump to run addr @ 0x40000
rc_cal: rc=44, wifi: 73, 73, 28, 28, bt: 98, 98
txcap: 15, 5, 3, 15, 6, 3, 15, 5, 3, 15, 5, 3,
tx_backoff:1, 5, 10, 10,
tx_gain: pa=0x1f, bbc=0x20, bbf=0x4
11606945, rxiq: amp=6, pha=4
12032391, rxiq: amp=4, pha=5
11197885, rxiq: amp=4, pha=7
16308699, rxiq: amp=8, pha=3
14541077, rxiq: amp=6, pha=2
13258235, rxiq: amp=5, pha=3
pp_task_hdl : 3ffe4af4, prio:23, stack:512
tcpip_task_hdl : 3ffe54e4, prio:20,stack:512
frc2_timer_task_hdl:3ffe8f2c, prio:22, stack:512
ESP32 RTOS SDK: 1.0.0(0394de4) compiled @ Nov 20 2015 18:57:56
[esp32_packet_softap_ssid,43]wifi mode:60 01 94 00 00 00
[esp32_udata_init,66]ok to run AP+STA mode
mode : sta(60:01:94:00:00:00) + softAP(62:01:94:00:00:00)
dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
К сожалению, мне не известен пароль от данной точки.
Бюджетные Wi-Fi-/Bluetooth-модули от Espressif: руководство по выбору

Рынок беспроводных решений стремительно растет. Беспроводные технологии применяются в быту, в медицине, на производстве, в торговле. Это стало возможным благодаря двум факторам. Если совсем недавно для создания Wi-Fi- или Bluetooth-устройства разработчику приходилось начинать все с нуля и использовать «голую» микросхему приемопередатчика, то теперь к его услугам предлагаются не только чипы, но и готовые модули. Такие модули содержат в своем составе все необходимое для реализации беспроводного канала, что существенно упрощает процесс разработки. С другой стороны, упрощение разработки значительно повысило интерес к беспроводным технологиям со стороны широкого круга пользователей. Причем речь идет не только о профессиональных разработчиках, но и о радиолюбителях.
Сейчас на рынке беспроводных встраиваемых решений присутствует несколько крупных игроков. Среди них особенно стоит отметить компании Texas Instruments, STMicroelectronics, Microchip. Эти гиганты выпускают широкий спектр беспроводных микросхем и модулей с поддержкой различных беспроводных стандартов, в том числе Wi-Fi или Bluetooth. При использовании продукции этих компаний разработчики получают множество преимуществ:
Вместе с тем, на рынке присутствуют и менее известные производители, которые специализируются именно на беспроводных встраиваемых решениях и могут предложить разработчикам такой же высокий уровень комфорта, но за меньшие деньги. В качестве примера можно привести компанию Espressif Systems.
Компания Espressif Systems была основана еще в 2008 году в Китае, и только после пяти лет упорной работы представила первую беспроводную SoC-микросхему для Wi-Fi-приложений – ESP8089. Уже в следующем году компания выпустила Wi-Fi-микросхему ESP8266EX, которая стала чрезвычайно популярной среди разработчиков. В 2016 году, закрепляя успех, компания Espressif Systems представила новое флагманское семейство ESP32, которое стало одним из первых интегрированных решений с одновременной поддержкой Wi-Fi и Bluetooth. Таким образом, за десять лет компания выросла из небольшого стартапа до многонационального пионера IoT в полупроводниковой промышленности и за период с 2014 по 2018 год выпустила более 100 миллионов чипов.
Среди преимуществ продукции Espressif Systems можно отметить:
Для промышленного оборудования крайне важно, чтобы комплектующие имели гарантированный длительный жизненный цикл. Это касается и электроники. Компания Espressif официально гарантирует для своей продукции следующие жизненные циклы:
Исходя из этих данных, разработчики могут выбирать длительность жизненного цикла своих устройств.
Беспроводные SoC-микросхемы производства Espressif Systems
В настоящее время компания Espressif Systems выпускает два типа интегральных беспроводных SoC-микросхем:
Все микросхемы поставляются в корпусном исполнении QFN 5×5 мм, за исключением чипа ESP32-D0WDQ6, который имеет корпусное исполнение QFN 6×6 мм (рисунок 1).
Рис. 1. Беспроводные микросхемы Espressif Systems поставляются в корпусном исполнении QFN 5×5 мм или QFN 6×6 мм
Между собой микросхемы отличаются типом процессора, объемом встроенной Flash-памяти, набором периферии и диапазоном питающих напряжений. Для наглядности в таблице 1 представлены основные отличительные особенности каждого из чипов.
Таблица 1. Сравнительная таблица интегральных беспроводных микросхем Espressif Systems
| Наименование | ESP32-D0WD | ESP32-D0WDQ6 | ESP32-D2WD | ESP32-S0WD | ESP8266EX | ESP8285 | |
|---|---|---|---|---|---|---|---|
| Процессор | Двухъядерный 32-битный процессор Xtensa® 240 МГц 600 DMIPS | Двухъядерный 32-битный процессор Xtensa® 240 МГц 600 DMIPS | Двухъядерный 32-битный процессор Xtensa® 160 МГц 400 DMIPS | Одноядерный 32-битный процессор Xtensa® 160 МГц 200 DMIPS | Одноядерный 32-битный процессор Tensilica L106 160 МГц | ||
| ОЗУ | 520 кбайт SRAM, 448 кбайт ROM, 16 кбайт SRAM в RTC | 520 кбайт SRAM, 448 кбайт ROM, 16 кбайт SRAM в RTC | 520 кбайт SRAM, 448 кбайт ROM, 16 кбайт SRAM в RTC | 520 кбайт SRAM, 448 кбайт ROM, 16 кбайт SRAM в RTC | 160 кбайт RAM | ||
| Flash, Мбайт | – | – | 2 | – | – | 1 | |
| Число выводов | 48 | 48 | 48 | 48 | 32 | ||
| Wi-Fi | Протокол | 802.11b/g/n (HT40) | 802.11b/g/n (HT20) | ||||
| Мощность передатчика | 802.11b: +20,5 дБм, 802.11g: +17 дБм, 802.11n: +18 дБм | 802.11b: +20 дБм, 802.11g: +17 дБм, 802.11n: +14 дБм | |||||
| Чувствительность приемника | DSSS: 98 дБм, 1 Мбит/с, CCK: 91 дБм 1 Мбит/с, OFDM: 93 дБм, 6 Мбит/с, OFDM: 75 дБм, 54 Мбит/с, HT20: 93 дБм, MCS0, HT20: 73 дБм, MCS7, HT40: 90 дБм, MCS0, HT40: 70 дБм, MCS7, MCS32: 89 дБм | 802.11b: -91 дБм (11 Мбит/с), 802.11g: -75 дБм (54 Мбит/с), 802.11n: -72 дБм (MCS7) | |||||
| Шифрование | AES, SHA-2, CCMP (CBC-MAC, counter mode), TKIP (MIC, RC4), WAPI (SMS4), WEP (RC4) и CRC | WEP(RC4)/TKIP(MIC, RC4)/AES, CCMP (CBC-MAC, counter mode), WAPI (SMS4) и CRC | |||||
| Bluetooth | Протокол | Bluetooth v4.2 BR/EDR и BLE | – | ||||
| Мощность передатчика, дБм | +12 | – | |||||
| Чувствительность приемника, дБм | -94 (0,1% BER) | – | |||||
| Коммуникационные интерфейсы | UART/SDIO/SPI/I²C/I²S/IR/ Ethernet/ CAN | UART/SDIO/SPI/I²C/I²S/IR | |||||
| Периферия | GPIO/АЦП/ЦАП/ШИМ/датчик Холла/контроллер сенсорных функций | GPIO/АЦП/ШИМ | |||||
| Корпус, мм | QFN, 5×5 | QFN, 6×6 | QFN, 5×5 | QFN, 5×5 | QFN, 5×5 | ||
| Uпит, В | 2,3…3,6 | 2,3…3,6 | 2,3…3,6 | 2,3…3,6 | 2,5…3,6 | 2,7…3,6 | |
| Траб, °С | -40…125 | -40…125 | -40…125 | -40…125 | -40…125 | ||
Wi-Fi-микросхема ESP8266 была выпущена на рынок в 2014 году и стала первым крупным успехом компании Espressif Systems. ESP8266 может работать в качестве самостоятельного беспроводного Wi-Fi-контролера либо выступать в роли Wi-Fi-адаптера для управляющего процессора.
ESP8266 представляет собой систему-на-кристалле (SoC или СнК), которая состоит из двух основных доменов: высокочастотного и цифрового (рисунок 2).
Рис. 2. ESP8266 состоит из двух доменов: высокочастотного и цифрового
ВЧ-домен включает модуляторы, генераторы, согласующий трансформатор, силовой ключ и схемы фазовой автоподстройки частоты. Таким образом, практически все необходимые элементы для создания беспроводного Wi-Fi-канала, за исключением антенны, уже присутствуют в составе ESP8266. Характеристики приемника и передатчика Wi-Fi представлены в таблице 1.
Цифровой домен ESP8266 построен на базе 32-битного RISC-процессора Tensilica L106 с рабочей частотой до 160 МГц. Процессор взаимодействует с памятью и периферией с помощью трех шин: iBus, dBus и AHB. На борту у ESP8266 присутствует 160 кбайт ОЗУ.
При работе под управлением внешнего контроллера взаимодействие с ESP8266 производится с помощью интерфейса UART или SPI/SDIO. Если предполагается, что ESP8266 будет работать автономно, то для хранения пользовательской программы потребуется внешняя Flash, которая подключается по SPI. При этом существует возможность использования не только микросхем памяти Single-SPI, но и Double-SPI, а также Quad-SPI. Максимальный объем внешней Flash-памяти составляет 16 Мбайт.
При автономной работе большим плюсом ESP8266 является встроенная периферия:
Создатели ESP8266 четко понимали, что одной из важнейших проблем, стоящих перед разработчиками беспроводных устройств, является снижение потребления. При питании от аккумулятора важно обеспечить малое среднее потребление и максимально широкий диапазон напряжений питания. Микросхема ESP8266 способна работать с напряжением питания 2,5…3,6 В. Для уменьшения потребления предлагается использовать различные режимы:
С момента начала выпуска микросхема ESP8266 нашла применение в самых различных областях: в бытовой технике и автоматике, системах умного освещения и промышленной автоматики, в автономных датчиках, пультах управления, системах безопасности, игрушках и так далее.
Wi-Fi-микросхема ESP8285 – является своего рода модернизацией микросхемы ESP8266. Функционал и структурная схема ESP8285 в общих чертах остались без изменения: те же возможности Wi-Fi и то же процессорное ядро. Однако есть несколько важных отличий.
В первую очередь стоит отметить, что в составе ESP8285 появилась встроенная Flash-память объемом 1 Мбайт для хранения пользовательской программы. При этом для связи с Flash используется Dual-SPI. Такой подход явно ориентирован на создание сверхкомпактных решений с дефицитом свободного места, в которых нет возможности размещения внешней микросхемы памяти. Кроме того, уменьшение занимаемой площади и сокращение числа компонентов позволяет снизить стоимость конечного устройства.
По сравнению с ESP8266, периферия ESP8285 не претерпела изменений.
Потребление ESP8285 также осталось на уровне ESP8266, однако диапазон питающих напряжений сузился до 2,7…3,6 В. Это стоит иметь в виду.
Области применения для ESP8285 те же, что и у ESP8266.
Семейство Wi-Fi-/Bluetooth-микросхем ESP32. После волны популярности ESP8266 компания Espressif Systems решила закрепить успех и выпустила целое семейство новых беспроводных микросхем – ESP32. В первую очередь отметим, что микросхемы ESP32 поддерживают сразу два самых популярных беспроводных протокола: Wi-Fi и Bluetooth. Кроме того, благодаря переходу на технологический процесс 40 нм, удалось существенно увеличить степень интеграции, расширить функционал и снизить потребление.
При анализе структуры ESP32 можно увидеть все те же два основных домена: цифровой и высокочастотный (рисунок 3). Однако состав доменов существенно изменился. Появился встроенный Bluetooth-контроллер и сопутствующие ему блоки. ESP32 поддерживает Bluetooth v4.2 BR/EDR, а также BLE. Характеристики Wi-Fi примерно соответствуют показателям ESP8266. Характеристики Bluetooth представлены в таблице 1.
Рис. 3. Блок-схема микросхем ESP32
Еще больше изменений можно наблюдать в структуре цифрового домена.
Кроме того, память ESP32 может быть расширена за счет внешних микросхем ОЗУ (до 4 Мбайт SRAM) и Flash (до 16 Мбайт).
Необходимо отдельно сказать о потреблении ESP32. По сравнению с ESP8266 диапазон питающих напряжений был расширен до 2,3…3,6 В. Кроме того, разнообразие рабочих режимов существенно возросло, что дает разработчикам больше пространства для маневра.
Потребление в активном режиме по-прежнему зависит от работы беспроводных интерфейсов (таблица 2). Потребление ESP32 в режиме Modem-sleep зависит от числа процессорных ядер и рабочей частоты (таблица 3). Режим Deep-sleep разделен на три подрежима, которые отличаются состоянием и активностью малопотребляющего ULP-сопроцессора. Режим Hibernation подразумевает отключение всех блоков микросхемы за исключением RTC. Это самый малопотребляющий режим ESP32, в нем питающий ток составляет всего 5 мкА. Стоит напомнить, что в микросхемах ESP8266 самым экономным режимом был Deep-sleep с потреблением 20 мкА.
Таблица 2. Типовое потребление ESP32 в активном режиме
| Режим | Потребление, мА |
|---|---|
| Передача 802.11b, DSSS 1 Мбит/с, POUT = +19,5 дБм | 240 |
| Transmit 802.11b, OFDM 54 дБм POUT = +16 дБм | 190 |
| Transmit 802.11g, OFDM MCS7, POUT = +14 дБм | 180 |
| Прием 802.11b/g/n | 95…100 |
| Передача BT/BLE, POUT = 0 дБм | 130 |
| Прием BT/BLE | 95…100 |
Таблица 3. Типовое потребление ESP32 в режимах пониженного потребления
| Режим | Описание | Потребление | ||
|---|---|---|---|---|
| Active | Зависит от активности радиопередатчика | см. табл. 2 | ||
| Modem-sleep | Процессор активен | 240 МГц | Двухъядерный | 30…68 мА |
| Одноядерный | – | |||
| 160 МГц | Двухъядерный | 27…44 мА | ||
| Одноядерный | 27…34 мА | |||
| 80 МГц | Двухъядерный | 20…31 мА | ||
| Одноядерный | 20…25 мА | |||
| Light-sleep | – | 0,8 мА | ||
| Deep-sleep | Активен малопотребляющий сопроцессор ULP | 150 мкА | ||
| Мониторинг датчиков | 100 мкА (длительность цикла 1%) | |||
| RTC + память RTC | 10 мкА | |||
| Hibernation | RTC | 5 мкА | ||
| Power off | На вывод CHIP_PU подан низкий уровень, питание чипа отключено | 0,1 мкА | ||
Важной задачей при создании современных беспроводных систем становится безопасность. Огромным плюсом ESP32 является наличие аппаратных блоков шифрования AES, SHA, RSA и ECC. Как известно, кодирование является достаточно затратным мероприятием с точки использования вычислительных ресурсов процессора. Благодаря встроенным криптографическим ускорителям центральный процессор ESP32 освобождается от рутинных операций и может заниматься чем-то более полезным.
В настоящий момент семейство ESP32 объединяет четыре модели:
Благодаря расширению функционала и появлению поддержки Bluetooth перечень приложений для ESP32 стал еще более разнообразным, чем у ESP8266: IoT-хабы, камеры наблюдения, аудиоприложения и так далее.
Микросхемы ESP8266/ESP8285/ESP32 отличаются высоким уровнем интеграции и объединяют на одном кристалле огромное число блоков и элементов. Тем не менее, это не освобождает разработчиков от необходимости использования внешних компонентов. Так, например, для подключения ESP32 потребуется около 20 внешних компонентов. К этому стоит прибавить необходимость трассировки печатной платы. Таким образом, для разработчиков, далеких от проектирования ВЧ-устройств, более простым способом организации беспроводного канала Wi-Fi или Bluetooth будет выбор готовых модулей. Для удобства в таблице 4 представлены модули и отладочные наборы, соответствующие микросхемам, рассмотренным выше. О самих модулях речь пойдет в следующем разделе.
Таблица 4. Соответствие между модулями и беспроводными микросхемами Espressif Systems
| Микросхема | Модуль | Отладочная плата |
|---|---|---|
| ESP32-D0WD | ESP32-WROOM-32D, ESP32-WROOM-32U, ESP32-WROVER-B, ESP32-WROVER-IB | ESP32-DevKitC |
| ESP32-D0WDQ6 | ESP32-WROOM-32, ESP32-WROVER, ESP32-WROVER-I | ESP32-DevKitC, ESP-WROVER-KIT, ESP32-LyraT, ESP32-LyraTD-MSC |
| ESP32-D2WD | – | – |
| ESP32-S0WD | ESP32-SOLO-1 | ESP32-DevKitC |
| ESP8266EX | ESP-WROOM-02, ESP-WROOM-02D, ESP-WROOM-02U, ESP-WROOM-S2 | ESP8266-DevKitC, ESP-Launcher |
| ESP8285 | – | – |
Готовые беспроводные решения от Espressif Systems
Готовые беспроводные модули – идеальное решение для радиолюбителей, начинающих разработчиков, а также для коммерческих и прочих приложений, требующих быстрого выхода на рынок с минимальными затратами на разработку. Компания Espressif Systems предлагает широкий выбор Wi-Fi- и Wi-Fi-/Bluetooth-модулей (таблица 5). Функционал модулей в первую очередь определяется используемой беспроводной микросхемой. Кроме того, модули отличаются объемом Flash и ОЗУ, а также типом антенны. Дадим краткую характеристику каждому из них.
Таблица 5. Готовые беспроводные модули от Espressif Systems
| Наименование | Микросхема | Габариты, мм | Число выводов | Flash, мБайт | PSRAM, мБайт | Антенна | Отладочная плата |
|---|---|---|---|---|---|---|---|
| ESP32-WROOM-32 | ESP32-D0WDQ6 | 18×25,5×3,1 | 38 | 4 | – | PCB | ESP32-DevKitC |
| ESP32-WROOM-32D | ESP32-D0WD | 18×25,5×3,1 | 38 | 4 | – | PCB | ESP32-DevKitC |
| ESP32-WROOM-32U | ESP32-D0WD | 18×19,2×3,2 | 38 | 4 | – | U.FL | ESP32-DevKitC |
| ESP32-WROVER | ESP32-D0WDQ6 | 18×31,4×3,3 | 38 | 4 | 8 | PCB | ESP-WROVER-KIT |
| ESP32-WROVER-I | ESP32-D0WDQ6 | 18×31,4×3,3 | 38 | 4 | 8 | U.FL | – |
| ESP32-WROVER-B | ESP32-D0WD | 18×31,4×3,3 | 38 | 4 | 8 | PCB | ESP32-DevKitC |
| ESP32-WROVER-IB | ESP32-D0WD | 18×31,4×3,3 | 38 | 4 | 8 | U.FL | ESP32-DevKitC |
| ESP32-PICO-D4 | ESP32 | 7×7×0,94 | 48 | 4 | – | N/A | ESP32-PICO-KIT |
| ESP32-SOLO-1 | ESP32-S0WD | 18×25,5×3,1 | 38 | 4 | – | PCB | ESP32-DevKitC |
| ESP-WROOM-02 | ESP8266EX | 18×20×3 | 18 | 2 | – | PCB | ESP-Launcher |
| ESP-WROOM-02D | ESP8266EX | 18×20×3,2 | 18 | 2 | – | PCB | ESP8266-DevKitC |
| ESP-WROOM-02U | ESP8266EX | 18×14,3×3,2 | 18 | 2 | – | U.FL | ESP8266-DevKitC |
| ESP-WROOM-S2 | ESP8266EX | 16×23×3 | 20 | 2 | – | PCB | – |
ESP32-PICO-D4 – единственный корпусной модуль «микросхемного» типа (рисунок 4). В отличие от рассмотренных выше SoC-микросхем, модуль ESP32-PICO-D4 представляет собой SiP-микросхему. То есть элементы в модуле размещены не на одном, а на разных кристаллах. В состав ESP32-PICO-D4 входят все те же компоненты, что и в SoC ESP32, в том числе двухъядерный процессор, память и периферия, однако к этому добавлена память Flash объемом 4 Мбайт, развязывающие конденсаторы, фильтрующие индуктивности, двунаправленный защитный TVS-диод и кварцевый резонатор 40 МГц. Модуль имеет корпусное исполнение QFN-48 с размерами 7x7x0,94 мм.
Рис. 4. SiP-микросхема ESP32-PICO-D4
ESP32-PICO-D4 позволяет сократить перечень используемых компонентов и значительно уменьшить место, занимаемое на печатной плате. Это может быть весьма полезным для мобильных приложений с жестким дефицитом свободного места.
Группа Wi-Fi-модулей на базе микросхемы ESP8266 объединяет четырех представителей (рисунок 5).
ESP-WROOM-02D – модуль, который отличается от ESP-WROOM-02 наличием оптимизированного ВЧ-тракта. Если в ESP-WROOM-02 используется согласующая цепочка типа CCL, то в ESP-WROOM-02D на выходе ANT присутствует согласующая цепочка CLC. Габариты ESP-WROOM-02D были незначительно увеличены: 18x20x3,20 мм. В остальном модули идентичны. Это касается габаритных размеров, объема памяти и температурного диапазона.
ESP-WROOM-02U – модуль, который по своим характеристикам идентичен ESP-WROOM-02D, но имеет два важных отличия:
При этом стоит отметить аналогичное расположение выводов.
ESP-WROOM-S2 – модуль с печатной антенной, который может выступать в роли ведомого SDIO/SPI с рабочей частотой SPI до 8 Мбит/с. Кроме микросхемы ESP8266, на борту у модуля присутствует SPI-Flash объемом 2 Мбайт. Габариты ESP-WROOM-S2 составляют 16x23x2,80 мм.
Рис. 5. Внешний вид Wi-Fi-модулей на базе микросхемы ESP8266
Группа Wi-Fi-/Bluetooth-модулей на базе микросхемы ESP32 объединяет восемь представителей (рисунок 6).
ESP32-SOLO-1 – Wi-Fi+BT+BLE-модуль, построенный на базе одноядерной микросхемы ESP32-S0WD. Как отмечалось выше, ESP32-S0WD – младший представитель семейства ESP32. Несмотря на это, ESP32-SOLO-1 может применяться в широком спектре приложений – от малопотребляющих датчиков (наиболее оптимальный вариант), до приложений с беспроводной передачей звука.
Микросхема ESP32-S0W работает под управлением freeRTOS и использует стек LwIP.
Данный модуль отличается встроенной печатной антенной, наличием 4 Мбайт SPI-Flash и имеет габариты 18×25,5×3,10 мм.
ESP32-WROOM-32 – базовый модуль, использующий высокопроизводительную микросхему ESP32-D0WDQ6 с двухъядерным процессором и максимальной рабочей частотой до 240 МГц. Микросхема ESP32-D0WDQ6 работает под управлением freeRTOS и использует стек LwIP.
ESP32-WROOM-32D – модификация модуля ESP32-WROOM-32 с печатной антенной и оптимизированным ВЧ-трактом. Остальные характеристики остались без изменения, в том числе габариты, объем Flash и диапазон рабочих температур.
ESP32-WROOM-32U – модификация модуля ESP32-WROOM-32D с U.FL-разъемом для подключения внешней антенны. Из-за отсутствия печатной антенны габариты модуля были уменьшены до 18×19,2×3,10 мм.
ESP32-WROVER-I – модификация модуля ESP32-WROVER с разъемом IPEX для подключения внешней антенны (аналог U.FL-разъема).
ESP32-WROVER-B – вариант ESP32-WROVER с оптимизированным ВЧ-трактом.
ESP32-WROVER-IB – модификация модуля ESP32-WROVER-B с разъемом IPEX для подключения внешней антенны.
Рис. 6. Внешний вид Wi-Fi + BT + BLE-модулей на базе микросхемы ESP32
Для того чтобы быстро ознакомиться с возможностями модулей и микросхем Espressif Systems, можно воспользоваться готовыми отладочными наборами.
Отладочные наборы от Espressif Systems
Компания Espressif Systems предлагает различные отладочные наборы, которые помогают максимально быстро ознакомиться с возможностями и особенностями беспроводных микросхем и модулей (таблица 6):
Таблица 6. Отладочные наборы для беспроводных модулей и SoC-микросхем Espressif Systems
| Наименование | Flash/PSRAM | Особенности | Модуль/чип |
|---|---|---|---|
| ESP-EYE | 4 Мбайт Flash + 8 Мбайт PSRAM | 2 Мп камера, micro-USB, кнопки, светодиоды | ESP32 |
| ESP32-PICO-KIT | 4 Мбайт Flash | I/O, USB, кнопки, светодиоды | ESP32-PICO-D4 |
| ESP-WROVER-KIT | 4 Мбайт Flash + 4 Мбайт PSRAM | I/O, JTAG, USB, разъем для камеры, Micro SD Card, LCD, кнопки, светодиоды | ESP32-WROVER |
| ESP-WROVER-KIT-VB | 4 Мбайт Flash + 8 Мбайт PSRAM | I/O, JTAG, USB, разъем для камеры, LCD, UART, SPI, MicroSD Card, кнопки, светодиоды | ESP32-WROVER-B |
| ESP32-DevKitC | 4 Мбайт Flash | I/O, USB, кнопки, светодиоды | ESP32-WROOM-32, ESP32-WROOM-32D, ESP32-WROOM-32U, ESP32-SOLO-1, ESP32-WROVER-B, ESP32-WROVER-IB |
| ESP32-LyraTD-MSC | 4 Мбайт Flash + 4 Мбайт PSRAM | USB, I²S, SPI, разъем для наушников, динамик, Micro SD Card, JTAG, кнопки, светодиоды | ESP32-WROVER |
| ESP32-LyraT | 4 Мбайт Flash + 4 Мбайт PSRAM | Micro SD Card, аудиовыход, USB, динамик, кнопки, сенсорные кнопки, светодиоды | ESP32-WROVER |
| ESP-Launcher | 4 Мбайт SPI Flash + 4 Мбайт HSPI Flash | I/O, USB, кнопки, светодиоды | ESP8266EX |
| ESP8266-DevKitC | 2 Мбайт Flash | HSPI, PWM, IR, I/O, АЦП, UART, I²S, I²C, USB, кнопки | ESP-WROOM-02D, ESP-WROOM-02U |
| ESP32-Sense Kit | 4 Мбайт Flash | I/O, USB, ESP-Prog, сенсорные кнопки, светодиоды | ESP32-WROOM-32 |
| ESP-Prog | – | I/O, USB, разъем для наушников, кнопки, светодиоды, кнопки, светодиоды | ESP32-Sense Kit |
| ESP32-MeshKit-Sense | 4 Мбайт Flash | I/O, USB, LCD, ESP-Prog, кнопки, светодиоды | ESP32-WROOM-32 |
Дадим краткую характеристику отладочным наборам на базе ESP32 (рисунок 7). Все эти наборы подразумевают питание и подключение к ПК с помощью USB. В качестве альтернативы могут использоваться источники питания 5/3,3 В, подключаемые к штыревым разъемам. Для создания программ предлагается бесплатная среда ESP-IDF.
ESP-EYE – отладочная плата, предназначенная для создания приложений с распознаванием и обработкой звука. ESP-EYE, в частности, может использоваться в различных IoT-устройствах. В состав платы входит беспроводная микросхема ESP32, видеокамера 2 Мп, PSRAM 8 Мбайт, Flash 4 Мбайт. Отладка производится с помощью Micro-USB. Для взаимодействия с пользователем на плате предусмотрены кнопки и светодиоды.
ESP32-PICO-KIT – отладочный набор, позволяющий ознакомиться с возможностями SiP-микросхемы ESP32-PICO-D4. Кроме самой беспроводной микросхемы на плате расположены Flash 4 Мбайт, кнопки, светодиоды, разъем Micro-USB для отладки. Стоит отметить, что данный набор может использоваться как автономно, так и в составе более сложной системы, так как все выводы микросхемы ESP32-PICO-D4 доступны через разъемы, расположенные по бокам платы.
ESP-WROVER-KIT – отладочная плата, предназначенная для создания высокопроизводительных устройств на базе модулей ESP32-WROVER. Плата отличается богатым набором периферии: LCD, RGB-светодиоды, Micro SD Card, разъем для подключения камеры, по 4 Мбайт Flash и PSRAM. Для загрузки и отладки программ предлагается использовать JTAG. Подключение по USB осуществляется с помощью моста USB-UART FT2232HL.
Возможности ESP-WROVER-KIT могут быть расширены за счет подключения дополнительных внешних устройств.
ESP-WROVER-KIT-VB – аналог платы ESP-WROVER-KIT, но с модулем ESP32-WROVER-B.
ESP32-DevKitC – набор начального уровня для работы с семейством модулей ESP32-WROOM. Существуют исполнения отладочной платы для модулей ESP32-WROOM-32, ESP32-WROOM-32D, ESP32-WROOM-32U, ESP32-SOLO-1, ESP32-WROVER-B, ESP32-WROVER-IB. Плата имеет минимальный набор дополнительных элементов: 4 Мбайт Flash, кнопки, светодиоды, разъем Micro-USB для отладки.
ESP32-LyraTD-MSC – отладочная плата для создания аудиоприложений на базе модулей ESP32-WROVER. Плата поддерживает различные аудиоформаты: AAC, FLAC, OPUS и OGG. Она также может работать с DuerOS и с сервисом Alexa Voice Service от Amazon.
ESP32-LyraT – еще одна отладочная плата для аудиоприложений на базе модулей ESP32-WROVER. Данная плата представляет собой практически готовое решение для производительных и беспроводных аудиоустройств.
Рис. 7. Отладочные наборы для создания Wi-Fi + BT/BLE-устройств на базе микросхем и модулей ESP32
В настоящий момент отладочные наборы для Wi-Fi-микросхем и модулей на базе ESP8266 представлены двумя платами (рисунок 8): ESP-Launcher и ESP8266-DevKitC.
ESP-Launcher – отладочный набор начального уровня с ограниченным набором периферии (4 Мбайт SPI-Flash + 4 Мбайт HSPI-Flash, кнопки, светодиоды, разъем Micro-USB для отладки). Тем не менее, стоит отметить, что все выводы ESP8266 соединены с внешними колодками, что позволяет расширить функционал отладочной платы по желанию пользователя.
ESP8266-DevKitC – отладочный набор начального уровня для ознакомления и работы с модулями ESP-WROOM-02D и ESP-WROOM-02U.
Рис. 8. Отладочные наборы для Wi-Fi-микросхем и модулей на базе ESP8266
Так как одним из целевых сегментов для микросхем и модулей Espressif являются датчики и сенсорные приложения, то в отдельную группу стоит отнести специализированные отладочные платы с датчиками и сенсорными кнопками (рисунок 9):
Рис. 9. Отладочные наборы для создания Wi-Fi + BT/BLE-устройств с датчиками
Рис. 10. Отладчик ESP-Prog
Отдельно нужно сказать об отладчике ESP-Prog, который необходим для программирования и отладки беспроводных микросхем и модулей производства Espressif (рисунок 10). В отладчике применяется USB/UART-мост FT2232HL. При этом для отладки ESP32 используется JTAG, а для ESP8266 – последовательный интерфейс.
Дополнительные материалы
Заключение
Компания Espressif Systems предлагает широкий выбор беспроводных микросхем и готовых модулей для создания Wi-Fi-устройств, а также – комбинированных Wi-Fi + BT/BLE-устройств. Среди преимуществ продукции Espressif Systems можно отметить малую стоимость, высокую надежность, гарантированный длительный жизненный цикл, что важно для промышленных устройств, наличие доступных отладочных средств и развитую систему информационной поддержки разработчиков: форумы, открытые проекты, доступную документацию и так далее.

















