I want to power-cycle the output instead of turning it off, is it possible?
Yes. In the shutDown function, replace the command to switch off the output with a command to reset it. Here is the modified function:
function shutDown() if output == 0 then for i=1,4,1 do devices.system.ResetOut{output=i} end else devices.system.ResetOut{output=output} end end
If you need a delay between the successive power off and power on, add a delay parameter to the ResetOut command to specify the delay. The statement is: devices.system.ResetOut{output=i, delay=12} or devices.system.ResetOut{output=output, delay=12} (replace 12 with the required delay).