[W5500] ping 응답 속도에 대해.

안녕하세요. 핑 응답속도에 대해 문의 드립니다.
ESP32S3 에 W5500 을 연결하였습니다. (MicroPython 에서)

이더넷은 PC 와 W5500 을 직접 케이블로 연결한 것이고
wifi 는 공유기를 통해 PC 와 ESP32 가 연결하였습니다.

ESP32 의 WIFI 핑 응답은 약 50msec 정도 됩니다.
그런데 W5500 의 핑응답은 약 700msec 정도 됩니다.

이것이 정상적 응답속도인지 문의드립니다.
W5500 의 configuration 문제일까요?
확인 부탁드립니다.

Connect any other device in place of W5500 and measure the ping timing.

You mean any other w5500 chip test?
Yes i will test next week.

2023년 6월 1일 (목) 오후 4:52, Eugeny Brychkov via WIZnet Developer Forum <notifications@wiznet.discoursemail.com>님이 작성:

You can test another W5500, but you also must try connecting anything else, another platform - let’s say another PC, and see how fast it responds to the pings. We must identify if the “problem” is in W5500 or in something else on the way of the packets on the network.

I tested about your mention.
there are two cases for this phenomenon

same hardware
esp32s3 + w5500

  1. micropython without native wiznet driver
    used w5500 python driver : GitHub - Ayyoubzadeh/ESP32-Wiznet-W500-Micropython: Connecting ESP32 to W5500 using micropython
    ==> there is no probrlem : response time 5msec or less.

  2. micropython with native wiznet driver
    Is any type of Ethernet supported on ESP32 platforms now? · micropython · Discussion #11474 · GitHub
    ==> response time : about 700 msec

I think the problem lies in the native driver source.
I’m trying to look at the driver code, can you give me some advice?
I’ll say thank you in advance. :slight_smile:

I have one suspicion, vaguely confirmed by quickly looking into the sources.
W5500 (and all W5x00 chips in family) are capable replying to ping requests on their own, without involvement of the driving hardware (MCU). As soon as we have such a difference, I suspect that second implementation does not use this native capability of the chip - it means software tries to emulate ping responses without employing hardware acceleration of the chip. Therefore I make a proposition that in second case W5500 is used in MACRAW mode with software implementation of IP and TCP/UDP, which is enormously inefficient use of the chip.