Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to

Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website

  • Hi,

    I have an irrigation system running, among other things) and require sequential switching for 6 Modbus outputs.

    The system runs 4 times a day, S1 ON for 5 mins, then OFF, S2 ON for 5 mins then OFF, and so on.

    I have setup scheduled events just to get going, but there must be a better way.
    It would be good to be able to enable/disable each solenoid, and the whole system. Also be able to adjust solenoid run times, and maybe even start times from the GUI.

    I also looked at a scripting data source, with virtual points to set the timings, but stopped, as I didn't know if this was the best way.

    I am not after anyone to do it for me, just point me in the best direction.

    It has probably been done before, and would be useful for many applications.


  • Hi Hayden

    You were on the right track using a scripting data source and virtual data points as your configurable variables in the script. I would stick to using the scheduled events to start the process as the advanced scheduler has a great GUI.

  • Hi Hayden,

    Scripting data sources can also have points. It's pretty much the same as using a virtual data source for it, except maybe slightly more convenient sometimes.

    Edit: Also, it's probably good design if the sequence can be sent whole to the PLC doing the control (if there is a PLC in the middle), instead of Mango waiting to send values at certain times.

  • I've written a few scripts/dashboards that involve irrigation in mango. Due to IP I cannot share it. I can definitely agree with the idea of using the advanced scheduler as that allows you to use time when to fire and set a duration.
    However if they are always sequential and you know that you will always have a fixed amount of sprinkler zones to work with I suggest doing a dashboard that involves the use of slider inputs to set your duration either in minutes or percentage (if your time will never exceed n minutes) and perhaps the same for a delay tied to a virtual data point. And also a binary datapoint with a <ma-switch) to toggle a zone on or off.
    As Phil suggests if you've got a PLC in the mix definitely use that as I'm sure you must have some sort of real time clock you can work from to generate the interrupts you need. Then map those to the settings generated via mango. ie timer ticks etc

    I'm not hugely aware of how your system is constructed. At least by every time you make an amendment to these settings, you can either make it trigger an update via the scripting source to push these settings down the line. Otherwise set it to have an hourly (or whatever is needed) push for the settings.

    Happy to give more input if you can describe how the system works. Sorry I don't use modbus so I cannot help a great deal in that area.