board dev studio

Verified 2026-11

m5stack Unit PoE-P4

ESP32-P4 controller with 16 MB flash, 32 MB PSRAM, an IP101GRI 10/100 PHY, 802.3at PoE up to 6 W, two USB-C ports, a 24-pin MIPI DSI FPC with touch and a 24-pin MIPI CSI FPC, plus HY2.0, SDIO/ISP and 16-pin Hat2-Bus headers; $21.50 USD as measured at M5Stack.

Place this board on a carrier in the editor →

Logic level3.3 V

Part & documents

Data sheetData sheet →
Sourceshop.m5stack.com/products/unit-poe-with-esp32-p4 →

Specs

MCUEspressif ESP32-P4NRW32

Pinout

35 pads, as the vendor numbers them.

#NameFunctionSignals
1GNDHY2.0-4P PORT.CUSTOM vendor pad 1 (Black wire)
25VHY2.0-4P PORT.CUSTOM vendor pad 2 (Red wire)
3G53HY2.0-4P PORT.CUSTOM vendor pad 3 (Yellow wire)
4G54HY2.0-4P PORT.CUSTOM vendor pad 4 (White wire)
5G13SDIO & ISP left row vendor pad 1
6G12SDIO & ISP left row vendor pad 2
7G11SDIO & ISP left row vendor pad 3
8G10SDIO & ISP left row vendor pad 4
9G9SDIO & ISP left row vendor pad 5
10G8SDIO & ISP left row vendor pad 6
11G27SDIO & ISP left row vendor pad 7, USB1_DP
12G26SDIO & ISP left row vendor pad 8, USB1_DM
135VSDIO & ISP left row vendor pad 9
14GNDSDIO & ISP right row vendor pad 1
15G35SDIO & ISP right row vendor pad 2, BOOT
16RSTSDIO & ISP right row vendor pad 3
17G38SDIO & ISP right row vendor pad 4, UART0_RX
18G37SDIO & ISP right row vendor pad 5, UART0_TX
193V3SDIO & ISP right row vendor pad 6
20GNDHat2-Bus vendor pad 1
21G44Hat2-Bus vendor pad 2
225VHat2-Bus vendor pad 3
23G43Hat2-Bus vendor pad 4
24G21Hat2-Bus vendor pad 5
25G42Hat2-Bus vendor pad 6
26G20Hat2-Bus vendor pad 7
27G41Hat2-Bus vendor pad 8
28G19Hat2-Bus vendor pad 9
29G40Hat2-Bus vendor pad 10
30NCHat2-Bus vendor pad 11, not connected
31G39Hat2-Bus vendor pad 12
323V3Hat2-Bus vendor pad 13
33G23Hat2-Bus vendor pad 14
345VHat2-Bus vendor pad 15
35G22Hat2-Bus vendor pad 16

Power

Input5 V DC from either USB Type-C port, or PoE (IEEE 802.3at) up to 6 W
Typical draw73.82 mA

Notes

Pin numbers are this entry's own 1-35 run: three connectors each number from 1 (HY2.0-4P 1-4, SDIO & ISP left row 1-9, SDIO & ISP right row 1-6, Hat2-Bus 1-16), so they are offset into one array and every pad's description names its connector and the vendor's pad number - a bare 1-35 with no connector name would attach correct labels to the wrong physical pins. Labels are the vendor's own printed function names from the PinMap tables on docs.m5stack.com/en/products/sku/U213 (HY2.0 pads by the colour column, because that socket prints no numbers). The left/right row split is the vendor's: the SDIO & ISP table has nine numbered rows on the left and only six on the right, so the right row's run ends early rather than being padded. part is null because the product name already carries the SoC ('PoE-P4'), the same shape the other m5stack entries took; the ESP32-P4 data sheet is still recorded as datasheet_url. The two FPC connectors expose no per-pad numbering in the vendor's tables - only net names - so they are described in ai_context and deliberately kept out of pins[]. Price is USD as measured, not converted. M5Stack's own board PDF (application/pdf, verified 200) is in sources.

AI context

Dense context for pasting into a model prompt — addresses, pinout, voltages, tolerances and the vendor's reference circuit.

