Tag Archives: Linux

hacks

The octopus has landed!

Yes, yes, yes!

Das vom Foto vom Profi, (C) Jürgen.
Nach neun Monaten Planung und Entwicklung steht er nun funktionsfähig an der WU.

Unser Oktopus steht seit heute an der WU – produktiv und bereit für zwölf Monate Bewährungsprobe bevor am Campus WU alle SB-Terminals ausgetauscht werden.

Hinter uns liegt eines der spannendsten Projekte, das man wohl durchführen kann. Von der Bohrmaschine bis hin zum garbage collector gab es kein Werkzeug, das wir nicht in der Hand hatten, ich kenne nun die Eigenschaften von Melamin ebenso, wie die von 7Byte-RFID. Kurzum: Wir haben in den vergangenen neun Monaten gemeinsam mit den Tischlern alles selbst gemacht. Das war spannend, stressig, arbeitsintensiv, lehrreich, aber vor allem war es ziemlich außergewöhnlich.

Ergebnis ist ein Automat, der – ohne Übertreibung – weltweit einzigartig ist. Er druckt A4-Papier mit geringerer Fehlerrate als es der Drucker mit Original-Zubehör täte. Außerdem verfügt der Terminal über ein neuartiges Navigationskonzept, welches auf Lichtsignalen beruht. Die Optik ist ebenso außergewöhnlich wie die zahlreichen Anwendungsfälle, die er abdeckt. Wir sind stolz auf Barrierefreiheit und Inklusion, reduzierten Strom- und Papierverbrauch sowie ein absolut durchdachtes Service-Konzept. Trotz aller Superlativa haben wir dabei den Kostenrahmen gehalten.

Nennenswerte Verbesserungen

Aus Benutzersicht sind das…

  1. Erhöhte Gebrauchstauglichkeit dank kapazitivem Touch-Monitor, größeren UI-Elementen sowie verbesserter Navigationsstruktur.
  2. Einmaliger Ansatz für Barrierefreiheit mit Unterfahrbarkeit für Rollstuhlfahrer dank Auskragung.
  3. Zusätzlich Bezahlung via Kreditkarten. (Zurzeit aufgrund der unklaren Situation hinsichtlich Rechtmäßigkeit von Studiengebühren allerdings nicht freigeschalten.)

Für Wartungsmitarbeiter bedeutet das…

  1. Lösung des bestehenden Papierstau-Problems.
  2. Vergrößerte Service-Intervalle durch größeren Papiervorrat.
  3. Ausdrucke werden nur noch auf expliziten Wunsch gefertigt – weniger Müll.

Für uns Techniker sind das…

  1. Umstellung auf robustes Linux und Abstraktion aller Hardware-nahen Treiber auf Standardschnittstellen.
  2. 100% Python-Code, ein wunderschön-sauberer UI-Code dank PyQt.
  3. Größtmögliche Kompatibilität zur bestehenden Server-Schnittstelle, die in den kommenden 12 Monaten von zwei unterschiedlichen Terminal-Generationen genutzt wird.

Rückblick in Bildern

Neun Monate und 15.000 Zeilen Code später…

Die erste Studie zum “Service Terminal Plus”.
Mittels TeamViewer und Telefonkonferenz wird parallel in Scheibbs und Wien am 3D-Modell gearbeitet.
Während nun das Möbelstück gefertigt wird, verzweifle ich an Video4Linux…
Der erste Mock-Up macht das Terminal spürbar: Wir verorten Komponenten.
Mit kleinen Änderungen wird aus dem Mock-Up ein Prototyp.
Ein Prototyp, der über reichlich Innereien verfügt: Drei Drucker, Touch-Monitor, vier Lichtsegmente, Kamera, Bankomat-Terminal, Kartenleser, Papierlade, Netzwerk und Strom.
Letzte Änderungen fürs (materielle) User Interface werden direkt eingezeichnet.
Aufräumen beim alten UI, welches sich stark an Mausbedienung orientiert…
… hin zu einem Touch-optimierten UI.
Plötzlich eröffnet sich die Frage der Montage. Es folgen Diskussionen, Standortbesichtigung und ein Gutachten, dass der Doppelboden der Belastung standhält.
Letzte Iteration im Büro. Alles fast fertig!
Feinschliff durch professionelle Grafik.

