Integrate your Gira door system
The following allows you to e.g.
- open the door via Home Assistant
- trigger notifications on mobile devices when a door bell button is pressed
- use any actions sent on the Gira bus to trigger automations
Connect Home Assistant to GDoor
There are two possibilities:
MQTT (recommended)
(Work in progress)
GDoor supports Home Assistant MQTT Auto-Discovery.
- install Home Assistant Add-on: Mosquitto broker and MQTT integration
- create user to be used for MQTT
- open GDoor adapter web interface (in case the link doesn’t work, please lookup adapter IP address in your router)
- set MQTT host to the IP of your Home Assistant installation as well as the created MQTT user name and password.
- now the
GDoor Adapter
device should appear in Home Assistant - press the door bell
- press the “open door” button on your indoor station
- open Logbook and search for “GDoor”, now you should see state changes like
GDoor changed to {"action": "BUTTON_RING", "parameters": "0360", "source": "A286FD", "destination": "000000", "type": "OUTDOOR", "busdata": "011011A286FD0360A04A"}
Note the value of the
parameters
field: this is the unique value of your door bell which you can use to identify your door bell in automations.
USB / Serial connection
- connect the Gdoor adapter to a USB port of the machine where Home Assistant is running
-
edit
configuration.yaml
(e.g. via the Home Assistant Add-on: Studio Code Server) and addsensors: - platform: serial name: "GDoor" serial_port: /dev/ttyUSB0 # change device if needed baudrate: 115200
If you’re unsure under which device path the serial port got registered, go to Settings -> Logs and choose “Supervisor”. Look for
[supervisor.hardware.monitor] Detecting add hardware /dev/ttyUSB
… - restart Home Assistant
- press the door bell
- press the “open door” button on your indoor station
- open Logbook and search for “GDoor”, now you should see state changes like
GDoor changed to {"action": "BUTTON_RING", "parameters": "0360", "source": "A286FD", "destination": "000000", "type": "OUTDOOR", "busdata": "011011A286FD0360A04A"}
Note the value of the
parameters
field: this is the unique value of your door bell which you can use to identify your door bell in automations. - look for the
DOOR_OPEN
action, copy the value ofbusdata
and add the following shell command inconfiguration.yaml
to be able to open the door programmatically. Replace<busdata>
with the copied value.shell_command: gdoor_open_door: echo -e '<busdata>' > /dev/ttyUSB0 # change busdata and device if needed
- restart Home Assistant
Examples for typical use cases
Open door via Home Assistant dashboard
Simply call the above defined service shell_command.gdoor_open_door
in e.g. a button card:
show_name: true
show_icon: true
type: button
tap_action:
action: call-service
service: shell_command.gdoor_open_door
name: Haustür öffnen
icon: mdi:door-open
Send notification to mobile devices on door/floor bell
Example automation:
alias: Türklingel
trigger:
- platform: state
entity_id:
- sensor.gdoor
action:
- choose:
- conditions:
- condition: state
entity_id: sensor.gdoor
attribute: action
state: BUTTON_RING
- condition: state
entity_id: sensor.gdoor
attribute: parameters
state: "0360" # check in Logbook which parameter matches your door bell
sequence:
- service: notify.all_smartphones # adjust to your notification group/device
data:
data:
push:
interruption-level: time-sensitive
message: Türklingel (außen)
- conditions:
- condition: state
entity_id: sensor.gdoor
attribute: action
state: BUTTON_FLOOR
- condition: state
entity_id: sensor.gdoor
attribute: parameters
state: "FF6F" # check in Logbook which parameter matches your floor bell
sequence:
- service: notify.all_smartphones # adjust to your notification group/device
data:
data:
push:
interruption-level: time-sensitive
message: Türklingel (innen)
mode: single