W5500 IC does not boot up, crystal issues

I have my rp2040 custum board, with w5500 on spi bus, when i power up the w5500 ic does not boot up, no link led or act led glow, but if i touch crystal trace with finger, it starts working fine, no issues. i think my 25Mhz crystal doesnt start automatically, but start when gets excitation by finger. i have hc49/us crystal and reference schematic provided by wiznet. how to resolve this issue?

@Eugeny sir please help!!

There are not many ways to know from this data alone. There can be a number of problems with how it works when you press it with your hand.

  1. Make sure the SMD parts are properly installed.
  2. Make sure the GND copper is connected well enough
  3. Make sure the power noise is not too bad

Looking at your artwork file, it looks like there are lines and some parts placed underneath the crystal circuit.
The presence of signal traces running underneath the crystal oscillator of your W5500-based circuit can indeed cause problems. Here’s why and how you can address it:

Electromagnetic Interference (EMI): Powerful signal traces can generate electromagnetic interference that disrupts the normal oscillation of the crystal. This can degrade the precise and stable environment required for the crystal to start oscillating properly.

Noise Induction: Noise from nearby signal traces can be inductively coupled into the crystal pins, especially if those traces are carrying digital switching signals.

Thermal Effects: Traces carrying high currents can generate heat, which may affect the temperature of the crystal. Crystals are sensitive to temperature changes, and this could influence their oscillating frequency.

Parasitic Capacitance Changes: If signal traces are placed too close to parts of the crystal oscillator circuit, it can alter the parasitic capacitance, which affects the characteristics of the crystal’s oscillation.

To mitigate these issues, consider the following steps:

Keep the traces associated with the crystal circuit as short as possible.
Place a ground plane between the crystal and its load capacitors to shield against EMI from the signal traces.
Ensure there is adequate spacing between any signal traces and the crystal.
If possible, create a keep-out area with no signals directly underneath or near the crystal.
Add shielding around the crystal to protect from external noise sources.


Related forums

Apart from design issues highlighted by @bruno and @Alan, please check crystal properties. 18 pF are not arbitrary values, they are calculated using crystal properties (see datasheet for crystal requirements). In your situation, it may be insufficient (or too much) power required for circuit to start oscillating, by touching the leads you change capacitance/resistance and oscillation circuit starts. Search for articles on Pierce oscillators (example), and then replace crystal with appropriate one for existing circuit, or modify capacitor values. You may also need to put Rs resistor into the circuit.

Sir, i have soldered a 1M ohm resistor between clock signals and now it works properly. Meanwhile as you have seen in my design i have made a gaurd ring around crystal traces and other traces, i also kept crystal traces small. I didn’t used 1M ohm resistor in my design, i thought it’s unnecessary. But there is one issue now. When i power up my board sometimes(not all times, most of times it works as expected) my w5500 doesn’t work, and leds on my rj45 connector blinks, first green led light up, then yellow and then both off and it keeps repeating this pattern. I have added electrolytic capacitor 10uF at 3v3A line, i thought it may be power issue. Let’s see what happens.

If it is not a crystal then check reset line and then sufficient power.