Das Wir im Bericht hat Namen, die ich gerne nennen will. Dank geht an Dennis, der die event loop der Applikation aber auch des Projekts über hat. Wolfgang und Andreas waren beim Möbelstück mit Herzblut dabei – dem Ergebnis kann man es mehr als nur ansehen. Roland und Seán haben sich um die Betriebssystemebene gekümmert. Dank Bernhard läuft das Terminal zu großen Teilen auf Basis des alten, zusätzlich war er unser Erleuchter bei den LED-Streifen, die übrigens eine Idee von Simon waren. Infos zum Drucker-Umbau kamen von einem hilfsbereiten Mitarbeiter der Firma Knapp. Den Bankomat-Code verdanken wir Gabor, und ich habe den Großteil meiner Programmierarbeit bei Stack Overflow “gestohlen”. Der grafische Feinschliff kam von Markus und Wolfgang. 

Bisherige Blogeinträge zum Terminal: Service Terminals Plus und Terminal-Update

hacks

Interactive Digital Signage (part 2)

Although our signage solution using Microsoft’s Kinect has been out in the field for a few months now we’ve decided to beat the big drum for it. My earlier blog post explains all the details, so here’s the buzz:

hacks

Interactive Digital Signage with MS Kinect

Despite the high bullshit to fact ratio SIME Vienna was fruitful as Florian Dorfbauer (LaGentz) and I came up with the idea of using Microsoft’s Kinect as a controlling device for public user interfaces.

At WU Wirtschaftsuniversität Wien we’re throwing the current course schedule on large screens. Given the fact that we have up to two hundred courses in the list but – in contrast to airports – only a limited budget for the task the students are presented a slideshow rather than an array of expensive displays. You can imagine that it’s quite boring to watch the screen for a few minutes until your content appears…

Enough of background talk, here’s a video of the prototype solution.

What next?

The nice thing about the proof of concept is that it uses a web browser for content display. So anything can be displayed. The commands from Kinect are entered into the browser as key strokes (thus no browser APIs, compilation, or anything involved).

The challenge from here will be twofold: First we still need a user interface that automatically explains the  interaction possibilities to the user. Second, the Kinect is a brandnew device designed for your living room. So we have no data on its durability out in the field…

hacks

Digital Signage: TCO senken!

Sorry, this post is available in German only. If you’re interested in large-scale digital signage solutions and reducing their total cost of ownership, feel free to contact me. (Or buy me a plane ticket together with a dictionary…)

Eines der spannendsten Projekte, an dem ich im Zuge des Neubaus der WU Wirtschaftsuniversität Wien arbeite, ist das im Konzept als Door Display bezeichnete elektronische Türschild vor sämtlichen Hörsälen, Projekt- und Seminarräumen. Das Display soll aktuelle Raumbelegungen visualisieren und ist in einer Stückzahl von über 200 geplant.

Bei einer Recherche zu derartigen, als digital signage bezeichneten, Anwendungsfällen stößt man auf ziemlich Marketing-lastigen Content. In Hochglanz-Manier wird von Features geschwärmt, wenig lässt sich hingegen zu den Systemarchitekturen herausfinden.

Die Produktwelt der Anbieter dreht sich um das jeweilige Content Management System (CMS), also um die Software, die den redaktionellen Inhalt verwaltet und schließlich auf die Schirme wirft. Die Gruppenpraxis um die Ecke lizenziert also das Kernsystem und besorgt sich dann zwei, drei Rechner samt Bildschirm für die eigentliche Anzeige. Die Wartung der dezentralen Hardware liegt in diesem Fall vielleicht bei der Ordinationsassistentin, die auch zu Hause hin und wieder ein Windows 7 installiert. Bei den angesprochenen Stückzahlen von 200+ wird’s aber irgendwann langweilig das so zu tun…

Die Größenordnung ändert Prioritäten

Eine simple Kostenrechnung für unseren Anwendungsfall ergab, dass die Gesamtkosten weniger im Redaktionssystem, sondern vielmehr in der Hardware und vor allem im laufenden Betrieb liegen. Das hat offensichtlich damit zu tun, dass das CMS – sofern das Lizenzmodell nicht kriminell durchdacht ist – problemlos von einer auf 200 Installationen skaliert. Was weniger gut skaliert, ist der Mitarbeiter mit der Windows-CD, der für sämtliche Updates über einen sehr weiträumigen Campus laufen müsste. Und bei 200 Rechnern inklusive Bildschirm ist auch jeder gesparte Euro ein spürbarer Vorteil. Unsere Anforderungen daher nochmal im Detail:

  • Möglichst wartungsfreier Betrieb
  • Niedrige Hardwarekosten
  • Content aus bestehenden Systemen

Im Brainstorming wurden viele Alternativen diskutiert. Da konkurrierten chinesiche iPad-Nachbauten, digitale Bilderrahmen oder Industrie-Panels mit waschechten PC-Systemen im Kampf um die niedrigsten Gesamtkosten.

