Skip to content
Documentation sections

Crystal PPM Tolerance & Frequency Error Calculator

POSThttps://rftools.io/api/py/v1/calculate

Slug frequency-ppm-tolerance. Convert crystal tolerance in ppm to absolute frequency error in Hz. Stacks initial tolerance, temperature stability, and aging into worst-case and RSS budgets, with clock drift in seconds per day.

Inputs

Send every one of these in inputs, in the units shown. Most are required: a call without one is refused (400) and costs nothing; one the calculator can do without takes the default shown. An input outside its range is still computed and flagged in the provenance.

Inputs of frequency-ppm-tolerance
NameUnitRangeDefaultDescription
nominalFrequencynumberMHz0.000001 … 100025Marked frequency of the crystal or oscillator.
initialTolerancenumberppm0 … 100020Calibration accuracy at room temperature, from the datasheet.
tempStabilitynumberppm0 … 100015Frequency deviation over the full operating temperature range.
agingPerYearnumberppm/yr0 … 1003Long-term drift per year. AT-cut crystals are typically 1–5 ppm in year one.
yearsnumberyears0 … 303How long the aging term is accumulated for.

Outputs

Returned in values, by key. A value that is unbounded or undefined is null.

Outputs of frequency-ppm-tolerance
FieldUnitDescription
totalPpmWorstheadlineppmTotal Error (worst case)
totalPpmRssppmTotal Error (RSS)
agingTotalPpmppmAccumulated Aging
deviationHzHzFrequency Deviation
fMinHzHzMinimum Frequency
fMaxHzHzMaximum Frequency
spanHzHzTotal Frequency Span
driftSecPerDays/dayClock Drift
driftMinPerYearmin/yearClock Drift

Calling it

  • Calculate: one call, the request and response in full, and its errors.
  • Batch: this calculator with others, or a sweep, in one request.
  • Solve for a target: the value of one input that brings an output to a target.