diff --git a/README.md b/README.md index 2a4aa8e..0e8627a 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,14 @@ -# doorman +# Doorman -Doorman is an ESP32 or ESP8266 based mqtt bridge for TCS door control systems (). +Doorman is an ESP32 or ESP8266 based mqtt bridge to connect your [TCS](https://www.tcsag.de/) or [Koch](https://www.kochag.ch/) Intercom to any home automation system. ![doorman opener](doc/doorman.gif) ## Main Features -* Mqtt integration for all messages read from the bus and for writing messages to the bus +* Support for TCS bus based intercom systems from TCS AG (Germany) or Koch AG (Switzerland) +* Automatic Homeassistant discovery via MQTT +* MQTT integration for all messages read from the bus and for writing messages to the bus * Button push pattern detection - you can define a pattern and assign a code that is written to the bus if the pattern is detected (Example: automatically open the door if the doorbell is pressed x times in a certain way). A successfully detected pattern is also published via mqtt. * Party mode (When this is enabled, the door opener automatically opens if the door bell is pressed) @@ -28,6 +30,14 @@ The codes that are specific to your flat are the long ones (without 0000 prefix) ![TCS Bus](doc/tcsbus.png) +## Prebuilt PCB and Case + +AzonInc created a PCB with the doorman circuits and 3D printable housing. The project supports integration via ESPhome. + + + +It's currently a work in progress and I haven't added official support to the platformio project yet. + ## Wiring ![wiring](doc/wiring.svg) @@ -58,13 +68,15 @@ The P line can be used for power supply. You can also skip the part and power th There are still a view things open. -* Refactor config management, it's a lot of code duplication at the moment -* Maybe allow wifi/mqtt configuration without the need for project compilation +* Allow wifi/mqtt configuration without the need for project compilation ## Credits Doorman is heavily built on the code and the information of the following two projects: +**Doorman S3** PCB and case for TCS intercom with ESPhome firmware \ + + **TCSIntercomArduino** different methods to read from and write to TCS bus \ Reverse Engineering video: \ diff --git a/doorman/src/main.cpp b/doorman/src/main.cpp index 30beda2..c5fa2f0 100644 --- a/doorman/src/main.cpp +++ b/doorman/src/main.cpp @@ -564,7 +564,7 @@ void loop() if (millis() - g_lastWifiConnect > WIFI_DISCONNECT_FORCED_RESTART_S * 1000) { log_warn("Wifi could not connect in time, will force a restart"); - esp_restart(); + ESP.restart(); } g_wifiConnected = false; g_mqttConnected = false; diff --git a/doorman/src/platform.h b/doorman/src/platform.h index f122b7a..e6edafb 100644 --- a/doorman/src/platform.h +++ b/doorman/src/platform.h @@ -1,7 +1,7 @@ #pragma once #include -#define VERSION "2024.4.0" +#define VERSION "2024.4.1" #ifdef ESP8266 #define PIN_BUS_READ D5