Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
tuerschloss [2019-01-09 18:48] – [Vor dem Launch noch zu tun] ciko | tuerschloss [2019-02-12 19:31] – [Status-Abfrage via HTTP] binarydiv | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Türschloss | + | ====== |
- | Diese Seite dokumentiert das elektronische Türschloss der AfRA. | + | **-- Work in Progress. Inbetriebnahme ist am Freitag, 15.02.2019. --** |
- | ===== Funktionen ===== | + | Die Eingangstür |
- | * Auf/ | + | |
- | * Zuschließen der AfRA via Button + Timer (done) | + | |
- | * Auf/ | + | |
- | * Aufschließen der AfRA via RFID Token (tbd) | + | |
- | ===== Benutzen ===== | + | {{:img_20190117_210636.jpg?200|}} |
- | Wichtig: Das Schloss prüft nur alle 5-10 Sekunden nach neuen Befehlen - dafür halten die Batterien aber auch 1 Jahr (BLE). Es kann also einen Moment dauern, bis sich die Tür öffnet. | + | |
- | ==== Tür aufschließen ==== | ||
- | Dein SSH-Key muss auf dem Türschloss hinterlegt sein! //(Hier fehlt der Prozess, wer wann Keys bewilligt und wer diese auf dem Türschloss deployt)// | ||
- | Verbinde dich mit dem AfRA WLAN und ssh auf open@SCHLOSS_IP (derzeit 172.23.42.114) auf. Achte darauf, den hinterlegten ssh-key zu nutzen (ssh -i PFAD_ZUM_KEY open@SCHLOSS_IP). Das Schloss öffnet sich innerhalb vom 10 Sekunden. | + | ===== Schlüssel bekommen ===== |
- | Wenn du bereits im space bist, kannst du auch einfach den " | + | Um einen Schlüssel für die AfRA zu erhalten, wende dich bitte an [[binarydiv@afra-berlin.de|Lexi]] (binaryDiv im [[irc://irc.freenode.net/# |
- | Sollte sich die Tür nicht öffnen lassen, kann ein physischer Key trotzdem die Tür öffnen. Hier ist eine Liste mit Kontaktdaten zu physischen Keyholdern: | + | Es gibt hierbei zwei Arten von elektronischen Schlüsseln für das Schloss: SSH-Keys und RFID-Tokens. |
- | * Your name here | + | |
- | ==== Tür zuschließen ==== | + | |
- | | + | * Ein **RFID-Token** (oder eine Karte) |
- | | + | |
- | * Option 3: Wenn du im space bist, kannst du auch einfach den " | + | |
- | ===== Hardware | + | Gerne kannst du auch beide Varianten nutzen (für mehr Redundanz!). |
+ | |||
+ | Für Notfälle bzw. Ausfälle des elektronischen Schlosses existieren auch physische Schlüssel. Diese werden jedoch nur an eine //kleine// Anzahl von Mitgliedern vergeben, die z.B. in der Nähe der AfRA wohnen und in Notfällen aufschließen können. | ||
+ | |||
+ | |||
+ | ===== Bedienung | ||
+ | |||
+ | Wichtig: Das Schloss prüft nur alle 2-5 Sekunden nach neuen Befehlen - dafür halten die Batterien aber auch 1 Jahr (BLE). Es kann also einen Moment dauern, bis sich die Tür öffnet. | ||
+ | |||
+ | |||
+ | ==== Aufschließen (beim Betreten der AfRA) ==== | ||
+ | |||
+ | Um via **SSH** aufzuschließen, | ||
+ | Verbinde dich dann mit '' | ||
+ | Das Schloss öffnet sich innerhalb von 10 Sekunden. | ||
+ | |||
+ | Um via **RFID** aufzuschließen, | ||
+ | Dieser ist hinter der Glastür eingebaut (schwarze Fläche mit rot-leuchtender LED). \\ | ||
+ | Du hörst einen Piep-Ton und der Leser leuchtet Grün. Das Schloss sollte jetzt öffnen. | ||
+ | |||
+ | Sollte sich die Tür nicht öffnen lassen, kann ein physischer Key trotzdem die Tür öffnen. Hier ist eine Liste mit Kontaktdaten zu physischen Keyholdern: [Link] FIXME | ||
+ | |||
+ | |||
+ | ==== Zuschließen (beim Verlassen der AfRA) ==== | ||
+ | |||
+ | Wenn du als Letztes die AfRA verlässt, stell bitte sicher, dass du die Tür zuschließt. Beachte bitte außerdem die Hinweise im [[shutdown|Shutdown-Protokoll]]. | ||
+ | |||
+ | Um die Tür zu verschließen, | ||
+ | Ziehe die Tür hinter dir zu. Nach ca. **10 Sekunden** schließt das Schloss selbstständig ab. Warte solange und prüfe dann, ob die Tür **wirklich** zu ist! | ||
+ | |||
+ | Alternativ kannst du die Tür auch mit deinem **SSH-Schlüssel** zuschließen: | ||
+ | |||
+ | Wenn sich die Tür mal nicht abschließen lässt, du aber gehen möchtest, reboote einmal den Raspberry Pi im Kontrollkasten (Stecker raus, Stecker rein). | ||
+ | Wenn das immer noch nicht funktioniert, | ||
+ | **Bitte informiere die Mitglieder über die Mailingliste**, | ||
+ | |||
+ | |||
+ | ==== Bedienung des Schlosses innerhalb der AfRA ==== | ||
+ | |||
+ | Wenn du im Space bist und das Schloss auf- oder zuschließen möchtest, benutze die **zwei Buttons**, die sich am Türschloss selbst (weißer Kasten direkt an der Tür) befinden. | ||
+ | Diese reagieren ohne Verzögerung. Der obere Button schließt auf, der untere Button zu. | ||
+ | |||
+ | Wenn einmal gar nichts mehr geht, z.B. weil die Batterien leer sind, lässt sich das Schloss auch per Hand am Rad öffnen und schließen. Bitte nutze diese Option jedoch **nur**, wenn es notwendig ist, da das System hierdurch seinen State verliert und sich neu kalibrieren muss. | ||
+ | |||
+ | |||
+ | ===== Status-Abfrage via HTTP ===== | ||
+ | |||
+ | Innerhalb des WLANs (discord) ist es möglich, über HTTP den aktuellen Status des Türschlosses abzufragen. | ||
+ | |||
+ | Hierfür reicht ein simpler GET-Request auf http:// | ||
+ | |||
+ | Der HTTP-Server antwortet dann mit '' | ||
+ | |||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * < | ||
+ | |||
+ | // | ||
+ | Dies ist jedoch aus mehreren Gründen explizit **nicht** gewünscht. Türschloss und Space-Status sind unabhängig voneinander. Sinn dieser Status-Abfrage ist beispielsweise eine space-interne Steuerung von Geräten, die nur dann angeschaltet sein sollen, wenn jemand da ist, z.B. Heizungsthermostat, | ||
+ | |||
+ | |||
+ | ===== Implementierung ===== | ||
+ | |||
+ | //TODO: Implementierung auf eigene Seite auslagern?// | ||
+ | |||
+ | ==== Hardware | ||
Das Schloss ist ein [[https:// | Das Schloss ist ein [[https:// | ||
Angesteuert wird alles von einem RPI Zero W über Bluetooth Low Energy. Die Hardware ist in einer transparenten Box verbaut. Die Box bekommt einmal 12V und bucht sich via WLAN ins AfRA Netz ein. | Angesteuert wird alles von einem RPI Zero W über Bluetooth Low Energy. Die Hardware ist in einer transparenten Box verbaut. Die Box bekommt einmal 12V und bucht sich via WLAN ins AfRA Netz ein. | ||
Zeile 33: | Zeile 90: | ||
{{: | {{: | ||
{{:: | {{:: | ||
+ | {{: | ||
- | ===== Software | + | Der RFID Reader ist ein [[https:// |
+ | |||
+ | ==== Software ==== | ||
Angesteuert wird das Schloss von Python-Skripten (/ | Angesteuert wird das Schloss von Python-Skripten (/ | ||
Zur Kommunikation mit dem Schloss wird [[https:// | Zur Kommunikation mit dem Schloss wird [[https:// | ||
- | Um Keys deployen zu können und das System zu ändern gibt es den " | + | Um Keys deployen zu können und das System zu ändern gibt es den " |
+ | |||
+ | Die Verbindung RPI <-> Schloss ist mit einem PSK gesichert, welcher als QR Code vorliegt. Aus dem PSK leitet sich ein user-key ab. Der einzige user-key ist aktuell auf dem RPI hinterlegt. Die PSKs liegen derzeit bei ciko (und werden an den Vorstand übergeben). | ||
+ | |||
+ | Die aktuelle Software findet sich unter [[https://github.com/ | ||
+ | |||
+ | |||
+ | ===== Administration ===== | ||
+ | |||
+ | ==== Einen User Deployen ==== | ||
+ | Um einen neuen User zu deployen/ | ||
+ | * Logge dich mit dem user " | ||
+ | * Füge den ssh key zu /// | ||
+ | * Lese den RFID Token mit /// | ||
+ | * Starte das Script | ||
+ | * Warte auf " | ||
+ | * Halte den Token an den Leser | ||
+ | * Kopiere | ||
+ | * Füge den RFID Token Nummer zu /// | ||
+ | * Füge den Code als erstes Wort in einer neuen Zeile hinzu. Weitere Worte werden als Kommentare ignoriert. | ||
+ | * Lege den Nutzer auf [[intern: | ||
+ | |||
+ | |||
+ | ===== Status der Implementierung ===== | ||
+ | * Auf-/ | ||
+ | * Zuschließen via Button + Timer (done) | ||
+ | * Auf-/zuschließen via Buttons am Schloss (done) | ||
+ | * Aufschließen via RFID Token (done) | ||
+ | * Status-Abfrage via HTTP (done) | ||
+ | |||
+ | Noch zu tun: | ||
+ | * Statische IP/Hostname/ | ||
+ | * Sicherheitsschloss einbauen, Inbetriebnahme (15.02.2019) | ||
+ | * (?) Zuschließen via RFID? | ||
+ | * Hübsch machen, besseren Schalter (zum Schließen) anbringen | ||
+ | * Schalter-Delay reduzieren (halbe Sekunde ist zu lang) | ||
+ | * Admin-Utils zur einfachen Key-Verwaltung, | ||
- | Die Verbindung RPI <-> Schloss ist mit einem PSK gesichert, welcher als QR Code vorliegt. Aus dem PSK leitet sich ein user-key ab. Der einzige user-key ist aktuell auf dem RPI hinterlegt. Die PSKs liegen derzeit bei ciko. //(Und er sollte diese bei Implementierung an $Vorstand übergeben)// | ||
- | ===== Vor dem Launch noch zu tun ===== | ||
- | * Statische IP/ | ||
- | * (Done) Ein Sicherheitsschloss (Schlüssel geht von beiden Seiten gleichzeitig) kaufen | ||
- | * ciko hat ein Schloss besorgt | ||
- | * Sicherheitsschloss einbauen | ||
- | * Bequemeres Key Management | ||
- | * Ein Prozess, um die physischen Keys umzutauschen | ||
- | * Ein Prozess, um einen Key zugesprochen zu bekommen und das deployment zu regeln | ||
- | * Aufhängen der Box mit dem RPI in Türnähe |