Skip to content
Back to skills

Esp32 Ethernet Rmii Phy

ASecurity

Use when connecting an ESP32 Ethernet MAC to an external RMII PHY such as LAN8720 or IP101 and debugging clock, straps or link negotiation.

  • 16 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added November 7, 2026
developmentgorailsdebugging

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned November 7, 2026

npx -y skills add Esmail-sarhadi/esp32-agent-skills --skill esp32-ethernet-rmii-phy --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Esp32 Ethernet Rmii Phy?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Esp32 Ethernet Rmii Phy
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/esmail-sarhadi-esp32-ethernet-rmii-phy/badge)](https://www.skillsdirectory.com/skills/esmail-sarhadi-esp32-ethernet-rmii-phy)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: esp32-ethernet-rmii-phy
description: Use when connecting an ESP32 Ethernet MAC to an external RMII PHY such as LAN8720 or IP101 and debugging clock, straps or link negotiation.
license: MIT
---

# ESP32 Ethernet Rmii Phy

RMII Ethernet integration requires a MAC, a PHY, a reference clock and correct board routing. A PHY such as LAN8720 does not replace the MAC. MAC availability is SoC-specific and must be checked against the target datasheet.

## MAC and PHY distinction

- Identify whether the selected SoC contains an Ethernet MAC. Do not infer capability from the ESP32 family name.
- Select a supported PHY and verify RMII/MII mode, address straps, reset timing and reference-clock direction.
- Check whether the 50 MHz clock is generated by the PHY or supplied externally; do not drive two clock sources onto the same net.
- Verify the ESP-IDF Ethernet driver and PHY component version.

## Pin and clock planning

- Map MDC, MDIO, TXD0/1, TX_EN, RXD0/1, CRS_DV, REF_CLK and reset before selecting GPIOs.
- Cross-check strapping pins, flash/PSRAM pins, input/output capability and board routing for the exact module.
- RMII clock integrity is a PCB/layout issue as well as a firmware setting.
- Confirm PHY address straps electrically at reset, not only from schematic labels.

## Bring-up sequence

- Hold PHY in reset until rails and reference clock are stable as required by its datasheet.
- Initialize MAC/PHY, read PHY ID, configure negotiation and wait for link with a bounded timeout.
- Only after link is established, test DHCP, DNS and application sockets.
- Record link speed/duplex and negotiated state where available.

## Failure isolation

| Symptom | First checks |
|---|---|
| PHY ID read fails | MDIO pull-up, address, reset, clock |
| Link never rises | magnetics, cable, PHY straps, partner |
| Link rises, no DHCP | MAC driver, packet path, VLAN/DHCP |
| Intermittent packets | REF_CLK quality, routing, power, EMI |

## Agent rules

- Treat MAC presence as a per-SoC fact backed by datasheet.
- Include a complete pin/clock table and PHY part number.
- Never copy LAN8720 pin maps between boards without verifying straps and clock topology.
- Keep PHY link diagnostics separate from IP-layer diagnostics.

Files in this skill

  • LICENSE.txt823 B
  • SKILL.md2.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in development →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.