Skip to content

A Home Assistant integration to track your load schedding schedule.

License

Notifications You must be signed in to change notification settings

wernerhp/ha.integration.load_shedding

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Load Shedding hacs_badge

A Home Assistant integration to track your load schedding schedule.

💡This integration uses the Eskom SePush API.
🚨Read the EskomSePush API Licence Agreement.
🔑Get a Free (50 requests per day) API Key from Eskom Se Push. You can pay for a higher limit.
⚠️Do not use more than one API key from the same IP. Your key will be blocked.

HACS Install

  1. Go to HACS Integrations on your Home Assitant instance
  2. Select "+ Explore & Download Repositories" and search for "Load Shedding"
  3. Select Load Shedding: A Home assistant integration to track your load shedding schedule. and Download this repository with HACS image
  4. Once downloaded, click the My Integrations button to configure the integration.
    Open your Home Assistant instance and start setting up a new integration.
  5. Setup cards and automations
  6. Please support my work

Support

If you find this integration useful, please consider supporting my work by buying me a coffee or making a donation in the form of Bitcoin.

Buy me a coffee

Buy Me A Coffee

Sign-up for a free Luno wallet using this invite link or enter the code X48WY in the Rewards section and we can both earn R 25.00 free BTC after investing our first R 500.

Bitcoin

3EGnQKKbF6AijqW9unyBuW8YeEscY5wMSE
Bitcoin address: 3EGnQKKbF6AijqW9unyBuW8YeEscY5wMSE

Manual Install

Instructions
  1. Download and unzip to your Home Assistant config/custom_components folder.
Screenshot

image

  1. Restart Home Assistant.
  2. Go to Settings > Devices & Services > + Add Integration

Open your Home Assistant instance and start setting up a new integration.

  1. Search for 'Load Shedding' and follow the config flow.
Screenshot
  1. If you're coming from a previous version of this integration, you may need to delete the .json files in /config/.cache.
Screenshot

image

Sensor

The load shedding sensor State will always reflect the current load shedding stage.
i.e When load shedding is suspended, it will show No Load Shedding. When Stage 2 is active, it will show Stage 2.

Screenshot

| | |

Cards

Mushroom Chips

Status Alert

Calendar

ESP Status Bar

Thanks to @ribeirompl for this contribution

Automation Ideas

These are just some automations I've got set up. They are not perfect and will require some tweaking on your end.
Replace sensor.load_shedding_south_africa_stage, sensor.load_shedding_milnerton_14 and other entity_id with your own.

Load Shedding Stage

Announce Load Shedding stage changes on speakers and push notifications.

Load Shedding Start/End

Do stuff when load shedding starts, e.g. update your slack status, turn off lights, etc.

Slack Status

Setup a REST Command and two automations to set your Slack status when Load Shedding starts and ends.

Example

secrets.yaml

slack_token: Bearer xoxp-XXXXXXXXXX-XXXXXXXXXXXX-XXXXXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

configuration.yaml

rest_command: 
    slack_status:
      url: https://slack.com/api/users.profile.set
      method: POST
      headers:
        authorization: !secret slack_token
        accept: "application/json, text/html"
      payload: '{"profile":{"status_text": "{{ status }}","status_emoji": "{{ emoji }}"}}'
      content_type: "application/json; charset=utf-8"
      verify_ssl: true

Load Shedding Warning (15 min)

15 minutes warning on speaker and telegram before load shedding starts.

Load Shedding Warning (2 hr)

2 hour warning on smart speaker

Load Shedding Reload

Reload the integration every night. This is a workaround for Issue #70/#71