Schedule


The schedule integration provides a way to create a weekly schedule in Home Assistant that can be used to trigger or make decisions in your automations and scripts.

The preferred way to configure a schedule is via the user interface at Settings > Devices & Services > Helpers. Click the add button and then choose the Schedule option, or click the My button below.

Configuration

To add the Schedule integration to your Home Assistant instance, use this My button:

To be able to add Helpers via the user interface you should have default_config: in your configuration.yaml, it should already be there by default unless you removed it.

If you removed default_config: from your configuration, you must add it back or, alternatively, schedule: to your configuration.yaml first, before you can create them via the UI.

Alternatively, a schedule can also be created and configured via YAML configuration. For example:

# Example configuration.yaml entry
schedule:
  thermostat_schedule:
    name: "Thermostat schedule"
    monday:
      - from: "17:00:00"
        to: "21:00:00"
    tuesday:
      - from: "17:00:00"
        to: "21:00:00"
    wednesday:
      - from: "17:00:00"
        to: "21:00:00"
    thursday:
      - from: "17:00:00"
        to: "21:00:00"
    friday:
      - from: "17:00:00"
        to: "23:00:00"
    saturday:
      - from: "07:00:00"
        to: "10:00:00"
      - from: "16:00:00"
        to: "23:00:00"
    sunday:
      - from: "07:00:00"
        to: "21:00:00"

Configuration Variables

schedule map Required

Alias for the schedule. Multiple entries are allowed.

name string Required

Friendly name of the schedule.

icon icon (Optional)

Icon to display in the frontend for this schedule.

monday|tuesday|wednesday|thursday|friday|saturday|sunday list Required

A schedule for each day of the week.

from time Required

The start time to mark the schedule as active/on.

to time Required

The end time to mark as inactive/off again.

Attributes

A schedule entity’s state exports attributes that can be useful in automations and templates.

Attribute Description
next_event A datetime object containing the next time the schedule is going to change state.

Automation example

A schedule creates an on/off (schedule) sensor within the times set. Using the thermostat schedule example above, you can turn on your thermostat:

trigger:
    - platform: state
      entity_id:
        - schedule.thermostat_schedule
      to: "on"
  action:
    - service: climate.turn_on
      target:
        entity_id: climate.thermostat

Services

Available service: schedule.reload.

schedule.reload

schedule.reload service allows one to reload the schedule’s configuration without restarting Home Assistant itself.