I have looked at the NTPTime node for getting the time from an Internet time server, this node would work for me if I could make it not update as often. If seems that the slowest I can set is every 10 seconds.
I'm want to use a Raspberry Pi, and they will be used as an "Edge Of Network" device (very remote locations) I have 100's that I want to implement and I pay for bandwidth. If I have 100's of these units acessing the internet every 10 seconds that will consume a lot of bandwidth I don't want to pay for.
You don;t - instead you use the NTP function of the OS (Debian) to setup a remote NTP server - the server will synchronize on a regular basis - but not every 10 seconds
You can then set up and colocated devices to use the master RPi as an NTP server and thus save them from going out to the internet
Here is how you can configure it on Debian - note the longest delay is approx 34 minutes
Linux has built-in NTP. Set the correct timezone and appropriate country NTP server (usually a group so that the NTP server can pick the best one). It should query no more than once an hour if I remember rightly, quite possibly only once a day. More than sufficient. No CRON, Node-RED or anything else needed.
The nodes are not intended to update the system time.
That's why the nodes work on every system.
The nodes aim to access the date and time elements for later processing.
If you have access to the internet, why not use NTP?
For example, the node-red-contrib-redplc-ntptime node stores in global context variables.
Therefore date/time queries can be made with it. @damica51 should use the node-red-contrib-redplc-systime or node-red-contrib-iiot-systime for time queries.
These query the system time.
Of course you can make a node that updates the system time via NTP.
But that is actually the task of the operating system.
Q0.21 is an output on the Raspberry Pi.
IA88.2 are hours on NTP Node.
IA88.4 are weekdays on NTP Node.
Q0.21 is activated if hours between 12..18 AND weekdays outside of Sunday and Monday.
It is only intended to serve as an example.
I am currently working on these nodes and they are not ready yet.
I too was wondering in what circumstances I would use Node-Red-Contrib-iiot-ntptime or Node-Red-Contrib-redplc-ntptime.
Sorry @iiot2k but your example application above leaves me completely bamboozled!
Doesn't node-red-contrib-cron-plus allow me to turn a relay ON between 12:00 and 18:00 Monday - Friday?
It uses the system clock which should be synchronised with NTP anyway.
node-red-contrib-cron-plus is a very general purpose node.
Of course, the nodes in the example can also compare other
number sources (e.g. from an analog-to-digital converter).
You can link the nodes in any combination (AND, OR ..).
Many roads lead to Rome
Except that the public NTP service most certainly should not be spammed for this purpose. That is why all OS's handle it at the OS level. The NTP services are run as a free public service. If you want to do more rapid scans of NTP, run your own local NTP service that links to a public one. In fact, if you read the terms of service for NTP servers I believe that you will find instructions in them not to repeated query them as this can block the service for other people.
Sorry, but I can't personally see any reason to use a node like that.
If I want to make use of the current time, I can get it from JavaScript or from JSONata directly. It will be absolutely correct, certainly to well within a second since the server (and my desktop) keep accurate time thanks to occasional links to public NTP. Indeed, that is an absolute necessity if you need to do any work with certificates.
Don't do this.
Your node has got about 15 downloads per week over the last year; there seems to be an interest in it - despite some people here expressed strong arguments against using it.
That's yet the nature of free speech ... and a situation you have to cope with when trying to contribute to a community effort.