Nach einigen Tests steht unser vorläufiger Sieger fest: ein embedded System auf ARM-Architektur mit integriertem, resistiven Touchscreen – so eine Art Smartphone im 7 Zoll Format. Erhältlich ist ein derartiges Ding beispielsweise beim deutschen Hersteller Garz & Fricke.

Power over Ethernet und Stromverbrauch allgemein

PoE ist nicht gleich PoE: Ethernet zerlegt!

Das oben beschriebene Device benötigt lediglich 4-8 Watt aus der Dose, was selbst bei einer Stückzahl von 200 ungefähr dem Stromverbrauch meines Heizstrahlers im Badezimmer entspricht! Die Möglichkeit das Device mit Power over Ethernet (PoE), also mit Stromversorgung über das Netzwerkkabel zu betreiben, macht eine separates Netzgerät und die entsprechende Verkabelung überflüssig.

Ein paar anfängliche Probleme mit der Nicht-Standardisierung von Power over Ethernet ließen uns zwar an der Machbarkeit dieser Stromversorgung zweifeln, aber inzwischen scheint’s zu klappen. (Und man kennt jetzt ein LAN-Kabel von innen.)

Software auf ein Minimum reduziert

Die im Test befindliche Hardware läuft unter Windows, Linux oder auch Android. Kosten und internes Know-How sprechen jedenfalls klar für die Linux-Variante. Deutlich mehr Qual der Wahl gab es da schon bei der eigentlichen Visualisierung der Raumbelegungen. Spätestens seit meinem Ausflug in die Welt der Apps weiß ich, wieviel mehr Aufwand es bedeutet, eine Client-Applikation zu erstellen, als dummes HTML an einen Browser zu übergeben.

Webseite dient zur Visualisierung

Das geschilderte Problem inkorporiert allerdings auch bereits die Lösung: am embedded Device wird lediglich ein Browser gestartet, der eine Webseite aufruft. Das bedeutet, dass sämtliche Daten und Logik zentral am Server liegen und auch dort – vergleichsweise günstig – gewartet werden.

Wer’s ausprobieren möchte, hier liegt die Webseite: http://bach.wu.ac.at/3ksd/displays/

Bisher war unsere Bilanz vielversprechend:

  • Hardware vergleichsweise günstig bei Industrie-Qualität
  • Client-Applikation (weitestgehend) durch Webseite ersetzt

Einzig das Problem mit den Software-Updates schien noch nicht gelöst. Das Einspielen eines neuen Betriebssystems müsste durch einen Mitarbeiter vor Ort erfolgen; jedenfalls keine gute Idee bei österreichischen Personalkosten…

Das Gesamtsystem im “Mission Control Center” Modus

Architektur: Alle Daten und Programme liegen zentral

Mit Red Boot haben wir ein Bootstrap-Environment, das sich Betriebssystem und Konfiguration selbst zusammenstückelt. Der Boot-Vorgang sieht also wie folgt aus:

  1. Das Door Display bekommt Strom und Connectivity durch das LAN-Kabel
  2. Der DHCP-Server vergibt eine IP-Adresse.
  3. Red Boot hat eine Server-Adresse fix konfiguriert. Diese IP-Adresse ist der einzige Punkt, der lokal und einmal in der Lebensdauer der Hardware konfiguriert werden musste. (< 5 Minuten)
  4. Von der Server-Adresse wird der Linux-Kernel, das Betriebssystem, über das Netzwerk in den Speicher geladen.
  5. Das Dateisystem wird ebenso über das Netzwerk angebunden.

Von hier aus geht’s wie schon zuvor weiter: Starten des Browsers, Aufruf der Webseite mit den Raumdaten. Da die Klonarmee der Displays keine individuelle Konfiguration – etwa einen URL pro Raum – besitzt, entscheidet schließlich der Webserver anhand der IP-Adresse, welche Raumdaten angezeigt werden.

Sämtliche Änderungen der Software am Display können zentral durchgeführt werden. Ein SSH-Skript startet die Armada innerhalb weniger Sekunden neu.

Betriebsbereit

Die Zeichen stehen folglich gut für diese, meines Erachtens nach, wunderschöne Lösung. Wir starten demnächst den Probebetrieb vor ausgewählten Hörsälen, um die tatsächlichen Probleme im Betrieb kennenzulernen.

Bereit für den Outdoor-Test

Da man die spannenden, aber vor allem die erfolgreichen Projekte nicht alleine schafft, gebührt großer Dank Gregor und Florian (LaGentz) für den Hardware- und Qt-Input, Alfred und Peter (PoE), Simon (Grafik), Roland (TFTP/NFS) und insbesondere Dennis und Seán, die das Door Display von der Idee zum Produktiveinsatz tragen.