ENC28J60 Ethernet module with ESP32
Supply 3.3 V
Bus SPI
Pins and ESP32 wiring
| Pin | Role | ESP32 pin | Notes |
|---|---|---|---|
| CLKOUT | Not wired to the ESP32 | — | Clock output, not needed |
| INT | Interrupt | D35 | Interrupt, optional |
| WOL | Not wired to the ESP32 | — | Wake-on-LAN, not needed |
| SO | SPI MISO | D19 | |
| SI | SPI MOSI | D23 | |
| SCK | SPI clock | D18 | |
| CS | SPI chip select | D5 | SPI chip select |
| RESET | Input (the ESP32 drives it) | D25 | Reset, active LOW |
| VCC | Power | 3V3 | 3.3 V. Draws up to about 180 mA while sending |
| GND | Ground | GND |
Suggested wiring for the 30-pin ESP32 DevKit, avoiding flash, input-only and strapping pins. BoardPilot checks it for you as you wire.
Starter code (Arduino)
void setup() { pinMode(25, OUTPUT); } // RESET
void loop() {
digitalWrite(25, HIGH);
delay(500);
digitalWrite(25, LOW);
delay(500);
}
Sources
- Microchip ENC28J60 datasheet, SPI interface (CS, SCK, SI, SO), INT, WOL, CLKOUT; supply 3.1 to 3.6 V; TX current about 180 mA
- Common ENC28J60 module, 2x5 header; a 12-pin version also exists. Check the silkscreen
Try it in 3D in BoardPilot
Related parts
CC1101 sub-GHz radio moduleLoRa SX1278 (Ai-Thinker Ra-02)Micro SD card module (SPI)nRF24L01 socket adapter (5 V to 3.3 V)nRF24L01+ 2.4 GHz radionRF24L01+ PA/LNA radio with antenna
Part data: CC BY 4.0, free to reuse with credit to BoardPilot.