History: ip_app_ntp

This page describes all changes made to the ip_app_ntp package, NTP Client, since its release.


1.18r2 (2018-08-29, 18:14):

  • Document HTML link added to the documentation folder.
  • History and document files renamed to the package name.

1.18 (2018-02-20, 11:30):

  • Applied Socket API changes.

1.17 (2017-11-03, 14:00):

  • Changed mathematics functions to be compliant with MISRA rules.
  • Corrected intersection chime check.
  • Corrected handling of Kiss of Death "RATE".

1.16 (2017-10-11, 06:50):

  • UDP version check fixed.

1.15 (2017-10-04, 10:18):

  • udp_open() call changed to match new API.

1.14 (2017-09-12, 10:00):

  • Corrected MISRA warnings.

1.13 (2017-09-08, 13:45):

  • Corrected use of socket_select() (nfds is set to max listen socket number + 1).

1.12 (2017-06-16, 9:00):

  • Corrected overflow secure mechanism in clock_combine().


  • Corrected overflow during calculation of time offset.


  • ntp_check_msg(): corrected read of ntts_sec, ntts_frac to use PSP_RD_BE32. Direct comparison with 0 resulted in an unaligned uint32 read exception on some machines.


  • Authorization header is now not set when NTP_SECURE_ENABLE is disabled.
  • Removed psp_math files (moved to psp_template_math).


  • Corrected calculating of dispersion time and ntp_prec2ntime.
  • Corrected clearing of connection data not to use static size as it changes, depending on compiler.


  • Sockets are set to SOCKET_ERROR when NTP is stopped; this allows proper use of ntp_del_server(), ntp_add_server().
  • Encryption drivers are now stopped when NTP_SECURE_ENABLE is enabled.
  • Corrected reference time loopback check.


  • Unused configuration definition removed.


  • Corrected ntp_start()/ntp_stop()/ntp_start() sequence (g_ntp_config.ntpcg_srv_idx was not cleared during start).
  • Corrected incorrect indent in ntp_start().
  • Corrected compilation warnings in psp_math_sqrt64p32().
  • Removed enhanced math logic from psp_math_mult64p32().


  • Corrected possible uninitialized 'ret_val' value in ntp_register_cb().
  • Added macro NTP_SECURE_ENABLE for configuring use of authorized NTP connection functionality.
  • Removed DES authorization as it is deprecated.


  • Ported to new IP Stack (version 6) and UDP (version 6).
  • Add Socket interface and compatibility with LwIP sockets.
  • Added configuration option NTP_LONG_JUMP_ENABLE, that enables long time jumps when synchronizing for the first time (suppress PANIC notify when synchronizing to a server whose time is very different from the device system time).
  • Added mechanism that changes clock combine algorithm to use arithmetic average when it is possible that overflow can occur during calculation.


  • Removed SNTP functionality.
  • Added function for adding/removing NTP servers.
  • Removed config_ip_app_ntp.c. Servers are now configured only by API functions.


  • Added NTP functionality.
  • Added authorization (MD5, DES).


  • Initial release (supports only Simple NTP).