The Ouster sensors achieve PTP time synchronization through the use of verbatim Linux PTP (aka ptp4l).
LinuxPTP versions
Here are the linuxptp versions listed by Ouster firmware version:
- Ouster FW v3.0.1:
linuxptp cortexa53 3.1.1
- Ouster FW v3.1.0:
linuxptp cortexa53 4.1
Patch for protocol version
Additionally, there is a recommended patch for customers to force their client PTP_VERSION (protocol version not linuxptp version) to 2.0 instead of 2.1.
Ouster sensors advertise v2.0 linuxptp protocol to avoid customer compatibility problems with post v4.0 linuxptp versions
Here is a link to the source/fix of the problem in the PTP mailing list.
Date: Mon, 2 Oct 2023 11:28:37 -0700
Subject: [PATCH] msg: rollback PTP_VERSION to 2.0 to workaround hw issues
- Many devices have issues with timestamping inbound/outbound packets
with the version set v2.1 which results in breakage. - Rolling this back seems to have almost no impact other than we
advertise a lower version. - Introduced by commit: 2a2532d66121d0060b042c5bd6020a62153f1e0a
---
msg.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/msg.h b/msg.h
index 484435d..ffc49d4 100644
--- a/msg.h
+++ b/msg.h
@@ -32,7 +32,7 @@
# Version definition for IEEE 1588-2019
#define PTP_MAJOR_VERSION 2
-#define PTP_MINOR_VERSION 1
+#define PTP_MINOR_VERSION 0 /* BUG: rollback for customer hw compatibility */
#define PTP_VERSION (PTP_MINOR_VERSION << 4 | PTP_MAJOR_VERSION)
#define MAJOR_VERSION_MASK 0x0f`
--
2.34.1