Olimex ESP32-POE · базовая плата, 4 МБ Flash

Olimex · ESP32-POE, базовая версия с ESP32-WROOM-32E-N4

Плата с Ethernet и питанием по одному кабелю

Автор: SLDV LAB

Опубликовано · Обновлено

СложностьСредне
Проекты с компонентом

О МОДУЛЕ

Что делает ESP32-POE, базовая версия с ESP32-WROOM-32E-N4

Базовая Olimex ESP32-POE объединяет ESP32, Ethernet 100 Мбит/с, приём питания PoE, microSD и UEXT. Карточка описывает базовое WROOM-исполнение с PCB-антенной; варианты ISO, WROVER, EA и 16MB отличаются. Схема Rev. M1 используется как технический референс. Ревизия PCB на официальных фотографиях не установлена, поэтому перед подключением сверяйте маркировку и актуальную схему своей поставки.

ВНИМАНИЕ: у ESP32-POE нет гальванической изоляции питания PoE. Производитель запрещает одновременное подключение активного PoE и обычного USB либо внешнего источника питания. Перед подключением USB к компьютеру отключите Ethernet с PoE. Это важно для защиты платы и компьютера от замыкания через общую землю.

PoE требует совместимого источника IEEE 802.3af, для работы производитель указывает минимум 37 В на PoE-входе. Это напряжение относится к Ethernet-питанию и недопустимо на 5V, 3V3 или GPIO. Вывод 3V3 является выходом питания.

Часть GPIO уже обслуживает Ethernet, SD, кнопку и измерение питания. Выводы UEXT дублируются на EXT, их нельзя учитывать повторно. Вариант WROVER меняет назначения линий Ethernet clock и I²C, его настройки нельзя переносить сюда.

Характеристики

Модуль / микроконтроллер
ESP32-WROOM-32E-N4
Максимальная частота CPU
240 МГц
Flash
4 МБ
Внутренняя SRAM
520 КБ
PSRAM
0 МБ
Выведенные GPIO
16 разных линий на EXT1/EXT2: GPIO0–5, GPIO13–16, GPIO32–36, GPIO39. UEXT повторяет часть этих же линий. GPIO34/35/36/39 — только входы; GPIO39 связан с измерением питания, GPIO34 с кнопкой, GPIO35 может быть занят BAT_SENS.
Радиосвязь
Wi-Fi 802.11b/g/n, 2,4 ГГц; Bluetooth 4.2 Classic и BLE. Ethernet через отдельный PHY.
USB
Micro-USB через USB–UART; native USB отсутствует
Уровень логики
3.3 В
Ethernet
10/100 Мбит/с, PHY LAN8710A; RMII
PoE
IEEE 802.3af; минимум 37 В на PoE-входе
Изоляция PoE
Отсутствует; это не ESP32-POE-ISO
Ethernet в WROOM-версии
PHY address 0; MDC GPIO23; MDIO GPIO18; PHY power GPIO12; clock GPIO17 OUT
Питание периферии
Общий предел выходов 5V и 3V3 — 4 Вт по pinout; 5V до 0,8 А и 3V3 до 0,5 А, с учётом общего лимита
Интерфейс
I²C, SPI, UART, Аналоговый, Wi-Fi, Bluetooth
Питание модуля
Для стартового примера только USB 5 В, Ethernet с PoE отключён. PoE IEEE 802.3af: минимум 37 В на Ethernet-входе по Olimex; НЕ на GPIO. Возможен внешний 5V или LiPo по руководству. 3V3 — выход. Логика 3,3 В. Нет гальванической изоляции PoE: активный PoE нельзя совмещать с USB или внешним БП.

ПРАКТИКА

Подключение

Схема подключения
Контакт модуляКонтакт платыНазначение
Анод внешнего светодиода через резистор 1 кОмGPIO32EXT2: GPIO32, свободная линия по pinout WROOM-версии. Запитывать для примера только USB, PoE отключить.
Катод внешнего светодиодаGNDОбщая земля. Светодиод и резистор не входят в плату.
Кабель данных компьютераMicro-USBВ примере используйте единственный источник питания: USB. Внешние 5V/3V3 не подключать.

