I am logging meteorological data on a CR3000. The logger clock is synchronised via GPS. Furthermore, I have several CR1000X loggers connected to the same local network (ethernet). Is it possible to sync the clock from the CR3000 to the CR1000X's over the ethernet?
I think, since I've never used it on an ethernet connection, you have to use the "ClockReport" and "PakBusClock" instructions and create a "socket" to run the pakbus packets on the ethernet network.
Read more on CRBASIC help
An alternative to using PakBus over the TCP/IP network, is NetworkTimeProtocol.
Have a look at the "NetworkTimeProtocol" in CRBasic Help. The NTP can be used to set the datalogger clock or get the datalogger to act as an NTP server.
If you setup the CR3000 as an NTP server, the other loggers can set their clocks from it using the "NetworkTimeProtocol" instruction in each logger.
Thank you for your answer. I am trying to use the NetworkTimeProtocol solution.
So on logger i am synchronizing the clock with a GPS, and then I want to broadcast this precise time to the other loggers on the local network.
How do I setup the NTP server on a logger? From the CRBasic Help it is written: "If the IP address of the NTPServer parameter is a null string, "", it will act an an NTP server rather than a client." What should the NTPOffset and NTPMaxMSec parametes be on the server?
Should the NTP function be places in the initialization of the program (after BeginProg), should it be in the main scan loop, or is it sufficient to place it in a SlowSequence? And does this choice matter for, where in the revieving loggers' progams the in struction is placed?