Willkommen zum eBUS Adapter 3.0!
Dies ist die Dokumentation des eBUS Adapters v3.0, mit dessen Hilfe man mit einer eBUS-fähigen Heizungs-, Lüftungs- oder Solaranlage kommunizieren kann.
Einführung
Version 3 des eBUS Adapters erfüllt erstmals die von der eBUS Spezifikation geforderten Zeiten bei der Arbitrierung.
Dies wird durch Einsatz eines PIC ermöglicht, der u.a. folgende Vorteile mit sich bringt:
- minimale Zeitverzögerung durch Hardware-nahe Programmierung
- flexible, konfigurierbare Varianten zur Verbindung mit dem Host:
- USB serial über CP2102 (onboard)
- Raspberry Pi über GPIO/ttyAMA0
- WIFI über LOLIN/Wemos D1 mini mit ESP-8266 oder via Wemos C3 mini mit Firmware von v5
- Ethernet über USR-ES1 Modul mit W5500
- volle Unterstützung für ebusd enhanced protocol sowie standard protocol
- aktualisierbare Firmware mittels seriellem Bootloader
Um all diese Optionen auf einer 5cm x 5cm großen Platine realisieren zu können, wird fast nur mit SMD bestückt:
Die SMD Technik bietet ebenfalls einige Vorteile:
- hohe Packdichte
- alle Varianten auf einer Platine
- günstige Bestückung
Zwei der Varianten bieten auch die Option zum Anschluss von Sensoren und/oder Displays.
Durch die Verwendung eines DC-DC Wandlers und galvanischer Trennung der Signale ist der eBUS völlig isoliert und es wird nur marginal Strom vom eBUS ohne jegliche Schwankung entnommen (Klasse 0 laut Spezifikation Kapitel 10.7).
Verbindungen
Hier ist eine Übersicht der einzelnen Komponenten mit ihren Verbindungen:
- Heizung/Lüftung/Solarthermie
wird mit dem Adapter über eine 2-Drahtleitung verbunden. - Adapter
wird mit ebusd verbunden über- USB (UART),
- GPIO (UART) des Raspberry Pi,
- WIFI (Wemos) oder
- LAN (USR-ES1 Modul mit W5500).
- ebusd
interpretiert das eBUS Protokoll und macht die Daten bidirektional via MQTT, HTTP, KNX und TCP Port für Home-Assistant, KNX, Node-Red, FHEM und weitere verfügbar.
Varianten
In allen Varianten ist die Unterstützung für USB fest verbaut, da immer ein CP2102 direkt auf der Platine bestückt ist. Diese ist notwendig, um bspw. die PIC Firmware zu aktualisieren oder eine spezielle Ethernet Konfiguration vorzunehmen.
Über ebuspicloader (oder J12) wird die entsprechende Variante eingestellt.
Als Protokoll zwischen ebusd und dem Adapter kann sowohl direkt das eBUS Protokoll (“standard protocol”), als auch das ebusd “enhanced protocol” verwendet werden. Das enhanced protocol nutzt alle Vorteile des Adapters, indem die eBUS Arbitrierung direkt durch die PIC Firmware übernommen wird.
Hinweis zu high-speed enhanced Modus:
Für das enhanced protocol gibt es bei serieller Verbindung (USB, RPI und WIFI) zusätzlich die Variante high-speed, womit
unnötige Verzögerungszeiten durch den Transfer von/zu ebusd (oder ESP) vermieden werden.
Das wird durch Einstellung der Variante aktiviert.
Die ebusd device Konfiguration muss dann vom Präfix enh:
auf den Präfix ens:
gesetzt werden, sofern eine direkte
serielle Verbindung vorliegt (d.h. bei USR oder RPI).
Für WIFI muss die ESP Firmware entsprechend konfiguriert werden und die ebusd device Konfiguration bleibt bei enh:
.
USB
Zur Nutzung des Adapters über den USB-Anschluss muss lediglich J2 mit dem Host verbunden werden.
Die Jumper müssen wie folgt gesetzt werden:
- J1: USB
- J4: USB
- J12: Pins 1-2 für enhanced protocol, optional siehe hier
- J12: Pins 6-7 für high-speed (enhanced), optional siehe hier
Die Stromversorgung erfolgt direkt über den USB-Anschluss J2 am Adapter.
Die ebusd device Konfiguration lautet z.B. -d enh:/dev/ttyUSB0
, wobei ttyUSB0
bei mehreren angeschlossenen
USB serial Adaptern anders lauten kann.
Für den high-speed enhanced Modus, siehe Hinweis oben.
Raspberry Pi
Durch Einsatz einer mindestens 2x9 poligen Buchsenleiste an J8 lässt sich der Adapter auf den
Raspberry Pi aufstecken.
Die Jumper müssen wie folgt gesetzt werden:
- J1: RPI
- J4: RPI
- J12: Pins 1-2 für enhanced protocol, optional siehe hier
- J12: Pins 6-7 für high-speed (enhanced), optional siehe hier
Die Stromversorgung erfolgt direkt über die Raspberry Pi GPIO Buchsenleiste J8.
Die ebusd device Konfiguration lautet: -d enh:/dev/ttyAMA0 --latency=50
Für den high-speed enhanced Modus, siehe Hinweis oben.
Details zur Einrichtung des Raspberry Pi finden sich hier.
WIFI
Wird ein LOLIN/Wemos D1 mini mit ESP-8266
oder ein Wemos C3 mini mit Firmware von v5
auf J9 gesteckt, dann lässt sich der Adapter via WIFI verwenden.
Die Jumper müssen für LOLIN/Wemos D1 mini wie folgt gesetzt werden:
- J1: RPI
- J4: offen (oder auf RPI)
- J12: Pins 1-2 für enhanced protocol, optional siehe hier
- J12: Pins 4-5 (WIFI Modus), optional siehe hier
- J12: Pins 6-7 für high-speed (enhanced), optional siehe hier
Für Wemos C3 mini mit Firmware von v5 müssen die Jumper jedoch wie folgt gesetzt werden:
- J1: RPI
- J4: offen (oder auf RPI)
- J12: muss offen bleiben (kein Jumper)
Die Stromversorgung erfolgt direkt über den USB-Anschluss am Wemos.
Achtung: Die Wemos sind unglaublich heikel in Bezug auf die Stromversorgung! Da kommen die unterschiedlichsten Effekte zum Vorschein, wenn die Stromversorgung ungenügend ist, wie z.B. reboots oder gar keine bzw. nur schlechte und instabile Verbindung zum Access Point.
Ebenso empfindlich sind die Wemos wegen der winzigen Antenne auf jegliche HF Störung. Deshalb braucht es ein gutes bis sehr gutes Signal (mindestens 70%) für eine stabile Verbindung. Es kann auch helfen, mit den zwei beigelegten 1x8 Headern etwas Abstand zwischen den Wemos und den Adapter zu bringen.
Der Wemos muss mit einer passenden Firmware geflasht werden, z.B. ebusd-esp (ab Version 22.11.2020). ebusd-esp muss auf “Adapter 3.0 RX+TX” eingestellt werden bzw. “Adapter 3.0 RX+TX high-speed” falls aktiviert.
Die ebusd device Konfiguration lautet z.B. -d enh:192.168.178.2:9999
, wobei 192.168.178.2
durch die richtige
IP-Adresse ersetzt werden muss.
Für den enhanced high-speed Modus als Transport zwischen Adapter und ebusd-esp, siehe Hinweis oben.
Ethernet
Wird ein USR-ES1 Modul mit W5500 auf J10 gesteckt,
dann lässt sich der Adapter via LAN verwenden.
Die Jumper müssen wie folgt gesetzt werden:
- J1: RPI
- J4: USB
- J12: Pins 1-2 für enhanced protocol, optional siehe hier
- J12: Pins 5-6 (Ethernet Modus), optional siehe hier
Die Stromversorgung erfolgt direkt über den USB-Anschluss J2 am Adapter.
Die Ethernet Konfiguration (IP-Adresse, Netzmaske, Gateway) wird durch den Bootloader im PIC ermöglicht und über den USB-Anschluss J2 vorgenommen, siehe Ethernet Konfiguration. Standardmäßig ist DHCP aktiviert und der Adapter erscheint mit dem Hostnamen-Präfix “aebus3” im Router.
Die ebusd device Konfiguration lautet z.B. -d enh:192.168.178.2:9999
, wobei 192.168.178.2
durch die richtige
IP-Adresse ersetzt werden muss.
Durch die PIC Firmware wird die MAC Adresse des Adapters im LAN auf AE:B0:53:XX:XX:XX gesetzt, wobei die XX von der ID
des PIC abhängen (AEB053
steht für “Adapter eBUS 3”).
Jumper/Pinleisten, Funktionen
In den Varianten mit Wemos und Raspberry Pi stehen zusätzliche Pin Header für den Anschluss weiterer Komponenten zur Verfügung.
Anschluss | Funktion | USB | Raspberry Pi | WIFI | Ethernet |
---|---|---|---|---|---|
J1 | Jumper TX | USB | RPI | RPI | RPI |
J2 | USB-Anschluss | USB-Anschluss | - | Stromversorgung | Stromversorgung |
J3 | Gassensor/Schalter | - | Gassensor | Gassensor | - |
J4 | Jumper POWER | USB | RPI | (RPI) | USB |
J5 | I2C | - | I2C | (I2C)* | - |
J6 | I2C | - | I2C | (I2C)*+ext | - |
J7 | 1wire Sensor | - | 1wire Sensor | 1wire Sensor | - |
J8 | Buchsenleiste RPi GPIO | - | Raspberry Pi | - | - |
J9 | Buchsenleiste Wemos | - | - | Wemos D1 mini | - |
J10 | Buchsenleiste USR-ES1 | - | - | - | USR-ES1 W5500 |
J11 | PIC PROG | - | - | - | - |
J12 | PIC AUX | PIC AUX | PIC AUX | PIC AUX | PIC AUX |
J13/J14 | eBUS-Anschluss | eBUS | eBUS | eBUS | eBUS |
* Zu den Punkten in Klammern:
- I2C wird derzeit noch nicht von der ebusd-esp Firmware unterstützt.
- mit WIFI kann J4 leer gelassen oder auf RPI gesetzt werden.
PIC AUX J12
Dieser Anschluss führt Leitungen des PIC und deren Belegung und Nutzungsmöglichkeiten hängen ausschließlich von der PIC Firmware ab, siehe unter PIC Firmware.
Wichtiger Hinweis: Die Pins am J12 dürfen mit keinem Pin der anderen Jumper/Stecker-/Buchsenleisten in Verbindung gebracht werden, da hier verschiedene isolierte Stromquellen zum Einsatz kommen. Jegliche Verbindung gefährdet den Adapter und potentiell auch Geräte am eBUS!
Hier ist ein Bild, das die beiden isolierten Hälften der Platine darstellt: rot für eBUS und grün für USB etc.:
PIC PROG J11
Am Programmieranschluss J11 lässt sich die Firmware des PIC mit einem entsprechenden Programmiergerät austauschen inkl. des Bootloaders. Das sollte nur in den seltensten Fällen notwendig sein, da der PIC vor Auslieferung bereits programmiert wurde und über den enthaltenen Bootloader auch ohne Programmiergerät neue Firmware aufgespielt werden kann. Details dazu unter PIC Firmware.
Zusatzfunktionen
J3 Gassensor/Schalter
An J3 kann ein Gassensor oder ein einfacher Schalter angeschlossen werden mit folgenden Pins:
- GND
- Signal: Wemos D7 / RPI Pin 18 GPIO 24
J5 I2C
An J5 können I2C Devices (z.B. OLED SSD1306 oder Nextion) angeschlossen werden mit folgenden Pins:
- SDA: Wemos D2 / RPI Pin 3 GPIO 2 (SDA)
- SCL: Wemos D1 / RPI Pin 5 GPIO 3 (SCL)
- +3.3V
- GND
J6 I2C
An J6 können I2C Devices (z.B. OLED SSD1306 oder Nextion) angeschlossen werden und bei WIFI noch weiteres mit folgenden Pins:
- SDA: Wemos D2 / RPI Pin 3 GPIO 2 (SDA)
- SCL: Wemos D1 / RPI Pin 5 GPIO 3 (SCL)
- GND
- +3.3V
- D5: Wemos D5
- A0: Wemos A0
J7 1wire Sensor
An J7 können 1wire Devices angeschlossen werden (z.B. Temperatursensor DS18B20) mit folgenden Pins:
- +3.3V
- Signal: Wemos D6 / RPI Pin 7 GPIO 4 (4,7kOhm pull up)
- GND
LEDs
Der Adapter verfügt über 4 LEDs mit folgender Zuordnung:
- gelb: Stromversorgung PIC
- blau: Signale vom PIC
- grün: eBUS Empfangen
- rot: eBUS Senden
Nur wenn die gelbe LED leuchtet, ist der PIC mit Strom versorgt und kann überhaupt arbeiten. Die grüne und rote LED leuchten beim entsprechenden eBUS Traffic, wobei die grüne permanent leuchtet, wenn die eBUS Leitung noch nicht angeschlossen ist oder wenn auf der Leitung zu wenig Spannung vorgefunden wird. Die blaue LED wird von der PIC Firmware gesteuert, was hier beschrieben ist.
Weiterführende Links
Hier einige Links, die zum Thema beitragen, bzw. Basisinformationen und Grundlagen enthalten:
- eBUS Spezifikation (physikalische Schicht OSI 1)
- Reichelt Warenkorb Stift-/Buchsenleisten:
- die kurzen Stiftleisten und Jumper sind für J1, J4, J11 und J12 (1x6 in 2 Stück 1x3 teilen, 1x14 in 1x8 + 1x6 teilen)
- die 1x6 Buchsenleisten sind für J10
- die langen Stiftleisten sind für J3, J5, J6 und J7
- ebusd-esp Firmware für Wemos D1
- ebusd Wiki