Skip to content

1 Garage Door (with Eachen GDDC5)

Ben edited this page Jul 8, 2021 · 14 revisions

This plugin can expose Eachen GD-DC5 devices to HomeKit for garage door functionality. It is important to have the Eachen's magnetic sensor mounted, as HomeKit's Door OPEN/CLOSED status is based off the true state of this sensor.

This simulation can be setup via the Homebridge/HOOBS UI, adding an entry in the 'Single Channel Devices' section and setting the Device ID and the 'Device Model' to 'Eachen GD-DC5'.

Or if you prefer to edit the configuration directly, set the deviceId and choose the deviceModel option to "gddc5". For example:

"singleDevices": [
   {
      "deviceId": "10009553c8",
      "deviceModel": "gddc5",
      "operationTime": 100
   }
]

Obstruction Detection

It is also possible to use an additional single-channel device (i.e. Sonoff BASIC, MINI, etc.) to set the HomeKit 'Obstruction Detected' property of the garage. If this switch is ON then 'Obstruction Detected' will be set to 'Yes'. This can be configured by assigning the device under the obstructId option. This feature has been tested by connecting an E3JK-R4M1 photoelectric detector with (NO/NC) switch circuitry, connecting the (NO) circuit to a Sonoff MINI to turn it ON if the beam is broken.

NOTICE: HomeKit itself does not block activation of a door even if 'Obstruction Detected' is set to 'Yes'. Therefore, to prevent door activation when an object is in the door's path, it is strongly advised that the (NC) circuit of the photoelectric detector be used as an interrupt for the Eachen's activation circuit when the photoelectric beam is broken.

Wiring Diagram

Examples

A single door configuration example with an additional switch used for 'Obstruction Detected':

"singleDevices": [
   {
      "deviceId": "10009553c8",
      "deviceModel": "gddc5",
      "operationTime": 100,
      "obstructId": "10009553c0"
   }
]

A multiple door configuration example, each with its own additional switch used for 'Obstruction Detected':

"singleDevices": [
   {
      "deviceId": "10009553c8",
      "deviceModel": "gddc5",
      "operationTime": 100,
      "obstructId": "10009553c0"
   },
   {
      "deviceId": "10009553c9",
      "deviceModel": "gddc5",
      "operationTime": 100,
      "obstructId": "10009553c1"
   }
]