← RFID test tools

Flipper Zero crystal oscillator calibration

Calibrate your Flipper against internet time, so the RFID detector app can measure the precise frequency of a low-frequency RFID field.

  1. 1Connect
  2. 2Measure
  3. 3Save

Connect your Flipper

Plug your Flipper in to USB and close qFlipper. Exit any app that's open on the Flipper itself. This browser-based tool requires Chrome or Edge on a computer. See below for alternative options.

Already know the offset? Set it by hand in the app: press Left for Config, then Set calibration manually.

Connected
Flipper
Checking the RFID detector app…

Keep this tab open in the foreground with the computer awake, and stay on the same network.

The calibration is slightly sensitive to temperature, and shifts by about 1 ppm for every 4 °C. Calibrate at about the temperature you'll take readings at, for example indoors for indoor readers.

Options

starting

–
Estimate so far
–
–
The crystal's offset, + meaning fast.
Calibration before: –
Flipper against this computer
–
This computer's clock
–
Flipper read scatter
–
Network check
–
Flipper temperature
–

Command line (Python script)

flipper_crystal.py performs the same calibration using NTP.

curl -LO https://mfcarroll.github.io/rfid-test-tools/flipper/crystal/flipper_crystal.py
uv run flipper_crystal.py

uv installs pyserial automatically.

Options

--minutes N
How long to measure. 30 by default.
--no-send
Print the result without saving it on the Flipper.
--server HOST
The NTP server. time.cloudflare.com by default.
--log FILE
Write every sample to a file.
PORT
With more than one Flipper plugged in, the one to use, such as COM5 or /dev/ttyACM0.

For developers

The RFID detector app (1.5 or later) adds rfid_detector_cal to the Flipper's CLI while the app is running. Values are in 0.1 ppm, + meaning fast.

Log