POSIX gettimeofday() with clock initialization over SNTP

Overview

This sample application demonstrates using the POSIX gettimeofday() function to display the absolute wall clock time and local time every second. At system startup, the current time is queried using the SNTP networking protocol, enabled by setting the CONFIG_NET_CONFIG_CLOCK_SNTP_INIT and CONFIG_NET_CONFIG_SNTP_INIT_SERVER options.

Requirements

  • Networking with the host system

  • or, a board with hardware networking

  • NAT/routing should be set up to allow connections to the Internet

  • DNS server should be available on the host to resolve domain names

Building and Running

This project outputs to the console. It can be built and executed on QEMU as follows:

west build -b qemu_x86 samples/posix/gettimeofday
west build -t run

For comparison, to build directly for your host OS if it is POSIX compliant (for ex. Linux):

cd samples/posix/gettimeofday
make -f Makefile.host

The make output file will be located in samples/posix/gettimeofday/build.