BOARD: M5Stack Unit PoE-P4, SKU U213, a 64.0 x 24.0 x 20.2 mm PoE Ethernet embedded controller built on the Espressif ESP32-P4NRW32 (RISC-V dual-core at 360 MHz plus a low-power single core at 40 MHz) with 16 MB of flash and 32 MB of octal PSRAM. It carries an IP101GRI 10/100 Ethernet PHY behind an RJ45 jack, a TPS23753A PoE PD controller compliant with IEEE 802.3at delivering up to 6 W, two USB Type-C ports (one USB 2.0 host, one for download and OTG), a 24-pin 0.5 mm FPC MIPI DSI 2-lane display connector with touch and backlight, a 24-pin 0.5 mm FPC MIPI CSI 2-lane camera connector, an NH-B2020RGBA-HF RGB LED, an MHS153IRCT infrared transmitter and a user button.
ADDRESSES: none published. There is no on-board I2C sensor; the I2C buses are the ones on the two FPC connectors, and M5Stack publishes no slave address for the touch controller or the camera, so none is recorded.
PINOUT: 35 pads in three connectors, each of which numbers its own pads from 1, so they are offset into one run and every pad names its connector and the vendor's own pad number. Pads 1-4 are the HY2.0-4P PORT.CUSTOM socket in the vendor's colour order: 1 GND (Black), 2 5V (Red), 3 G53 (Yellow), 4 G54 (White). Pads 5-13 are the left row of the SDIO & ISP header, vendor pads 1-9: G13, G12, G11, G10, G9, G8, G27 (USB1_DP), G26 (USB1_DM), 5V. Pads 14-19 are the right row of the same header, which is short and numbers only 1-6: GND, G35 (BOOT), RST, G38 (UART0_RX), G37 (UART0_TX), 3V3. Pads 20-35 are the Hat2-Bus 2.54 mm 16-pin header, vendor pads 1-16: GND, G44, 5V, G43, G21, G42, G20, G41, G19, G40, NC, G39, 3V3, G23, 5V, G22.
SUPPLY: 5 V DC from either USB Type-C port, or PoE over the RJ45 at up to 6 W with an on-board DC-DC converter. Measured currents from the vendor's table: 73.82 mA at 5 V operating, 75.32 mA at 5 V with the RGB LED lit, 23.57 mA at 3.3 V instantaneous for the IR transmitter, 277.10 mA at 5 V at full load with display, camera, IR and RGB all running, and 19.85 mA at 5 V in deep sleep.
LOGIC LEVEL: 3.3 V on the expansion headers, which is what the 3V3 pads on the SDIO & ISP right row and on Hat2-Bus supply. The touch and camera I2C pairs are named SDA_1V8 and SCL_1V8 on the camera connector, so that pair is a 1.8 V signalling group even though it lands on the same two GPIO as the touch pair.
REFERENCE CIRCUIT: nothing needs adding - the PoE front end (TPS23753A plus the DC-DC converter), the PHY magnetics inside the RJ45 jack and the FPC connectors are all fitted, and the vendor links schematics for the mainboard, the power board and the HAT expansion interface. Peripheral wiring, from the vendor's own pin map: Ethernet RMII uses G28, G29, G30, G34, G35, G49 and G50 with SMI on G31 (MDC), G52 (MDIO) and G51 (PHY_RST); the display FPC takes G4 (LCD_RST) and G33 (LCD_BL) plus the MIPI DSI lanes; the touch FPC takes G0 (SDA), G1 (SCL), G3 (TP_RST) and G2 (TP_INT); the camera FPC takes SDA_1V8 on G0, SCL_1V8 on G1, CAM_RST on G18 and CAM_MCLK on G36; the IR transmitter is on G14, the RGB LED on G15 (green), G16 (blue) and G17 (red), and the user button on G45.
TRAPS: the HY2.0-4P socket is PORT.CUSTOM, not PORT.A - it presents raw GPIO G53 and G54 on the yellow and white wires, not SDA/SCL, so a standard Grove I2C unit plugged into it will not talk until the firmware bit-bangs or routes I2C there. Two different connectors land on the same two GPIO: the touch panel's SDA/SCL and the camera's SDA_1V8/SCL_1V8 are both G0 and G1, so the two devices share one bus and cannot be addressed independently by pin. The SDIO & ISP header is asymmetric - the left row has 9 pads and the right row only 6, which is why the offset run stops the right row at pad 19. Hat2-Bus vendor pad 11 is NC, not a GPIO. The two USB Type-C ports are not interchangeable: firmware download goes through the download/OTG port, and the other one is a host port for U disks and HID devices. To enter download mode hold the side button for about 3 seconds until the green LED lights. The factory firmware runs a web control page reachable at poe-p4.local on the same LAN.

Provenance

Every figure on this page was read from the 6 sources below and last checked on Nov 1, 2026.