adjtime_config - Linux


Overview

adjtime_config is a command-line utility used to configure system timing parameters, such as frequency offset and maximum error adjustment. It provides fine-grained control over the Linux kernel’s timekeeping subsystem and is essential for high-precision timing applications.

Syntax

adjtime_config [OPTIONS ...]

Options/Flags

  • -c, –current: Display the current values of all timing parameters.
  • –freq=: Set the frequency offset value (in parts-per-second).
  • –maxerror=: Set the maximum error adjustment value (in microseconds).
  • –time=: Set the current time (in seconds since the epoch).
  • -t, –timezone=: Set the timezone (e.g., "Europe/Paris").
  • -d, –debug: Enable debug logging.
  • -h, –help: Display usage information.

Examples

Display current timing parameters:

$ adjtime_config -c

Set frequency offset and maximum error adjustment:

$ adjtime_config --freq=-10 --maxerror=50

Common Issues

Incorrect timezone format: Ensure that the timezone is specified in the correct format (e.g., "America/New_York").

Invalid frequency offset: The frequency offset value must be between -1000 and 1000 parts-per-second.

Security risks: Changing timing parameters can affect system stability. Use caution when adjusting these values.

Integration

Synchronize time with a remote server:

$ adjtime_config -t $(ntpd -q -gn)

Set frequency offset based on GPS data:

$ gpsd -nr | adjtime_config --freq=$(cat /dev/ttyACM0)

Related Commands

  • ntpd: Network Time Protocol daemon
  • gpsd: GPS daemon