Skip to content

Commit

Permalink
Add second entrance door opener and doorbell
Browse files Browse the repository at this point in the history
  • Loading branch information
AzonInc committed Sep 18, 2024
1 parent b7ff9d4 commit 43b7b81
Show file tree
Hide file tree
Showing 9 changed files with 125 additions and 117 deletions.
2 changes: 1 addition & 1 deletion components/tcs_intercom/tcs_intercom.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,7 @@ namespace esphome
if (cmd_data.command == listener_command) {
allow_publish = true;
}
} else if (cmd_data.type == listener_type && cmd_data.address == listener_address) {
} else if (cmd_data.type == listener_type && (cmd_data.address == listener_address || listener_address == 255)) {
if (listener_serial_number != 0) {
if (cmd_data.serial_number == listener_serial_number) {
allow_publish = true;
Expand Down
3 changes: 3 additions & 0 deletions docs/de/guide/automation/pattern-events.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ Sieh dir die [fortgeschrittenen Beispiele](../firmware/stock-firmware#fortgeschr
- entrance_single
- entrance_double
- entrance_triple
- second_entrance_single
- second_entrance_double
- second_entrance_triple

### Beispiel-Automatisierung
::: details Tür automatisch öffnen, wenn die Eingangsklingel zweimal in einem bestimmten Muster gedrückt wird.
Expand Down
31 changes: 14 additions & 17 deletions docs/de/guide/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,31 +71,28 @@ Falls nicht, kannst du ihn manuell per IP Addresse hinzufügen.

Nach erfolgreicher Verbindung leuchtet er für 3 sekunden lang durchgehend blau.

### Schritt 3: Bus-Befehle konfigurieren
### Schritt 3: Interaktive Einrichtung
::: tip
Nachdem du deinen Doorman mit Home Assistant verbunden hast,\
startet automatisch der `Interactive Setup`-Prozess, der weiter unten beschrieben ist.
Wenn du deinen Doorman zum ersten Mal mit Home Assistant verbindest,\
befindet er sich bereits im `Setup Mode` für die interaktive Einrichtung.

Du musst ihn nicht manuell starten; er wird bei jedem Neustart automatisch gestartet, solange der Prozess nicht abgeschlossen oder abgebrochen wurde.
Du musst den Modus nicht manuell aktivieren; er wird bei jedem Neustart automatisch gestartet, solange der Einrichtungsprozess nicht abgeschlossen oder abgebrochen wurde.
:::

#### Interactive Setup <Badge type="warning" text="NEU" />
Um die Konfiguration der wichtigsten Befehle zu erleichtern, kannst du den Interactive Setup-Prozess nutzen.
1. **Zugriff auf die Einstellungen:**\
Öffne die Einstellungen entweder über den internen Webserver deines Doormans oder besuche die [ESPHome Integrationsseite](https://my.home-assistant.io/redirect/integration/?domain=esphome) und wähle das Doorman S3-Gerät aus.

Greif entweder auf den internen Webserver deines Doormans zu oder besuche die [ESPHome Integrationsseite](https://my.home-assistant.io/redirect/integration/?domain=esphome) und wähle das neu aufgeführte Doorman S3-Gerät aus.
2. **Setup-Modus aktivieren:**\
Gehe zum Bereich `Konfiguration` und schalte den `Setup Mode` ein, um die interaktive Einrichtung zu beginnen.

In `Konfiguration`-Bereich findest du den Button `Interactive Setup: Start`. Klicke darauf, um den Einrichtungsprozess zu starten.
3. **Einrichtung durchführen:**\
Die RGB-Status-LED wird grün-türkis pulsieren. Drücke den Klingeltaster vor der Wohnung oder am Eingang.

Sobald der Prozess begonnen hat, wird der `Interactive Setup: Status` Text Sensor dich durch die erforderlichen Schritte führen (z.B. Knopf X drücken, warten oder das Telefon abheben).\
Während der Einrichtung pulsiert die RGB-Status-LED grün-türkis, solange du die Aufgabe noch nicht abgeschlossen hast, und bleibt 3 Sekunden lang grün-türkis, nachdem der Befehl gespeichert wurde.
4. **Abschluss der Einrichtung:**\
Nach dem Drücken des Klingeltasters leuchtet die LED für 3 Sekunden durchgehend grün-türkis. Danach schaltet sich die LED aus, und die Einrichtung ist abgeschlossen.

Nach Abschluss der Einrichtung endet der Prozess automatisch und zeigt den entsprechenden Status an.

#### Manuell: No pain, no gain!
Du findest auch den guten alten `Last Bus Command` Text Sensor, der den letzten Bus-Befehl im Hexadezimalformat anzeigt.
Außerdem wird jeder empfangene Befehl in der ESPHome-Konsole (Debug-Log-Ebene) protokolliert und als Home Assistant-Ereignis veröffentlicht.

Um die Codes zu erfassen, drücke die Tasten an deinem Etagen-Telefon und kopiere die Codes anschließend in die entsprechenden Konfigurationstextfelder.
Wenn du mehrere Außenstationen hast, wird die Firmware versuchen, die zusätzliche Station automatisch zu erkennen.
Um die Erkennung der zweiten Türklingel und das Öffnen der zweiten Tür zu ermöglichen, musst du die zweite Türklingel einmal betätigen oder die zweite Tür einmal öffnen, damit die Adresse gespeichert wird.

## ESPHome adoption
Wenn du die Firmware deines Doorman anpassen möchtest, kannst du diesen zu deinem [ESPHome-Dashboard](https://my.home-assistant.io/redirect/supervisor_ingress/?addon=5c53de3b_esphome) hinzufügen und deine angepasste [Stock](firmware/stock-firmware.md) oder [Nuki Bridge](firmware/nuki-bridge-firmware.md) Firmware flashen.
Expand Down
57 changes: 19 additions & 38 deletions docs/de/reference/entities.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,22 +16,25 @@ Meldet den Akkustand des verbundenen Nuki Smart Locks.
## Binäre Sensoren

### Entrance Doorbell <Badge type="tip" text="entrance_doorbell" />
Wird aktiviert, wenn der Befehl `entrance_doorbell_command` empfangen wird.
Wird aktiviert, wenn der Befehl vom Typ `door_call` empfangen wird.

### Second Entrance Doorbell <Badge type="tip" text="second_entrance_doorbell" />
Wird aktiviert, wenn der Befehl vom Typ `door_call` mit zweiter Außenstation `address` empfangen wird.

### Apartment Doorbell <Badge type="tip" text="apartment_doorbell" />
Wird aktiviert, wenn der Befehl `apartment_doorbell_command` empfangen wird.
Wird aktiviert, wenn der Befehl vom Typ `floor_call` empfangen wird.

### Pick up phone <Badge type="tip" text="pick_up_phone" /> <Badge type="info" text="Deaktiviert" />
Wird aktiviert, wenn der Befehl `pick_up_phone_command` empfangen wird.
Wird aktiviert, wenn der Befehl vom Typ `start_talking_door_station` empfangen wird.

### Hang up phone <Badge type="tip" text="hang_up_phone" /> <Badge type="info" text="Deaktiviert" />
Wird aktiviert, wenn der Befehl `hang_up_phone_command` empfangen wird.
Wird aktiviert, wenn der Befehl vom Typ `stop_talking_door_station` empfangen wird.

### Function Button <Badge type="tip" text="function_button" /> <Badge type="info" text="Deaktiviert" />
Wird aktiviert, wenn der Befehl `function_button_command` empfangen wird.
Wird aktiviert, wenn der Befehl vom Typ `control_function` empfangen wird.

### Light Button <Badge type="tip" text="light_button" /> <Badge type="info" text="Deaktiviert" />
Wird aktiviert, wenn der Befehl `light_button_command` empfangen wird.
Wird aktiviert, wenn der Befehl vom Typ `light` empfangen wird.

### Flash Button <Badge type="tip" text="doorman_boot_button" /> <Badge type="info" text="Deaktiviert" />
Wird aktiviert, wenn der `FLASH` bzw. `PRG` Button auf deinem Doorman gedrückt wird.
Expand Down Expand Up @@ -66,24 +69,24 @@ Steuert die Einschaltbestätigung für die [Ring To Open](../guide/automation/ri
### Relay <Badge type="tip" text="doorman_relay" /> <Badge type="info" text="Deaktiviert" />
Steuert das eingebaute Relais.

### Setup Mode <Badge type="tip" text="doorman_setup_mode" />
Aktiviert oder deaktiviert den Modus für die [interaktive Einrichtung](../guide/getting-started#schritt-3-interaktive-einrichtung).

### Nuki Pairing Mode <Badge type="tip" text="nuki_pairing_mode" /> <Badge type="info" text="Nuki Bridge only" /> <Badge type="info" text="Deaktiviert" />
Steuert den Nuki Kopplungsmodus.


## Buttons

### Open Entrance Door <Badge type="tip" text="open_entrance_door" />
Öffnet die Eingangstür, indem der Befehl `open_entrance_door_command` auf dem Bus gesendet wird.
Öffnet die Eingangstür, indem der Befehlvom Typ `open_door` auf dem Bus gesendet wird.

### Open Second Door <Badge type="tip" text="open_second_door" />
Öffnet die zweite Eingangstür, indem der Befehl vom Typ `open_door` mit `address` der zweiten Außenstelle auf dem Bus gesendet wird.

### Turn on the light <Badge type="tip" text="turn_on_light" /> <Badge type="info" text="Deaktiviert" />
Schaltet das Licht ein, indem der Befehl `light_button_command` auf dem Bus gesendet wird.

### Interactive Setup: Start <Badge type="tip" text="doorman_interactive_setup_start" />
Startet den [Interactive Setup](../guide/getting-started#interactive-setup) Prozess um Bus Commands einzurichten.

### Interactive Setup: Cancel <Badge type="tip" text="doorman_interactive_setup_cancel" />
Beendet den [Interactive Setup](../guide/getting-started#interactive-setup) Prozess.

### Nuki Unpair Device <Badge type="tip" text="nuki_unpair_device" /> <Badge type="info" text="Nuki Bridge only" /> <Badge type="info" text="Deaktiviert" />
Entkoppelt dein Nuki Smart Lock.

Expand All @@ -102,31 +105,6 @@ Alle Zugangsdaten, globalen Variablen, Zähler und gespeicherten Zustände, die
Wenn du WiFi über das Captive Portal, Improv Serial oder Improv BLE konfiguriert hast, werden auch die WiFi-Einstellungen zurückgesetzt, wodurch solche Geräte offline gehen. Du musst das Gerät dann über einen eingebauten WiFi-Access-Point und das Captive Portal neu konfigurieren.
:::

## Eingabe für Text

### Command: Apartment Doorbell <Badge type="tip" text="apartment_doorbell_command_input" /> <Badge type="info" text="Deaktiviert" />
Legt den Code fest, der gesendet wird, wenn jemand an der Wohnungsklingel läutet.

### Command: Entrance Doorbell <Badge type="tip" text="entrance_doorbell_command_input" /> <Badge type="info" text="Deaktiviert" />
Legt den Code fest, der gesendet wird, wenn jemand an der Eingangsklingel läutet.

### Command: Open Entrance Door <Badge type="tip" text="open_entrance_door_command_input" /> <Badge type="info" text="Deaktiviert" />
Legt den Code fest, der gesendet wird, wenn du den Knopf zum Öffnen der Eingangstür drückst.

### Command: Pick up phone <Badge type="tip" text="pick_up_phone_command_input" /> <Badge type="info" text="Deaktiviert" />
Legt den Code fest, der gesendet wird, wenn du den Hörer abnimmst.

### Command: Hang up phone <Badge type="tip" text="hang_up_phone_command_input" /> <Badge type="info" text="Deaktiviert" />
Legt den Code fest, der gesendet wird, wenn du den Hörer auflegst.

### Command: Light Button <Badge type="tip" text="light_button_command_input" /> <Badge type="info" text="Deaktiviert" />
Legt den Code fest, der gesendet wird, wenn du den Knopf zum Einschalten des Flurlichts drückst.

### Command: Function Button <Badge type="tip" text="function_button_command_input" /> <Badge type="info" text="Deaktiviert" />
Legt den Code fest, der gesendet wird, wenn du den Funktionstaster (Kreis) drückst.\
Der Funktionstaster wird üblicherweise nicht genutzt.\
Aus diesem Grund wird er verwendet, um die [Ring To Open](../guide/automation/ring-to-open) Automatisierung umzuschalten.

## Eingabe für Zahlenwert

### Ring To Open: Delay <Badge type="tip" text="doorman_ring_to_open_delay" /> <Badge type="info" text="Deaktiviert" />
Expand Down Expand Up @@ -163,6 +141,9 @@ Wird ausgelöst, wenn ein Klingelmuster erkannt wird. Erfahre mehr über Mustere
- entrance_single
- entrance_double
- entrance_triple
- second_entrance_single
- second_entrance_double
- second_entrance_triple

### Phone pick up Pattern <Badge type="tip" text="phone_pick_up_pattern" />
Wird ausgelöst, wenn ein Abhebe-Muster des Telefons erkannt wird. Erfahre mehr über Musterereignisse [hier](../guide/automation/pattern-events).
Expand Down
3 changes: 3 additions & 0 deletions docs/en/guide/automation/pattern-events.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ Check out the [advanced examples](../firmware/stock-firmware#advanced-examples)
- entrance_single
- entrance_double
- entrance_triple
- second_entrance_single
- second_entrance_double
- second_entrance_triple

### Example Automation
::: details Automatically open the door when the Entrance Doorbell is pressed twice in a specific pattern.
Expand Down
29 changes: 13 additions & 16 deletions docs/en/guide/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,30 +66,27 @@ Additionally, with mDNS support, Home Assistant will automatically discover your
### Step 2: Connect to Home Assistant
After connecting Doorman to your network, it will blink slowly (blue) and should be automatically discovered by Home Assistant. Simply click on `Configure` to add the newly discovered ESPHome node.

### Step 3: Bus Commands
### Step 3: Interactive Setup
::: tip
After connecting your Doorman to Home Assistant, the `Interactive Setup` Process will automatically begin as described below.
When you first connect your Doorman to Home Assistant, it will be in `Setup Mode` for interactive setup already.

There's no need to start it manually; it will initiate automatically on every restart, provided the process hasn't been completed or canceled.
You don't need to manually activate this mode; it will start automatically at each reboot as long as the setup process has not been completed or canceled.
:::

#### Interactive Setup <Badge type="warning" text="NEW" />
To simplify the configuration of the key commands, you can use the Interactive Setup Process.
1. **Access the Settings:**\
Open the settings either through your Doorman’s internal web server or visit the [ESPHome Integration page](https://my.home-assistant.io/redirect/integration/?domain=esphome) and select the Doorman S3 device.

To get started, either access the internal web server of your Doorman or visit the [ESPHome Integration page](https://my.home-assistant.io/redirect/integration/?domain=esphome) and select the newly listed Doorman S3 device entry.
2. **Activate Setup Mode:**\
Go to the `Configuration` section and enable `Setup Mode` to begin the interactive setup.

In the `Configuration` section, you will find the `Interactive Setup: Start` button. Click this button to initiate the setup process.
3. **Perform the Setup:**\
The RGB status LED will pulse green-turquoise. Press the doorbell button at your apartment or entrance.

Once started, the `Interactive Setup: Status` Text Sensor will guide you through the required steps (e.g., press button X, wait, or pick up the phone).\
During the setup, the RGB Status LED will pulse green-turquoise while waiting for you to complete each task and will remain solid green-turquoise for 3 seconds after saving the command.
4. **Complete the Setup:**\
After pressing the doorbell button, the LED will stay green-turquoise for 3 seconds. Then, the LED will turn off, and the setup is complete.

After the setup is complete, the process will automatically end and display the corresponding status.

#### Manual: No pain, no gain!
You will also find the good old `Last Bus Command` Text Sensor that tracks the most recent bus command in hexadecimal format.
Additionally, each received command is logged in the ESPHome Console (at the Debug log level) and published as a Home Assistant event.

To capture the codes, press the buttons on your intercom phone and then copy the codes into the corresponding configuration text inputs.
If you have multiple door stations, the firmware will attempt to automatically detect the additional station.
To enable detection of the second doorbell and the ability to unlock the second door, you must press the second doorbell or unlock the second door at least once to store its address.

## ESPHome adoption

Expand Down
Loading

0 comments on commit 43b7b81

Please sign in to comment.