What Controller to use to switch a digital output channel at a given date/time (optional: depending on feed to grid)?

A device (a heating element) should be powered up for a given time frame[1] once a week. Which controller would be best suited for this usecase? I had a look at the Controller IO Heating Element but it seems a bit over-complicated for our use case. Is there a better suited controller? Additionally, I’m not sure how to provide the date parameter in JSCalender format to the Controller IO Heating Element. I found following example in ControllerHeatingElementImplTest9.java:

{
	"@type":"Task",
	"start":"08:00:00",
	"duration": "PT12H",
	"recurrenceRules":[
		{
			"frequency":"daily"
		}
	],
	"openems.io:payload": {
		"sessionEnergy": 12000
	}
}

But to be honest, I’m not sure how to translate that to the input field in the controller set-up screen of the UI. Would { "frequency":"weekly" } be enough for the Scheduler input field?

Note: A more advanced controller algorithm would make use of a time frame with feed to grid within the upcoming seven days and/or a time frame with the cheapest price to optimize the energy usage/price. Main guardrail is running the device at least every seven days.


  1. Actually, until a given temperature is reached, but right now we don’t have access to the temperature sensor, thus we will empirically analyze the time needed to heat up. ↩︎