Netlinx ClockMgr Problems
All of my systems use ClockMgr for time manager services and it works fine on all systems with the exception of one. On the working systems, time is maintained correctly and the log file contains ClockMgr log entries (as well as bind() entries) for the clock manager network calls according to the set Resync interval. These systems work fine with the NIST, Google, and NTP public server pools.
I also have a more complex system that uses the same time services module but the ClockMgr built-in functions do not work. There are no ClockMgr entries (nor bind() entries) in the log file and time is not maintained properly. The same module is used in all instances and the clock manager functions are being called properly (verified with debug statements). One major difference in the 2 cases is that the complex system in which ClockMgr functions do not work defines numerous network devices and heavily uses IP services for a variety of functions.
ClockMgr built-in functions must use a network device to make NTP calls to the configured time server (and you can see the bind() calls in the log file). In the old i!-TimeManager module, you had to specify the network device to use as part of the module definition. The old i!EquipmentMonitor modules used specific network devices and you had to know what those were and avoid using them for other purposes. I have searched the documentation for ClockMgr and there is no way to specify a particular network device for the clock functions but it must be using one (at least one). Unless I am using the same network device required for ClockMgr services for another purpose creating a conflict, I am at a loss to explain why the ClockMgr is unable to make NTP requests as it does in the other systems. The system is on the same network so it is not a firewall, DNS, or related infrastructure issues -- in other words, it has to be something in Netlinx or in the programming of this more complex system.
I have developed an NTP client module that works fine using NIST, Google, or NTP public server pools and replaces the ClockMgr services but I would rather solve this mystery and understand more why the problem occurs rather than just avoid using the ClockMgr.
Anyone run into similar problems or have any insight? Thanks in advance.