infrastruktur:lounge:kiosk
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
infrastruktur:lounge:kiosk [2017-11-09 01:36] – ↷ Seite von infrastruktur:kiosk nach infrastruktur:lounge:kiosk verschoben makefu | infrastruktur:lounge:kiosk [2021-03-24 16:59] (aktuell) – ↷ Links angepasst weil Seiten im Wiki verschoben wurden 192.168.146.218 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== kiosk ====== | + | ====== kiosk ====== |
- | {{tag> hardware software}} | + | {{tag> hardware software |
- | Das Shackspace Informationsterminal | + | Das Shackspace Informationsterminal |
- | Siehe [[project: | + | |
+ | DNS entry: lounge.kiosk.shack \\ | ||
+ | username: | ||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | ===== Features ===== | ||
+ | |||
+ | * [[infrastruktur/ | ||
+ | * Übersicht über die nächsten U-Bahnen | ||
+ | * [[doku: | ||
+ | * Anzeige aktuelles Playback des [[infrastruktur/ | ||
+ | * Anzeige aktueller Keyholder (Siehe auch: [[infrastruktur/ | ||
+ | * Fancy Screensaver | ||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | ==== Lichtsteuerung ==== | ||
+ | Hier kann das Licht in der Lounge bequem an- und ausgeschaltet werden. | ||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | ==== U-Bahnen ==== | ||
+ | Diese Ansicht zeigt die nächsten vier U-Bahnen bzw. Nachtbusse, welche an der Haltestelle "Im Degen" in Richtung Hedelfingen/ | ||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | ==== Stromverbrauch ==== | ||
+ | |||
+ | Hier wird der aktuelle Stromverbrauch des shack angezeigt. Einsehbar ist der gesamte Stromverbrauch sowie der Verbrauch über die einzelnen Phasen verteilt. Die Ansicht kann über diverse Zeiträume gezoomt werden. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | ==== Matemat-Füllstand ==== | ||
+ | Hier wird der aktuelle Füllstand der Schächte im [[project: | ||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | ==== Eventliste ==== | ||
+ | Zeigt die nächsten anstehenden Events von events.shackspace.de an, zudem deren Dauer. | ||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | ==== Informations-Seite ==== | ||
+ | Hier finden sich im Moment nur die Abholtermine der Müllabfuhr (Restmüll, Gelber Sack, Papiermüll). Mehr folgt irgendwann™. | ||
+ | |||
+ | ---- | ||
+ | ==== volumio Playback ===== | ||
+ | Der obere Teil des Hauptmenüs zeigt an, was aktuell im [[infrastruktur/ | ||
+ | Es besteht die Möglichkeit, | ||
+ | |||
+ | ---- | ||
+ | ==== Keyholder ===== | ||
+ | Im Hauptmenü wird unten links der Name des aktuellen Keyholders angezeigt. | ||
+ | |||
+ | ---- | ||
+ | {{ : | ||
+ | ==== Screensaver ===== | ||
+ | Erfüllt keine Funktion, soll aber Aufmerksamkeit erregen. Ist auf dem 9ten shack-bday entstanden. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | ===== Entwicklung ===== | ||
+ | |||
+ | ==== System ==== | ||
+ | Der kiosk_v5 läuft auf einem NixOS. Dieses meldet automatisch den User //shack// an, welcher dann eine **i3**-Session startet. | ||
+ | |||
+ | Der **i3** startet dann die Kiosk-Anwendung. | ||
+ | |||
+ | Besonderheit: | ||
+ | |||
+ | Configs/ | ||
+ | |||
+ | ==== Anwendung ==== | ||
+ | |||
+ | Entwickelt mit C++17 auf Basis von SDL2 als Renderer und libcurl als Web-Backend. Benutzt nix sowie qmake als Buildsystem. | ||
+ | |||
+ | === Allgemeines === | ||
+ | |||
+ | Source-Repository: | ||
+ | |||
+ | Dependencies: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * sdl2 (pkg-config) | ||
+ | * sdl2_image (pkg-config) | ||
+ | * sdl2_ttf (pkg-config) | ||
+ | * libcurl (pkg-config) | ||
+ | |||
+ | === Software-Architektur === | ||
+ | |||
+ | Die Anwendung hat eine schwache Modularisierung: | ||
+ | * UI-Module (mainmenu, screensaver, | ||
+ | * Hilfmodule (fontrenderer, | ||
+ | |||
+ | Die Module sind untereinander nur mit der notwendigen API verbunden und haben nach außen hin eine kleine Schnittstelle. Innerhalb eines Moduls ist nicht mehr als die notwendige Abstraktion getätigt (KISS-Prinzip). | ||
+ | |||
+ | Die Initialisierung eines UI-Moduls ist etwas unorthodox (Singleton-Pattern mit "init on first access" | ||
+ | |||
+ | === Touchscreen Treiber === | ||
+ | |||
+ | Der Monitor des Kiosk wird mit einem eGalax Touch-Display bedient, wofür es nur poporitäre Treiber gibt. Diese findet man auf der [[http:// | ||
+ | |||
+ | Die Treiber im Repo wurden für die existente NixOS-Installation angepasst und so gepatcht, dass sie problemlos auf dem System funktioniert (Pfade mit patchelf und ähnlichem angepasst, damit die Shared Objects gefunden werden). | ||
+ | |||
+ | Zudem muss der Treiber noch passend im X-Server konfiguriert werden. Dies geschieht in der NixOS-Konfiguration. | ||
+ | |||
+ | ===== Historie ====== | ||
+ | |||
+ | Siehe [[friedhof: |
infrastruktur/lounge/kiosk.1510187816.txt.gz · Zuletzt geändert: 2017-11-09 01:36 von makefu