Even more flexibility can be achieved by creating time events.
[{"id":"2623d1d6.35d9ce","type":"function","z":"c05fa29a.5620a","name":"Time Events","func":"var stamp = msg.payload;\n\nfunction pretty(num) {\n if (num < 10) {\n return \"0\" + num;\n }\n return \"\" + num;\n}\nvar updated = false;\nvar o_second = null;\nvar o_minute = null;\nvar o_hour = null;\nvar o_date = null;\nvar o_month = null;\nvar o_year = null;\nvar timeupdate = new Date(stamp);\n\nvar currenttime = global.get(\"currenttime\") || {second:0,minute:0,hour:0,date:0,month:0,year:0};\n\nif (currenttime.second !== timeupdate.getSeconds()) {\n currenttime.second = timeupdate.getSeconds();\n updated = true;\n o_second = {\n topic: \"TimeEventSecond\",\n payload: currenttime.second,\n timestamp: stamp\n };\n}\nif (currenttime.minute !== timeupdate.getMinutes()) {\n currenttime.minute = timeupdate.getMinutes();\n o_minute = {\n topic: \"TimeEventMinute\",\n payload: currenttime.minute,\n timestamp: stamp\n };\n}\nif (currenttime.hour !== timeupdate.getHours()) {\n currenttime.hour = timeupdate.getHours();\n o_hour = {\n topic: \"TimeEventHour\",\n payload: currenttime.hour,\n timestamp: stamp\n };\n}\nif (currenttime.date !== timeupdate.getDate()) {\n currenttime.date = timeupdate.getDate();\n o_date = {\n topic: \"TimeEventDate\",\n payload: currenttime.date,\n timestamp: stamp\n };\n}\nif (currenttime.month !== timeupdate.getMonth() + 1) {\n currenttime.month = timeupdate.getMonth() + 1;\n o_month = {\n topic: \"TimeEventMonth\",\n payload: currenttime.month,\n timestamp: stamp\n };\n}\nif (currenttime.year !== timeupdate.getFullYear()) {\n currenttime.year = timeupdate.getFullYear();\n o_year = {\n topic: \"TimeEventYear\",\n payload: currenttime.year,\n timestamp: stamp\n };\n}\nif (updated) {\n currenttime.timestamp = stamp;\n // can hold prettyfied date-time values in currenttime if needed \n /*\n var displaytime = pretty(currenttime.hour) + \":\" + pretty(currenttime.minute) + \":\" + pretty(currenttime.second);\n currenttime.displaytime = displaytime;\n currenttime.displaydate = pretty(currenttime.date) + \".\" + pretty(currenttime.month);\n */\n global.set(\"currenttime\", currenttime);\n \n \n return [o_second, o_minute, o_hour, o_date, o_month, o_year];\n \n}","outputs":6,"noerr":0,"x":330,"y":200,"wires":[["5fa6b5e3.d0a64c"],["7932dcc7.413764"],["681fa20a.a7dc2c"],["620bd1d2.2428f"],["9dd4ab5a.069768"],["8abd1001.7e637"]]},{"id":"81aca5f3.294678","type":"inject","z":"c05fa29a.5620a","name":"","topic":"","payload":"","payloadType":"date","repeat":".5","crontab":"","once":false,"onceDelay":0.1,"x":160,"y":200,"wires":[["2623d1d6.35d9ce"]]},{"id":"5fa6b5e3.d0a64c","type":"link out","z":"c05fa29a.5620a","name":"te-second","links":[],"x":495,"y":100,"wires":[]},{"id":"7932dcc7.413764","type":"link out","z":"c05fa29a.5620a","name":"te-minute","links":["20d1748a.e94adc"],"x":495,"y":140,"wires":[]},{"id":"681fa20a.a7dc2c","type":"link out","z":"c05fa29a.5620a","name":"te-hour","links":[],"x":495,"y":180,"wires":[]},{"id":"620bd1d2.2428f","type":"link out","z":"c05fa29a.5620a","name":"te-date","links":[],"x":495,"y":220,"wires":[]},{"id":"9dd4ab5a.069768","type":"link out","z":"c05fa29a.5620a","name":"te-month","links":[],"x":495,"y":260,"wires":[]},{"id":"8abd1001.7e637","type":"link out","z":"c05fa29a.5620a","name":"te-year","links":[],"x":495,"y":300,"wires":[]},{"id":"20d1748a.e94adc","type":"link in","z":"c05fa29a.5620a","name":"listen minute","links":["7932dcc7.413764"],"x":385,"y":450,"wires":[["d2f54c2b.cc955"]]},{"id":"d2f54c2b.cc955","type":"debug","z":"c05fa29a.5620a","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":490,"y":450,"wires":[]}]