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 Fahrzeugtor_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:
- CC1101 Paket empfangen
- Magic Bytes pruefen
- Fahrzeug-ID pruefen
- RSSI-Grenze pruefen
- Sperrzeit pruefen
- 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 GrenzeSperrzeitTestmodus
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
- Sender flashen.
- Empfaenger flashen.
- Pruefen, ob beide in Home Assistant online sind.
- Empfaenger auf
Testmodusstellen. - Sender in Reichweite bringen.
- RSSI, LQI und Paketzaehler pruefen.
- Testmodus deaktivieren.
- Torimpuls pruefen.
- Home Assistant oder WLAN testweise deaktivieren.
- 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.