Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
KinCony ESP32-S3 Core Board ESPHome yaml for home assistant
#44
vm
On a KinCony ESP32-S3 Core board, the onboard W5500 Ethernet initialises, links at 100 Mbit full-duplex, and answers ARP correctly, but no IP traffic passes — ping times out, the ESPHome API (port 6053) is unreachable, and the device logs
Code:
frame read from module failed
. Config matches KinCony's own working esp-idf example line-for-line. Looking for help confirming whether this is a config issue or a hardware fault on this specific board.
Hardware
  • KinCony ESP32-S3 Core board
  • ESP32-S3 rev v0.2, 8MB PSRAM, 4MB flash
  • Onboard W5500 Ethernet
  • Board otherwise healthy: flashes fine over USB, GPIO/sensors all work
Software
  • ESPHome 2026.7.1
  • Framework: esp-idf (ESP-IDF v5.5.5) — matching KinCony's example
  • Code:
    board_build.flash_mode: dio
    set (as in KinCony's working example)
Ethernet config (matches KinCony's published working example)

yaml
Code:
esphome:
  name: pool-control
  platformio_options:
    board_build.flash_mode: dio

esp32:
  board: esp32-s3-devkitc-1
  framework:
    type: esp-idf

ethernet:
  type: W5500
  clk_pin: GPIO43
  mosi_pin: GPIO44
  miso_pin: GPIO42
  cs_pin: GPIO41
  interrupt_pin: GPIO2
  reset_pin: GPIO1
  manual_ip:
    static_ip: 192.168.10.110
    gateway: 192.168.10.1
    subnet: 255.255.255.0
    dns1: 192.168.10.1

Symptom
The W5500 comes up cleanly. Boot log shows:

Code:
[I][ethernet:099]: Connected
[C][ethernet:850]:   IP Address: 192.168.10.110
[C][ethernet:850]:   MAC Address: DC:DA:0C:7B:77:77
[C][ethernet:850]:   Is Full Duplex: YES
[C][ethernet:850]:   Link Speed: 100
[C][ethernet:587]:   Type: W5500
[C][api:269]:   Address: 192.168.10.110:6053

From another host on the same VLAN/subnet (192.168.10.x):
  • Code:
    arp -n 192.168.10.110
    resolves correctly to
    Code:
    dc:da:0c:7b:77:77
    (the W5500 MAC)
  • Code:
    ping 192.168.10.110
    → 100% packet loss
  • ESPHome API connect to 6053 →
    Code:
    [Errno 113] Connect call failed
    (no route to host)
When forcing traffic, the device logs a repeating W5500 read failure:

Code:
w5500.mac: w5500_send_command(214): send command timeout
w5500.mac: emac_w5500_receive(745): issue RECV command failed
w5500.mac: frame read from module failed

So: link + ARP (mostly SPI writes) succeed, but reading received frames back from the W5500 over SPI fails. This looks like the W5500 SPI read path not working, while the write path does.
What I have already ruled out
  • SPI pins — clk=43 / mosi=44 / miso=42 / cs=41 / int=2 / rst=1 is the correct map for this board. (The A2v3 "official" map clk=42/mosi=43/miso=44 causes a total
    Code:
    w5500 reset timeout
    on this board — different pinout.)
  • Clock speed — tried default 26 MHz, plus 16 MHz and 10 MHz via
    Code:
    clock_speed:
    . No effect on the RX failure.
  • flash_mode — set
    Code:
    board_build.flash_mode: dio
    per KinCony's working example. No change.
  • Framework — esp-idf, matching KinCony's example (not arduino).
  • Cabling & switch port — swapped cable and port.
  • VLAN / firewall / routing — a Shelly device on the same IoT VLAN is fully reachable from the same host, so inter-VLAN routing and firewall are not the cause.
  • IP / MAC / ARP conflict — removed a stale entry (the WiFi base MAC
    Code:
    ...74
    ) from the controller; ARP now resolves to the correct Ethernet MAC
    Code:
    ...77
    . Static IP is outside the DHCP pool.
  • mDNS quirk — mDNS advertises the WiFi base MAC (
    Code:
    ...74
    ) while Ethernet runs
    Code:
    ...77
    . Believed harmless (ESPHome uses base MAC for the mDNS TXT record), but noted.
The puzzle
My config now matches KinCony's own published working esp-idf example (same board, framework, pins, flash_mode) yet the W5500 read path fails. Because the config matches a known-good reference, I'm starting to suspect a hardware issue on this specific board's W5500 or its SPI traces (e.g. a marginal MISO connection would explain writes-work / reads-fail).
Questions
  1. Has anyone seen
    Code:
    frame read from module failed
    /
    Code:
    RECV command failed
    on the S3 Core W5500 with an otherwise-correct config?
  2. Is there any additional required option for the S3 Core W5500 beyond the block above (e.g. an
    Code:
    interface:
    setting, a
    Code:
    spi:
    component, an sdkconfig option)?
  3. Any way to confirm whether this is a bad W5500 / solder joint vs. a software issue — short of swapping boards?
Note
Latest change of variable: the device was moved from a UniFi USW-Flex switch to a MikroTik switch around when it went from "visible/online" to "offline" at the switch — will test switch/port again. But the read-path SPI errors above are logged by the device itself regardless of switch, so they appear to be local to the board.
Any pointers appreciated.
Reply


Messages In This Thread
KinCony ESP32-S3 Core — W5500 links & ARP works, but no IP traffic (ESPHome, esp-idf) - by zebra - 07-22-2026, 01:52 PM

Forum Jump:


Users browsing this thread:
1 Guest(s)