Infrastruktur

Door

Projekte Türstatus, spaceapi.json und Status im Wiki im Header.

Netzwerk
IPv4172.23.195.36
IPv62a01:367:ff1f:100::36
Hostnamedoor
Stromverbrauch
max5W
normal~2W

Montag, 2026-05-15

Alles neu macht der Mai. Wir haben jetzt eine Space-API-API.

Der Rasperry Pi und der Schalter sind außer Betrieb.

Der Status von Wiki und spaceapi.json auf unserem Webserver kann jetzt über einen API-Call gesetzt werden. Code auf Codeberg

Zukunftsmusik

Geplant ist ein ESP8266 basiertes Display neben der Tür, welches mit dem Türkontakt verbunden ist, den Status automatisch setzen und über ein Menü ermöglicht den Status wenn gewünscht zu ändern. Die Hardware existiert bereits.

Wenn die Tür aufgeschlossen wird, ertönt ein Hinweiston und man hat eine gewisse Zeit um den Status des Space manuell zu setzen, z.B. auf FLTI* oder Friends and Family oder unbesetzt.

Der aktuelle Status des Space wird per RGB-LED angezeigt.

Über ein Menü kann der Status jederzeit geändert werden.

Sollte der Status sich nicht aktualisieren lassen, wird akustisch und optisch darauf hingewiesen werden.

Ebenso wenn der Status anderweitig gesetzt wird.

Es wird wieder eine MQTT-basierte Lösung geben, da der ESP8266 zu wenig Ram hat um richtig HTTPS zu sprechen. Dazu wird ein mqtt server im space LAN bereitgestellt werden, das Bedienpanel nur damit sprechen und ein kleiner Dienst die Verbindung zwischen MQTT und der oben beschriebenen space-api-api herstellen. Es ist weiter geplant einen Dienst bereitzustellen der via Webformular ein Update des Status ermöglicht.

Türstatus

Beim Auf- oder Absperren wird somit der Status, welcher beispielsweise oben rechts auf der Webseite zu sehen ist, wieder aktualisiert. Ferner auch:

Dank der Kompatibilität zur SpaceAPI lassen sich der Status der Tür sowie allgemeine Informationen zum [hsmr] auch mit diversen Anwendungen für die SpaceAPI abfragen.

Veraltete Details

Im folgenden wird aus historischen Gründen noch das alte System, welches auf einem Raspberry Pi basierte erklärt.

System

Der Raspberry Pi läuft mit RaspiOS. In /root/.ssh/ liegen die SSH-Schlüssel um dieses Wiki von wega.reis.asia lokal via sshfs zu mounten.

Details und eine automatische Bauanleitung finden sich im Repo, speziell im Pifile.

spaceapi-Skript

Wegen /etc/systemd/system/spaceapi.service wird beim Systemstart /usr/bin/spaceapi --file /mnt/wega/spaceapi.json --wiki /mnt/wega/wiki.d/Site.SiteNav aufgerufen. Zum Neustarten nach Crash hilft systemctl restart spaceapi. Hardware debugging per gpio readall.

Das Script erfüllt zwei Dinge:

  • Status des Schalters über Interrupt erfassen (und beim Start des Programms) und den Status als JSON in Topic "door" des MQTT Brokers auf b2s.hsmr.cc schreiben
  • Subscribed auf das Topic "door" in o.g. MQTT Broker und ändert bei Updates entsprechend spaceapi und Webseite

remote update script

Da der Türstatus über einen MQTT-Broker läuft, kann man auch von außerhalb der Räumlichkeiten den Status ändern (bspw. weil man vergessen hat den Schalter bei verlassen umzulegen). Dafür gibt es folgendes Script (einloggen um Link zu sehen):

Dieses Script basiert auf Python 3 und paho-mqtt, was mittels pip install paho-mqtt nachinstalliert werden kann.

drehtuer, MQTT-{InfluxDB,Prometheus}-Bridge

Der drehtuer.service sorgt dafür, dass bei jeder MQTT-Nachricht der door der enstprechende Zustand in eine InfluxDB geschrieben wird. Grafisch lässt sich dies z.B. im Grafana betrachten.

Weiter werden die Daten mittels Prometheus Exporter zur Verfügung gestellt, siehe http://b2s.hsmr.cc:9876/metrics.

> {__name__=~"drehtuer_.*", instance="b2s.hsmr.cc:9876"}
< drehtuer_door_flti{instance="b2s.hsmr.cc:9876", job="drehtuer"}	0
< drehtuer_door_open{instance="b2s.hsmr.cc:9876", job="drehtuer"}	1
< drehtuer_last_update_unix{instance="b2s.hsmr.cc:9876", job="drehtuer"}	1667679845

Der Code befindet sich auf GitHub.

Montag, 2022-12-12

  • Jahr des OpenBSDs auf dem Pi abgesagt, dafür via pimod automatisiert.

Montag, 2022-11-07

  • Debian Dist-Upgrade ging kaputt.
  • OpenBSD-Installation betritt die Bühne.

Samstag, 2022-11-05

Donnerstag, 2021-11-18

  • Passgenaue(re) Version der Schalterfixierung ist in der Tür verbaut. Das momentan beste Provisorium seiner Art.

Mittwoch, 2021-11-17

  • Funktionalität vom großen roten Switch zu einem kleinen Switch in der Tür verlagert.
  • Dieser Switch ist aktuell provisorisch in die Tür geklebt, jedoch ist ein passgenaues Stück bereits in Arbeit.
  • Der rote Schalter ist gerade funktionslos.

Sonntag, 2021-09-19

  • Sowohl Wikiseite wie auch Debian aktualisiert

Montag, 2020-03-02

  • MQTT an InfluxDB angebunden

Sonntag, 2019-11-03

  • Türstatus läuft jetzt über MQTT über b2s.
  • Für den aktuellen Zustand und live-updates: Subscribe topic "door" auf b2s.hsmr.cc

Dienstag, 2019-01-01

  • Neuen Türstatus mit neuem Pi gebaut.
  • Der ehemalige FLTI*-Schalter wird nun für den Öffnungsstatus genutzt: 0 heißt geschlossen, I heißt auf.

Sonntag, 2018-11-25

  • /home/wiki/webs/hsmr_cc/docs/wiki.d/Site.SiteNav von Hand auf unbesetzt gesetzt. Hardware abgebaut?
  • Sehr händisch auf Umzug gesetzt, da abgebaut.

Freitag, 2016-02-26

  • Von angebrochenem Schalter noch mehr abgebrochen damit er nicht mehr klemmt.

Donnerstag, 2016-02-18

  • Kabelbruch, also alles umgebaut. Schalter kontaktiert jetzt wenn Tür abgeschlossen ist.

Donnerstag, 2016-01-21

  • Nächsten FLTI*-Termin berechnen und mit ausgeben.

In der grauen Vorzeit

Im alten Space sah die Verkabelung mal so aus und war direkt mit dem Türschloss verbunden.