Files

3.7 KiB

Funksender Tor

ESPHome-Projekt fuer eine autonome Torsteuerung mit 433 MHz CC1101 Funk.

Das System besteht aus zwei Teilen:

  • auto_sender_01.yaml: ESP32-C3 Sender im Fahrzeug
  • tor_steuerung.yaml: ESP32 Empfaenger an der Torsteuerung

Home Assistant ist nur fuer OTA, Diagnose und Einstellungen vorgesehen. Die eigentliche Entscheidung und das Schalten des Relais laufen lokal auf der Torsteuerung. Das Tor kann also auch dann oeffnen, wenn Home Assistant, WLAN oder Internet ausfallen.

Status

Release-Kandidat: 1.0.0-rc1

Getestetes Funkpaket:

0xA7 0x3C 0x01 0x00

Dateien

esphome/
  auto_sender_01.yaml
  tor_steuerung.yaml
README.md
CHANGELOG.md

Hardware

Sender

  • ESP32-C3 DevKit / ESP32-C3 Super Mini
  • CC1101 433 MHz Modul
  • Versorgung passend zur Einbausituation

Empfaenger

  • ESP32 DevKit / ESP32 Relaisboard
  • CC1101 433 MHz Modul
  • Relaiskontakt fuer Torimpuls
  • Endschalter oder Rueckmeldekontakte fuer Tor AUF und Tor ZU

Funkprotokoll

Der Sender uebertraegt alle 2 Sekunden ein festes 4-Byte-Paket:

Byte 1: 0xA7  Magic
Byte 2: 0x3C  Magic
Byte 3: 0x01  Fahrzeug-ID
Byte 4: 0x00  Reserve

CC1101 Einstellungen:

  • Frequenz: 433.92 MHz
  • Modulation: GFSK
  • Symbolrate: 4800
  • Paketlaenge: 4
  • CRC: aktiv
  • Sync: 0x91 0xD3

Sender flashen

Datei:

esphome/auto_sender_01.yaml

Das erste Flashen erfolgt bei deiner Hardware per TTL/USB-Adapter. Danach kann OTA verwendet werden, sobald der Sender im WLAN erreichbar ist.

Wichtige Anpassung fuer weitere Fahrzeuge:

substitutions:
  device_name: auto-sender-02
  friendly_name: Auto Sender 02

Und im Paket:

- 0x02

Die LED blinkt nur einmal pro Minute kurz auf. Das reduziert unnoetige LED-Laufzeit, ist aber noch kein echter Akkubetrieb. Fuer Akkubetrieb sollte spaeter Deep Sleep oder ein Wakeup-Konzept ergaenzt werden.

Empfaenger flashen

Datei:

esphome/tor_steuerung.yaml

Die Torsteuerung arbeitet autonom:

  1. CC1101 Paket empfangen
  2. Magic Bytes pruefen
  3. Fahrzeug-ID pruefen
  4. RSSI-Grenze pruefen
  5. Sperrzeit pruefen
  6. Relais lokal fuer 500 ms schalten

Home Assistant wird nicht zum Oeffnen benoetigt.

Home Assistant Diagnose

Die Torsteuerung stellt unter anderem bereit:

  • Letzte Fahrzeug-ID
  • Letzter RSSI
  • Letzter LQI
  • Pakete gesamt
  • Gueltige Pakete
  • Verworfene Pakete
  • Toroeffnungen
  • Sekunden seit letztem Paket
  • Sekunden seit letzter Toroeffnung
  • WLAN Signal
  • Freier Heap
  • Neustartgrund
  • Firmware-Version

Einstellbar:

  • RSSI Grenze
  • Sperrzeit
  • Testmodus

Der Testmodus prueft die komplette Logik, schaltet aber das Relais nicht.

WLAN

Beide YAML-Dateien enthalten einen aktiven WLAN-Eintrag und vorbereitete weitere Eintraege:

wifi:
  networks:
    - ssid: ${wifi_1_ssid}
      password: ${wifi_1_password}

Weitere WLANs koennen in den substitutions und im wifi.networks Block aktiviert werden.

Testablauf vor Einbau

  1. Sender flashen.
  2. Empfaenger flashen.
  3. Pruefen, ob beide in Home Assistant online sind.
  4. Empfaenger auf Testmodus stellen.
  5. Sender in Reichweite bringen.
  6. RSSI, LQI und Paketzaehler pruefen.
  7. Testmodus deaktivieren.
  8. Torimpuls pruefen.
  9. Home Assistant oder WLAN testweise deaktivieren.
  10. Pruefen, dass der Empfaenger weiterhin lokal schaltet.

Git

Zwischenstand speichern:

git add .
git commit -m "Stabiler Zwischenstand vor Release 1.0"
git push origin main

Nach erfolgreichem Test als Release markieren:

git add .
git commit -m "Release 1.0.0 - autonome CC1101 Torsteuerung"
git tag -a v1.0.0 -m "Erste stabile Version"
git push origin main
git push origin v1.0.0

Falls dein Standard-Branch master heisst, ersetze main durch master.