hkiam / HCPBridge

emulates Hoermann HAP 1 HCP (HCP2) on ESP8622, ESP32 and Arduino.
89 stars 37 forks source link
arduino esp32 esp8266 hcp hcp2 hoermann modbus

HCPBridge

Emuliert ein Hörmann HAP 1 HCP auf dem ESP8622 bzw. ESP32 und Arduino.

Kompatible Torantriebe (HCP2-Bus - Modbus):

Bitte beachten, das Projekt emuliert UAP 1 HCP und ist auch nur mit der Serie 4 kompatibel! Ältere Antriebe als Serie 4 haben eine andere Pinbelegung und ein komplett anderes Protokoll.

Eigentlich war das Ziel, die Steuerung komplett nur mit einem ESP8266 zu realisieren, allerdings gibt es durch die WLAN und TCP/IP-Stackumsetzung Timeoutprobleme, die zum Verbindungsabbruch zwischen dem Antrieb und der Steuerung führen können. Durch die ISR-Version konnte das Problem zwar reduziert aber nicht komplett ausgeschlossen werden. Daher gibt es zwei weitere Versionen, die bisher stabil laufen. Eine Variante nutzt den ESP32 statt ESP8266, welcher über 2 Kerne verfügt und so scheinbar besser mit WLAN-Verbindungsproblemen zurecht kommt. Die andere Option ist ein zweiter MCU, der die MODBUS Simulation übernimmt, sodass sich der ESP8266 nur noch um die Netzwerkkommunikation und das WebInterface kümmern muss.

Funktionen:

WebInterface:

alt text

WebService:

Aktion ausführen

http://[deviceip]/command?action=[id]

Action Beschreibung
0 schließe Tor
1 öffne Tor
2 stoppe Tor
3 Lüftungsstellung
4 1/2 öffnen
5 Lampe an/an

Status abfragen:

http://[deviceip]/status

Response (JSON):

{
  "valid" : true,
  "doorstate" : 1,
  "doorposition" : 0,
  "doortarget" : 0,
  "lamp" : true,
  "debug" : 0,
  "lastresponse" : 0
}

Pinout RS485 (Plug):

alt text

  1. GND (Blue)
  2. GND (Yellow)
  3. B- (Green)
  4. A+ (Red)
  5. +25V (Black)
  6. +25V (White)

RS485 Adapter:

alt text
Zwischen A+ (Red) und B- (Green) ist ein 120 Ohm Widerstand zum terminieren des BUS!

Schaltung

alt text
ESP8266 + Arduino Combo (Bisher stabil, benötigt allerdings zwei MCU)

alt text
ESP32 (Bisher stabil durch Nutzung beider Kerne, 25V auf 5V durch LM2596S DC-DC Step Down Module)

alt text
ESP8266 ISR (instabil!, WLAN-Probleme können die ModBus-Verbindung beenden, dann ist ein Neuanlernen erforderlich)

Installation

alt text

Changelog

06.03.2021: Neue Version mit Arduino Pro Mini als Co MCU 24.02.2021: Neue Version via Interrupt und für ESP32 zur Vermeidung von Timing-Problemen