zephyr/samples/net/sockets/txtime
Torsten Rasmussen 1cccc8a8fe cmake: increase minimal required version to 3.20.0
Move to CMake 3.20.0.

At the Toolchain WG it was decided to move to CMake 3.20.0.

The main reason for increasing CMake version is better toolchain
support.

Better toolchain support is added in the following CMake versions:
- armclang, CMake 3.15
- Intel oneAPI, CMake 3.20
- IAR, CMake 3.15 and 3.20

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2021-08-20 09:47:34 +02:00
..
src
CMakeLists.txt cmake: increase minimal required version to 3.20.0 2021-08-20 09:47:34 +02:00
Kconfig
README.rst
overlay-vlan.conf
prj.conf
sample.yaml

README.rst

.. _so_txtime-sample:

SO_TXTIME sample
################

Overview
********

This sample is a simple UDP sender/receiver which will set the
SO_TXTIME socket option and expects the Ethernet driver to send
the data when the TX time is expected. The application requires
that the board has PTP clock support. A simulated PTP clock is
provided for qemu_x86 board. Also frdm_k64f and sam_e70_xplained boards
are supported. Other mcux or gmac Ethernet driver based boards should
work too.
User can control how long the application should wait between packets sent by
setting CONFIG_NET_SAMPLE_PACKET_INTERVAL option.
Also the TXTIME value can be specified in the config file by setting the
CONFIG_NET_SAMPLE_PACKET_TXTIME option. In this case the value is
used as an offset from the current time.

Building and Running
********************

When the application is run, it starts to send UDP packets. You can start
``echo-server`` application from `net-tools`_ project to catch these and
send the data back to this application. Optionally you can set
CONFIG_NET_SAMPLE_PACKET_SOCKET option, which makes the application
to create an AF_PACKET type socket. In this case, the ``echo-server``
application cannot be used as a peer.

This sample can be built and executed on qemu_x86 board as
described in :ref:`networking_with_host`.

.. _`net-tools`: https://github.com/zephyrproject-rtos/net-tools