# Interval function node

**URL:** <https://discourse.nodered.org/t/interval-function-node/19532>\
**Category:** General\
**Created:** [24 December 2019 05:24 UTC](https://discourse.nodered.org/t/interval-function-node/19532 "2019-12-24T05:24:30Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![KELVINHAN95](https://avatars.discourse-cdn.com/v4/letter/k/90db22/32.png) [@KELVINHAN95](https://discourse.nodered.org/u/KELVINHAN95)\
**Post date:** [24 December 2019 05:24 UTC](https://discourse.nodered.org/t/interval-function-node/19532/1 "2019-12-24T05:24:30Z")

</div>

Is it possible to create a function node code which can do this.

If receive a topic "Start" will send a signal out at one second interval.  
And when receive a topic "Stop" will stop the previous signal from going out.

---

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [24 December 2019 07:49 UTC](https://discourse.nodered.org/t/interval-function-node/19532/2 "2019-12-24T07:49:25Z")

</div>

You can do something close to that with the Trigger node.

It can be configured to start sending a message at regular intervals until it receives a second message that resets it.

You can see that in action as part of this recipe in the cookbook: [https://cookbook.nodered.org/basic/trigger-placeholder](https://cookbook.nodered.org/basic/trigger-placeholder)

---

<div class="post-metadata">

**Author:** ![cymplecy](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cymplecy/32/2773_2.png) [@cymplecy](https://discourse.nodered.org/u/cymplecy)\
**Post date:** [24 December 2019 10:45 UTC](https://discourse.nodered.org/t/interval-function-node/19532/3 "2019-12-24T10:45:11Z")

</div>

Going along with @knolleary idea - here is a flow to do it using basic nodes

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/2X/6/6aae2942aefb542568f78d652b1e073350d69a20.jpeg)

```auto
[{"id":"3e95b40a.1d0f3c","type":"inject","z":"edc07904.d80ae8","name":"","topic":"Start","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":322,"y":132,"wires":[["81bdffba.51685"]]},{"id":"814476d0.d223f8","type":"inject","z":"edc07904.d80ae8","name":"","topic":"Stop","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":322,"y":176,"wires":[["81bdffba.51685"]]},{"id":"4afbf1eb.09de","type":"trigger","z":"edc07904.d80ae8","op1":"","op2":"0","op1type":"pay","op2type":"str","duration":"-1","extend":false,"units":"s","reset":"","bytopic":"all","name":"","x":1026,"y":154,"wires":[["2745b9da.cd7096"]]},{"id":"2745b9da.cd7096","type":"debug","z":"edc07904.d80ae8","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":1236,"y":154,"wires":[]},{"id":"3559b2b1.f9d23e","type":"change","z":"edc07904.d80ae8","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"Whatever","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":762,"y":132,"wires":[["4afbf1eb.09de"]]},{"id":"81bdffba.51685","type":"switch","z":"edc07904.d80ae8","name":"","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"Start","vt":"str"},{"t":"eq","v":"Stop","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":556,"y":154,"wires":[["3559b2b1.f9d23e"],["25a83951.0991e6"]]},{"id":"25a83951.0991e6","type":"change","z":"edc07904.d80ae8","name":"","rules":[{"t":"set","p":"reset","pt":"msg","to":"anything - will be ignored","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":762,"y":198,"wires":[["4afbf1eb.09de"]]}]

```
