Files
Funksender-Tor/README.md
T

185 lines
3.7 KiB
Markdown

# 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:
```text
0xA7 0x3C 0x01 0x00
```
## Dateien
```text
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:
```text
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:
```text
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:
```yaml
substitutions:
device_name: auto-sender-02
friendly_name: Auto Sender 02
```
Und im Paket:
```yaml
- 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:
```text
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:
```yaml
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:
```bash
git add .
git commit -m "Stabiler Zwischenstand vor Release 1.0"
git push origin main
```
Nach erfolgreichem Test als Release markieren:
```bash
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`.