Provided by: linuxptp_3.1.1-3_amd64 bug

NAME

       ts2phc - Synchronizes one or more PTP Hardware Clocks using external time stamps.

SYNOPSIS

       ts2phc  [ -hmqv ] [ -c device|name ] [ -f config ] [ -l print-level ] [ -s device|name ] [
       long-options ] ...

DESCRIPTION

       ts2phc synchronizes PTP Hardware Clocks (PHC) to external time stamp  signals.   A  single
       source may be used to distribute time to one or more PHC devices.

OPTIONS

       -c device|name
              Specifies a PHC slave clock to be synchronized.  The clock may be identified by its
              character device (like /dev/ptp0) or its associated network interface (like  eth0).
              This option may be given multiple times.

       -f config
              Read  configuration  from  the  specified  file.   No configuration file is read by
              default.

       -h     Displays the command line help summary.

       -l print-level
              Sets the maximum syslog level of messages which should be printed or  sent  to  the
              system logger. The default is 6 (LOG_INFO).

       -m     Prints log messages to the standard output.

       -q     Prevents sending log messages to the system logger.

       -s device|name
              Specifies the source of the PPS signal.  Use the key word "generic" for an external
              1-PPS without ToD  information.   When  using  a  master  PHC,  the  clock  may  be
              identified  by  its  character  device  (like  /dev/ptp0) or its associated network
              interface (like eth0).  Use the key word "nmea" for an external 1-PPS  from  a  GPS
              providing ToD information via the RMC NMEA sentence.

       -v     Prints the software version and exits.

LONG OPTIONS

       Each  and  every  configuration  file option (see below) may also appear as a "long" style
       command line argument.  For example, the use_syslog option may  be  set  using  either  of
       these two forms.

              --use_syslog 1   --use_syslog=1

       Option  values  given  on  the  command  line override values in the global section of the
       configuration file.

CONFIGURATION FILE

       The configuration file  is  divided  into  sections.  Each  section  starts  with  a  line
       containing  its  name  enclosed in brackets and it follows with settings.  Each setting is
       placed on a separate line, it contains the name of the option and the value  separated  by
       whitespace characters. Empty lines and lines starting with # are ignored.

       There are two different section types.

       1.     The  global  section  (indicated  as [global]) sets the program options and default
              slave clock options. Other sections are clock specific sections, and they  override
              the default options.

       2.     Slave  clock  sections give the name of the configured slave (e.g.  [eth0]).  Slave
              clocks specified in the configuration file  need  not  be  specified  with  the  -c
              command line option.

GLOBAL OPTIONS

       first_step_threshold
              The  maximum  offset, specified in seconds, that the servo will correct by changing
              the clock frequency instead of stepping the clock. This  is  only  applied  on  the
              first  update.  When  set  to 0.0, the servo will not step the clock on start.  The
              default is 0.00002 (20 microseconds).

       free_running
              When set to 1, no the slave clock will be adjusted.  This option can be  useful  in
              test  scenarios,  for  example  to determine how well synchronized a group of local
              clocks are to each other.  The default is 0 (adjust the slave clocks).

       leapfile
              The path to the current leap seconds definition file.  In a Debian system this file
              is  provided  by  the  tzdata package and can be found at /usr/share/zoneinfo/leap-
              seconds.list.  The default is an empty string, which causes the program  to  use  a
              hard coded table that reflects the known leap seconds on the date of the software's
              release.

       logging_level
              The maximum logging level of messages which should be printed.  The  default  is  6
              (LOG_INFO).

       max_frequency
              The  maximum  allowed frequency adjustment of the clock in parts per billion.  This
              is an additional limit to the maximum allowed by the hardware. When set to  0,  the
              hardware limit will be used.  The default is 900000000 (90%).

       message_tag
              The  tag  which  is  added to all messages printed to the standard output or system
              log.  The default is an empty string (which cannot be set in the configuration file
              as the option requires an argument).

       step_threshold
              The  maximum  offset, specified in seconds, that the servo will correct by changing
              the clock frequency instead of stepping the clock. When set to 0.0, the servo  will
              never step the clock except on start.  The default is 0.0.

       ts2phc.nmea_remote_host, ts2phc.nmea_remote_port
              Specifies the serial port character device providing ToD information when using the
              "nmea" PPS signal source.  Note that if these two options are both specified,  then
              the  given  remote  connection  will be used in preference to the configured serial
              port.  These options default to the empty string, that is, not specified.

       ts2phc.nmea_serialport
              Specifies the serial port character device providing ToD information when using the
              "nmea"  PPS  signal  source.  Note that if the options, ts2phc.nmea_remote_host and
              ts2phc.nmea_remote_port, are both specified, then the given remote connection  will
              be used in preference to the configured serial port.  The default is "/dev/ttyS0".

       ts2phc.pulsewidth
              The  expected  pulse  width  of  the  external  PPS  signal  in  nanoseconds.  When
              'ts2phc.extts_polarity' is "both", the given pulse width  is  used  to  detect  and
              discard  the  time  stamp  of the unwanted edge.  The supported range is 1000000 to
              990000000 nanoseconds.  The default is 500000000 nanoseconds.

       use_syslog
              Print messages to the system log if enabled.  The default is 1 (enabled).

       verbose
              Print messages to the standard output if enabled.  The default is 0 (disabled).

SLAVE CLOCK OPTIONS

       ts2phc.channel
              The external time stamping or periodic output channel to be used.  Some PHC devices
              feature  programmable  pins  and  one  or more time stamping channels.  This option
              allows selecting a particular channel to be used.  When using a PHC device  as  the
              PPS  source,  this  option  selects  the  periodic  output channel.  The default is
              channel 0.

       ts2phc.extts_correction
              The value, in nanoseconds, to be added to each PPS time stamp.  The  default  is  0
              (no correction).

       ts2phc.extts_polarity
              The  polarity  of  the external PPS signal, either "rising" or "falling".  Some PHC
              devices always time stamp both edges.  Setting this option to "both" will allow the
              ts2phc  program  to  work  with such devices by detecting and ignoring the unwanted
              edge.  In this case be sure to set 'ts2phc.pulsewidth' to the correct  value.   The
              default is "rising".

       ts2phc.master
              Setting  this  option to 1 configures the given PHC device as the source of the PPS
              signal.  The default is 0 for the slave role.

       ts2phc.pin_index
              The pin index to be used.  Some PHC devices feature  programmable  pins,  and  this
              option  allows  configuration of a particular pin for the external time stamping or
              periodic output function.  The default is pin index 0.

WARNING

       Be cautious when sharing the same configuration file between ptp4l, phc2sys,  and  ts2phc.
       Keep  in  mind  that  values  specified in the configuration file take precedence over the
       default values.  If an option which is  common  to  the  other  programs  is  set  in  the
       configuration file, then the value will be applied to all the programs using the file, and
       this might not be what is expected.

       It is recommended to use separate configuration files for ptp4l, phc2sys,  and  ts2phc  in
       order to avoid any unexpected behavior.

SEE ALSO

       phc2sys(8) ptp4l(8)