| .. zephyr:code-sample:: ptp |
| :name: PTP |
| :relevant-api: ptp |
| |
| Enable PTP support and monitor messages and events via logging. |
| |
| Overview |
| ******** |
| |
| The PTP sample application for Zephyr will enable PTP support. |
| |
| The source code for this sample application can be found at: |
| :zephyr_file:`samples/net/ptp`. |
| |
| Requirements |
| ************ |
| |
| For generic host connectivity, that can be used for debugging purposes, see |
| :ref:`networking_with_native_sim` for details. |
| |
| Building and Running |
| ******************** |
| |
| A good way to run this sample is to run this PTP application inside |
| native_sim board as described in :ref:`networking_with_native_sim` or with |
| embedded device like Nucleo-H743-ZI, Nucleo-H745ZI-Q, Nucleo-F767ZI or |
| Nucleo-H563ZI. Note that PTP is only supported for |
| boards that have an Ethernet port and which has support for collecting |
| timestamps for sent and received Ethernet frames. |
| |
| Follow these steps to build the PTP sample application: |
| |
| .. zephyr-app-commands:: |
| :zephyr-app: samples/net/ptp |
| :board: <board to use> |
| :goals: build |
| :compact: |
| |
| Setting up Linux Host |
| ===================== |
| |
| By default PTP in Zephyr will not print any PTP debug messages to console. |
| One can enable debug prints by setting |
| :kconfig:option:`CONFIG_PTP_LOG_LEVEL_DBG` in the config file. |
| |
| Get linuxptp project sources |
| |
| .. code-block:: console |
| |
| git clone git://git.code.sf.net/p/linuxptp/code |
| |
| Compile the ``ptp4l`` daemon and start it like this: |
| |
| .. code-block:: console |
| |
| sudo ./ptp4l -4 -f -i zeth -m -q -l 6 -S |
| |
| Compile Zephyr application. |
| |
| .. zephyr-app-commands:: |
| :zephyr-app: samples/net/ptp |
| :board: native_sim |
| :goals: build |
| :compact: |
| |
| When the Zephyr image is build, you can start it like this: |
| |
| .. code-block:: console |
| |
| build/zephyr/zephyr.exe -attach_uart |