VCS Code
The Virtual Clock Status Code has been created to easily identify the timing status of a device and easily troubleshoot in case it has failed. The VCS code are also used by the FOCA algorithm to detect a failure within a timing source and switch to the next available one.
Grand Master (GM VCS Code)
A device in Grand Master is when the timing source is external (i.e., 10MHz/PPS) or from a non-PTP source such as GNSS.
VSC | HO | Device Status |
Message | Clock Class |
Active Reference | Description |
---|---|---|---|---|---|---|
VSC-10000 | OK | Locked | 6 | GM: Front-panel | Everything is OK for GM device | |
VSC-10101 | CRITICAL | Unlocked: 10MHz not present | 187 | GM: Internal Oscillator | The 10MHz signal is not properly connected to the GM (or provide too low voltage, bad frequency, etc...) | |
VSC-10102 | CRITICAL | Unlocked: PPS not present | 187 | GM: Internal Oscillator | The PPS signal is not properly connected to the GM (or provide too low voltage) | |
VSC-10103 | CRITICAL | Unlocked: 10MHz+PPS not present | 187 | GM: Internal Oscillator | 10MHz and PPS signals are not properly connected to the GM (or provide too low voltage) | |
VSC-10104 | CRITICAL | Unlocked: 10MHz not stable | 187 | GM: Internal Oscillator | Timeout in locking or DAC blocked to the limit. ~99% of the case because 10MHz are not stable or correct and thus tmgr reach a timeout count | |
VSC-10110 | WARNING | Locked: PPS not present | 6 | GM: Front-panel | In case we are using an Atomic Clock as the main reference and someone has unplugged the PPS cable we might have some problem on the next reboot. PPS defined as not mandatory by user | |
VSC-10201 | WARNING | Locked: Time of Day was not set (NTP error) | 6 | GM: Front-panel | We have the same reference on all the network but the given ToD is not be valid: During boot we can not reach NTP server (timeout or IP not configured). The ToD used is provided by release ToD or last shutdown ToD. | |
VSC-10202 | WARNING | Locked: Leap seconds file has expired | 6 | GM: Front-panel | Leapsec file in the GM device is expired or has reach expiration while the GM is running. This means that the GM can not guarantee the UTC-TAI convertion even if the currently leap seconds used is still valid. If gm/cfg/leapsec_file_ignore option is active, this status will never occur and will be noted as VSC-10000. | |
VSC-10203 | WARNING | Locked: ToD offset bigger than 1s (NTP offset) | 6 | GM: Front-panel | We are seeing a drift with the current NTP offset (this is probably that NTP server has some server, but it could be that our external reference is in free-running) | |
VSC-10204 | WARNING | Locked: NTP does not reply anymore | 6 | GM: Front-panel | As NTP does not reply we might have some problem with the network. This is not critical for operation but might be a problem at next reboot. Only the GM should send alert |
Boundary Clock (BC VCS Code)
A device in Boundary Clock mode is receiving its timing from a PTP/WR master and redistribute to other PTP/WR slave devices.
Others
VSC | HO | Device Status |
Message | Clock Class |
Active Reference | Description |
---|---|---|---|---|---|---|
VSC-09000 | OK | Timing source is ready | X | X | For ports, "Ready" means that the link is up and some announce messages sent by a master has been received. For GM, "Ready" means that 10M/PPS has been detected properly | |
VSC-09100 | CRITICAL | System Error | 248 | Internal Oscillator | In case we get an unexpect behavior because some of the src modules (ppsi,ptpd,gnss,hald) has crashed, The tmgr will enforce this status in order to alert to the managment and also to other nodes (if possible) that our current situation is unexpected. | |
VSC-09110 | WARNING | Initializing... | 248 | Internal Oscillator | The device will always initialize with the following configuration before using any policy/strategy/src in tmgr. The following value are only written in case the user run: /etc/init.d/tmgrd restart | |
VSC-90000 | OK | Manual Free-running | 193 | Internal Oscillator | The device has been manually set as FR master and thus will distribute time according to its own reference | |
VSC-92000 | OK | Iddle Free-running | 248 | Passive | Passive state of the free-running timinig source when Iddle | |
VSC-92400 | HO | OK | Holdover Ready | 248 | Passive | The Holdover timing source has been learning in background from the active timing source. It is now ready to being triggered. |
VSC-92401 | HO | OK | Holdover Ready | 248 | Passive | Transitional state |
VSC-91101 | HO | CRITICAL | Holdover Expired | 7>187 187>248 | Internal Oscillator | The device was previously in a HO exit state but and enter the holdover time source until it has finally expired. Even if we will still be connected internally to the HO clock, we announce ourself exactly like FR and we allow to reset the algorithm |
VSC-91111 | HO | WARNING | <previous message> | <prev> | <prev> | The last mode that was "ready" has been exited in HO mode. The only thing that we perform here is increasing our clock accuracy and stay in this mode until the timer expired |
VSC-92411 | HO | WARNING | Holdover Learning | 248 | Passive | The Holdover timing source is learning in background from the active timing source. If triggered, it will directly reach its expired state. |