I haven’t been following along with everything/not sure what you’re doing, so forgive any assumptions…
You really can’t directly probe a crystal and get reliable, if any results. You definitely can’t measure the frequency (accurately, if at all) that way. The probe capacitance loads down the crystal oscillator too much and de-tunes it, potentially to the point of not working. You can see if anything is happening via non contact probing with coax or maybe the scope probe tip, just picking up the electric field from a small distance.
OR, your crystal shunt capacitance (combo of added shunt/load capacitor + PCB capacitance) could be so far off that it won’t oscillate reliably without the scope probe capacitance. In which case your shunt/load capacitance is too small (but I’d guess it’s too large if you don’t have a tight layout)
You definitely need to use COG/NPO capacitors.
Your problem is not the crystal tolerance. I suppose it could be the crystal if you found some real counterfeit or no name trash.
I don’t know what you’re working on, but you need to probe a buffered version if this clock. assuming this is a crystal for an MCU clock, The way you usually tune the shunt caps is you need to set up the MCU to output a frequency on a pin via a timer/counter, or however it can. You probe THIS, as it’s buffered, not loaded down by your probe, and you can get an accurate result and representation of what the MCU is seeing when your not sticking things on the OSC pins (the result of course would be divided by however the counter/timer, or whatever, is set up).
An oscilloscope is generally not going to be accurate enough to do this unless it has a dedicated frequency counter built in… You can usually only “pull” a crystal frequency Maybe a few hundred ppm by adjusting (or by accidental design) the load capacitance before it doesn’t oscillate reliably or at all. A scope cursor measurement or on screen automatic measurement probably won’t be accurate to a few hundred ppm. 300ppm at 12Mhz is 3600Hz. I’m not looking at it, but pretty sure my siglent scope (a step above what your showing in your pictures) doesn’t even display 100s of Hz at 12Mhz, and the 1000s certainly isn’t accurate. Maybe with a bunch of averaging you could get there, but I personally would not rely on this. Not without thoroughly reading the scope manual and understanding how it gets it’s frequency measurement results anyway.
This might sound more complicated than you were bargaining for, I hope it helps. If you want more help and want to email me direct feel free.
-Jon
Sent from my iPhone
Hi,