Подходит для ESP32. Выберите контакты по документации своей платы.

ВАШ ПРОЕКТ · ВАШ ДАТЧИК

Интегрируйте модуль с ChatGPT

Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.

Помоги интегрировать ESP32-POE, базовая WROOM-версия; reference Rev. M1 в мой проект. Сначала уточни маркировку модуля, ревизию платы, среду разработки и задачу. Не переноси GPIO других ESP32. Для стартового примера используй ESP-IDF v5.5.5, target esp32 и внешний светодиод на GPIO32 через 1 кОм к GND. Согласуй питание, загрузочный порт и объём Flash. Подготовь полный проект, обработку ошибок и порядок проверки. Отдельно проверь занятые USB/UART/LED/Flash/PSRAM линии и strapping pins. Не утверждай, что код проверен на устройстве. Для беспроводной части выбери поддерживаемый стек и проверь совместимость именно этого чипа.

Библиотеки

Установите библиотеку для своей среды и откройте пример из её документации.

Что именно прописать

ESP-IDF
v5.5.5

Версия API и target проверены по официальной документации. Компиляция и аппаратный тест в этой подготовке не выполнялись.

Target
esp32

idf.py set-target esp32

Flash size
4 MB

Размер конкретного исполнения; выберите в Serial flasher config и согласуйте таблицу разделов.

LED GPIO
32

EXT2: GPIO32, свободная линия по pinout WROOM-версии. Запитывать для примера только USB, PoE отключить.

Serial monitor
115200

Подключение через USB–UART; PORT замените фактическим последовательным портом.

main/main.c · внешний светодиод

cpp
#include <stdint.h>
#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/gpio.h"
#include "esp_err.h"

#define LED_GPIO GPIO_NUM_32

void app_main(void)
{
    const gpio_config_t config = {
        .pin_bit_mask = 1ULL << LED_GPIO,
        .mode = GPIO_MODE_OUTPUT,
        .pull_up_en = GPIO_PULLUP_DISABLE,
        .pull_down_en = GPIO_PULLDOWN_DISABLE,
        .intr_type = GPIO_INTR_DISABLE
    };
    ESP_ERROR_CHECK(gpio_config(&config));
    int level = 0;
    while (1) {
        ESP_ERROR_CHECK(gpio_set_level(LED_GPIO, level));
        printf("External LED GPIO%d = %d\n", (int)LED_GPIO, level);
        level = !level;
        vTaskDelay(pdMS_TO_TICKS(500));
    }
}

Полный исходный файл приложения ESP-IDF v5.5.5 для ESP32-POE, базовая WROOM-версия; reference Rev. M1; не автономный Arduino-скетч. Нужны два CMakeLists.txt ниже. GPIO32 подключается только к LED через 1 кОм. Код проверен по API, без компиляции и аппаратного запуска.

CMakeLists.txt · корень проекта

text
cmake_minimum_required(VERSION 3.16)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(board_led)

Поместите рядом с каталогом main.

main/CMakeLists.txt

text
idf_component_register(SRCS "main.c" INCLUDE_DIRS "." REQUIRES esp_driver_gpio)

Драйвер GPIO входит в ESP-IDF; сторонние библиотеки не нужны.

Сборка, прошивка и проверка

text
idf.py set-target esp32
idf.py menuconfig
idf.py build
idf.py -p PORT flash monitor

В menuconfig выберите указанный размер Flash. Затем проверьте мигание и строку состояния в консоли. При ESP_ERROR_CHECK приложение остановится с диагностикой. Если порт не найден, проверьте кабель данных, USB–UART и режим BOOT/RESET; не подключайте случайные GPIO к питанию.

Проекты с этим компонентом

Все проекты

Связанные проекты пока не опубликованы.

Связанные материалы и компоненты