Hi,
I have designed a device using W5500 chip as network interface. The problems I have are these:
-
Auto negotiation does not work. I have to set the PHYCFGR register OPMD and OPMDC bits manually to the 10MB Full Duplex or Half duplex. When I set the mode to 10MBit *-duplex. Device detects link and link led flashes. Also PHYCFGR register shows correct state meaning link is up. I thought this may be related with the switch but I have some Chinese w5500 modules and they work well with the same switch and the same setup. I mean auto-negotiation works with Chinese modules.
-
When I try to send packets MACRAW, link and activity leds go off for some seconds. And then comes back but no packet is sent as I check with wireshark.
-
I configure Interrupts, activate SENDOK interrupt and then try to send MACRAW packet. First packet causes the link and activity leds go off and some seconds later they come back. Although i see leds go off device asserts int pin and Sn_IR register shows SENDOK. When I continue to send packets leds stay normal, w5500 issues SENDOK but nothing received on the other end. (Wireshark)
-
Although no MAC filter is set, and the activity led blinks, device receives nothing. The register Sn_RX_RSR is always 0.
-
Edit: By comparing the Chinese W5500 chip with the one on my design, the W5500 chip on my design gets hotter than the Chinese module W5500.
As a summary: I can talk with the W5500 via SPI but W5500 does not talk with ethernet.
My Setup:
- MCU: Atmel Sam4s, arm cortex M4 at 120Mhz.
- SPI: 4 MHz
- My design is a copy of the reference schematic in wiznet wiki.
Schematic
Layout
There is copper pour ın both sides except under the rj45 jack.
I would appreciate any help.
Thank you.