OpenGarage


The opengarage cover platform lets you control the open-source OpenGarage.io device through Home Assistant.

Configuration

To enable OpenGarage Covers in your installation, add the following to your configuration.yaml file:

# Example configuration.yaml entry
cover:
  platform: opengarage
  covers:
    garage:
      host: 192.168.1.12
      device_key: opendoor
      name: Left Garage Door
    garage2:
      protocol: https
      verify_ssl: false
      host: garage.example.com
      port: 443
      device_key: opendoor
      name: Right Garage Door

Configuration Variables

covers

(map)(Required)

List of your doors.

identifier

(map)(Required)

Name of the cover as slug. Multiple entries are possible.

ssl

(boolean)(Optional)

Use HTTPS instead of HTTP to connect.

Default value:

false

verify_ssl

(boolean)(Optional)

Enable or disable SSL certificate verification. Set to false if you have a self-signed SSL certificate and haven’t installed the CA certificate to enable verification.

Default value:

true

host

(string)(Required)

IP address of device.

port

(integer)(Optional)

HTTP Port.

Default value:

80

device_key

(string)(Required)

Access key to control device.

Default value:

opendoor

name

(string)(Optional)

Name to use in the Frontend. If not provided, it will use name configured in device.

Example with more detail:

# Related configuration.yaml entry
cover:
  platform: opengarage
  covers:
      garage:
        host: 192.168.1.12
        device_key: opendoor
        name: honda

sensor:
  platform: template
  sensors:
    garage_status:
      friendly_name: 'Honda Door Status'
      value_template: '{% if states.cover.honda %}
          {% if states.cover.honda.attributes["door_state"] == "open" %}
            Open
          {% elif states.cover.honda.attributes["door_state"] == "closed" %}
            Closed
          {% elif states.cover.honda.attributes["door_state"] == "opening" %}
            Opening
          {% elif states.cover.honda.attributes["door_state"] == "closing" %}
            Closing
          {% else %}
            Unknown
          {% endif %}
          {% else %}
          n/a
          {% endif %}'
    garage_car_present:
      friendly_name: 'Honda in Garage'
      value_template: '{% if states.cover.honda %}
          {% if is_state("cover.honda", "open") %}
            n/a
          {% elif ((states.cover.honda.attributes["distance_sensor"] > 40) and (states.cover.honda.attributes["distance_sensor"] < 100)) %}
            Yes
          {% else %}
            No
          {% endif %}
          {% else %}
          n/a
          {% endif %}'

group:
  garage:
    name: Garage
    entities:
      - cover.honda
      - sensor.garage_status
      - sensor.garage_car_present

customize:
  cover.honda:
    friendly_name: Honda
    entity_picture: /local/honda.gif
  sensor.garage_car_present:
    icon: mdi:car