Delete search term


Quick navigation

Main navigation

PTP / IEEE 1588 Protocol Software

The protocol software represents a fully implemented Precision Time Protocol (PTP) Ordinary Clock.


  • Ordinary clock implementation according to IEEE 1588 – 2002 and - 2008 standards
  • Generic code allows porting to various environments (HW / OS)
  • An API enables connection of application programs
  • The Human Machine Interface (HMI) enables evaluation, configuration and monitoring of PTP software
  • Programming language is ANSI C
  • Comprehensive documentation


The initial release of this IEEE 1588 protocol implementation has been developed by Hirschmann Automation and Control GmbH (HAC). As a partner of HAC, Zurich University of Applied Sciences (ZHAW) has taken over the PTP software for ordinary clocks from HAC and now offers PTP software packages, PTP evaluation kits as well as code maintenance and support.

Programming language and design

The programming language for the PTP software is ANSI C. Although C isn’t an object oriented programming language, the PTP software was designed object oriented. Each class is a separate module containing a structure with the member variables plus the member functions. This design assures clearly arranged source code.

Portability to other environments

The PTP software consists of an environment independent protocol engine and an OS Abstraction Layer. While the protocol engine is completely generic, the OS Abstraction Layer has to be adapted to the target environment. Since the OS Abstraction Layer contains clearly structured interfaces, quick and easy porting to alternative operating systems and hardware is possible.

Application Programming Interface (API)

The API is the interface to the user application. It provides functions to configure PTP as well as functions to monitor the clock's behaviour and state.

Human Machine Interface (HMI)

The developer can monitor and configure PTP while running. Output of internal data, sending management messages or monitoring the state machine are just some of the functions the HMI provides. The HMI doesn’t just enable debugging but it also helps the developer to understand how PTP works.


Three different software licenses as well as maintenance are available:

  • IEEE1588 / PTP SW: Source Code License
  • IEEE1588 / PTP SW: Object Code License
  • IEEE1588 / PTP SW: Maintenance Contract

The Full Source Code License includes:

  • the complete source code of the Protocol Engine and the OS Abstraction Layer
  • a comprehensive documentation
  • two days of training at ZHAW in Winterthur, Switzerland.

The Object Code License includes:

  • a library (object code) of the Protocol Engine
  • the source code for the OS Abstraction Layer
  • a comprehensive documentation
  • one day of training at ZHAW in Winterthur, Switzerland.

Software Maintenance

A software maintenance contract is available on an annual basis. The customer receives PTP software updates as long as the contract is valid (usually one year).