{{Hardware |kontakt = {{Benutzer|Chrissi^}}, {{Benutzerin|Kenakapheus}}, {{Benutzer|larsan}} |status = working |ort = [[Kammer des Schreckens]] |beschreibung = Kritische Spacetürinfrastruktur |bild = S0-sorting-hat.jpg |bildbeschreibung = Der sorting-hat mit einigen angeschlossenen Kabeln |usage = do not touch }} Basilisk ist ein Raspberry Pi 3 mit custom Pi-Hat, der diverse Dinge bei der Zugangstechnik zum Space steuert. Basilisk löste dabei im August 2021 die vorherige Installation von [[Powerberry]] in der [[Kammer des Schreckens]] ab. Hierbei wurden einige historisch gewachsene Strukturen neu aufgesetzt, sodass das ganze etwas übersichtlicher und wartbarer wurde. Funktionen, derzeit in Betrieb: * Abgreifen des Klingelsignals, überprüfen des Spacestatus und wenn Entitäten anwesend sind: Drücken des Türsummers für die Haustür * ssh-Türöffner für die Spacetür, siehe auch [[StratumKey#SSH-Hack]]. Weitere, zum Teil vorbereitete, zum Teil schon halb fertige Funktionen umfassen: * Überprüfung des Türzustands offen/geschlossen (reed-schalter angeschlossen und verdrahtet) * Abgreifen und Auslösen des Flurlichts * Unterscheiden zwischen Klingel unten (Haustür) und Klingel oben (Spacetür), Kabel für Klingel oben schon gelegt * Announcen von Änderungen via mqtt ins Spacenetz === Aufbau === * Als Basis ein Raspberry Pi 3, kann man leicht austauschen, falls kaputt * Oben drauf steckt ein Pi-Hat mit Optokopplern, Relais und Klemmterminals [https://gitli.stratum0.org/chrissi/s0-sorting-hat s0-sorting-hat] * an dem hat sind alle Ein- und Ausgänge verbunden, u.A. auch die Funkfernbedienung für die Keymatic * Als System ist ein aktuelles raspi-os auf der SD-Karte * Die Grundlegenden SSH-Funktionen werden vom Betriebssystem gehändelt und dann in einem shellskript mittels http-request an ein nodered durchgereicht. * Im Nodered werden die http-requests und gpio-inputs mit den gpio-outputs verdrahtet. === Workflow zur Wiederherstellung === * frisches raspios auf einer frischen SD-Karte aufsetzen * Das ganze auf einem Pi so konfigurieren, dass du von deinem Rechner aus mittels <code>ssh root@s0-basilisk</code> auf den Pi kommst. * Das [https://gitli.stratum0.org/stratum0/ansible-basilisk ansible-repo] klonen und bei dir mittels <code>./playbook.sh basics.yml</code> ausführen, dies sollte einige Zeit dauern * Ggf hostname und IP-Adresse ändern (letzteres via ansible?) Ggf aufpassen, dass der Pi nicht vorher schon mit zu offenem ssh auf der IP-Adresse von basilisk (192.168.178.6) hängt, da diese zum Teil von außen erreichbar ist. * Den Nodered-Flow aus dem Repo im Nodered importieren * [https://pad.stratum0.org/p/kammerdesschreckens#L116 weitere Dinge] auf dem System fixen, die ggf nochmal so im Ansible mit abgeildet werden sollten, dass das nicht mehr manuell nötig ist * irgendwie muss zwischendrin noch das stratumkey-keys-repo auf den Pi, am besten aus einem backup und dann neu hincommitten, so ist auch der notwendige post-receive-hook noch am richtigen Ort. [[Kategorie:Infrastruktur]]