Donnerstag, 30. Oktober 2014

Lebt denn das alte Fritzboxerl noch?

Total professionelle Verkabelung
der nackten Fritzbox
Bei einem aktuellen Bastelprojekt habe ich eine Fritzbox 3030 zerschossen. Nach dem Flashen einer modifizierten Firmware gab der ausgediente Router kein Lebenszeichen mehr von sich. Nur über die Platinenanschlüsse für die serielle Konsole konnte ich die Karre aus dem Dreck ziehen.

Samstag, 11. Oktober 2014

Erfahrungen beim Erweitern des XBMC Soma FM Add-ons

Beim Anpassen des XBMC (oder bald Kodi) SomaFM Add-ons habe ich ein paar Sachen über die XBMC Add-on API gelernt, die ich hier festhalten möchte. Die Dokumentation ist dürftig, aber die API ist nicht sonderlich kompliziert. Beim Stöbern nach Informationen muss man immerwieder aufpassen, ob sie die gefundene Information auf Add-ons, Skins oder XBMC selbst beziehen. Hier geht es um Add-ons.

Mittwoch, 1. Oktober 2014

The R-Pi with the MP3

Groove Salad auf SomaFM war der erste Internet-Radiosender in der Shoutcast Liste, den ich früher öfters mal angeschmissen habe. Spätere Ambitionen, SomaFM komfortabel im Wohnzimmer hören zu können, scheiterten. Doch nun habe ich XBMC und seit einiger Zeit auch ein SomaFM Plugin. Und daran kann man schön rumbasteln... :)

Montag, 29. September 2014

Im Keller brennt Licht oder auch nicht

Zu unserer Mietwohnung gehört ein Kellerraum, wo ich mir eine kleine Bastelwerkstatt mit Lötkolben, UDOO-Board und Bierkühlschrank und all so Kram eingerichtet habe. Der Zugang zu der Kellerwerkstatt ist zu meinen Hauptbastelzeiten ohne künstliche Beleuchtung meist stockfinster. Wir haben zwar Licht im Keller, doch dafür gibt es nur einen Schalter am Anfang des Gangs, an dessen Ende unser Kellerraum ist. Ich habe daher drei mögliche Kellerlichtstrategien:

  1. Ich stokele im Dunkeln durch den Keller,
  2. ich schalte das Flurlicht an, öffne meinen Keller, schalte dort Licht an, latsche den langen Gang zurück um das Flurlicht auszuschalten und dann wieder in meinen Keller. Das Spielchen mache ich beim Rausgehen dann rückwärts.
  3. Oder ich lasse das Licht brennen, während ich in der Werkstatt bin. Das ist aber Verschwendung und außerdem fühle ich mich dann "beobachtet". 
Die Lösung der Problematik ist - denke ich - jedem sofort klar: Ein netzwerkgesteuertes Kellerlicht muss her. Konkret heißt das:
  • Eine LED in einer transparenten Android-Figur dient als Licht.
  • Das Licht wird mittels eines GPIO-Ports meines UDOO Boards gesteuert.
  • Ein Webserver auf dem UDOO Board steuert wiederum den GPIO-Port und liefert Rückmeldung über dessen Status. Der Server ist im LAN erreichbar.
  • Ein optionaler Android Client ermöglicht eine komfortable Fernsteuerung des Lichts.
An diesem Projekt gefällt mir besonders, dass es recht viele Disziplinen involviert aber jede auf einem sehr einfachen Niveau:
  • Handwerk
    LED in die Android-Figur einpflanzen, Kabel verlegen
  • Elektrizität
    LED korrekt und sicher am UDOO-Board anschließen
  • GPIO-Steuerung
    Programmatisch mit den GPIO-Ports interagieren
  • Webserver
    • CSS
    • HTML
    • GET Requests
      LED-Status dynamisch anzeigen
    • POST-Requests
      Zum Steuern der LED
  • Python
    Webserver mit GPIO-Steuerung implementieren
  • Daemon
    Den Server mit Systemstart im Hintergrund ausführen auf Linux
  • Android
    Für den optionalen Client
Das Projekt wollte ich hier erst präsentieren, wenn ich damit fertig bin. Ich merke nun aber, dass das eine ganze Menge Arbeit ist. Entsprechend wird der Text auch länger als erwartet. Daher hier nun also nicht das große Ganze, sondern dies und das Vorhandene. ;)

Daemon

Ein Teilaspekt des Projekts ist die Ausführung der Servers als Dienst auf Linux. Dienste sind Programme, die mit dem System starten und im Hintergrund laufen. So einen Dienst nennt man in der Linuxwelt Daemon.
Meinen Server habe ich in Python geschrieben. Damit kann man grundsätzlich auch Skripte zu einem Daemon machen. Ich hatte damit aber meine Schwierigkeiten und stieß dann auf eine elegante Lösung, die unabhängig von Python ist. Doch zunächst:

Quick & dirty

Grundsätzlich kann man unter Linux Prozesse im Hintergund ausführen, wenn man die startende Kommandozeile mit "&" abschließt, also etwa so:

python server.py &

Das System zeigt dann die Prozess ID (PID) an. Diese benötigt man z.B., um den Prozess später mit kill zu beenden.

Der Prozess endet spätestens mit der Sitzung. Schließt man also das Terminalfenster oder bricht die Verbindung ab, wird unser Server beendet. Um dies zu verhindern, kann man nohup verwenden. Das Programm unterdrückt das HUP-Signal (Hang up) für den Prozess:

nohup python server.py &

Das schöne an dieser Lösung ist, dass sie sofort funktioniert. Man muss nichts weiter implementieren oder konfigurieren. Für erste Tests ist sie daher gut geeignet. Sie hat aber einen provisorischen Charakter, vor allem weil der Start nicht automatisch erfolgt.

start-stop-daemon

Oft möchte man, dass nur eine Instanz eines Dienstes ausgeführt wird. Diese möchte man unkompliziert starten und stoppen können, insbesondere wenn das System startet respektive stoppt. Beides wird unter Linux häufig mit Hilfe einer pid-Datei erreicht. Beim Start des Daemons wird dessen PID in eine Datei geschrieben. Ist die Datei vorhanden und läuft ein Prozess unter der darin enthaltenen Prozess-ID, läuft der Dienst bereits. Anhand der PID kann er z.B. beendet werden
Das Programm start-stop-daemon nimmt einem genau diese Logik ab und ersetzt darüber hinaus nohup und "&".

Wie man das benutzt, kann man prima bei Stephen C Phillips nachlesen. Dort steht auch, wie man den ganzen Kram mit dem System startet.

Ich hatte bei der Anwendung mit dem einen oder anderen Problem zu kämpfen:

Um ein Python-Script "direkt" ausführbar zu machen, muss man am Anfang der Datei ein Shebang mit dem Python Interpreter einbauen. Damit das klappt, muss die Datei UNIX Zeilenumbrüche (und nicht Windows Zeilenumbrüche) enthalten. Das war für mich auch deshalb verwirrend, weil mein Python-Script funktionierte, wenn ich es als Argument für Python gestartet hatte:
python server.py

Der Aufruf
./server.py
lieferte leider nur
: Datei oder Verzeichnis nicht gefunden

Das Tool dos2unix rettete mich aus dieser Lage.

Weiterhin erreichte mich die Meldung nicht, dass mein Script mit dem Nutzer, den ich für den Daemon vorgesehen hatte, keine Berechtigung hatte, die GPIO-Ports zu manipulieren. Auf dem UDOO-Board ist die voreingestellte Gruppe mit Schreibrecht auf die GPIO-Ports ugpio.

Ausblick

Wie man sieht habe ich über einen der letzten Punkte aus meiner Liste berichtet. Das liegt daran, dass die Arbeit an dem Projekt schon recht fortgeschritten ist. Den Code des Servers gibt's bei github. Falls ich keine Lust mehr habe, über das Projekt zu berichten, kann man dort wenigstens den Code einsehen. :)

Dienstag, 16. September 2014

13. Braunschweiger Webmontag

Am gestrigen Montag fand der 13. Braunschweiger Webmontag statt. Ich war dort und habe einen der Vorträge gehalten und ein paar Internetseiten mit verschiedenen Knobeleien vorgestellt. Und so sah das aus:

13. Braunschweiger webMontag Teil.2 from Christian Cordes on Vimeo.

Die Vorträge der anderen Teilnehmer waren ebenfalls interessant. Es ging um Ambient Assisted Living, die Epson Moverio Smartglasses und ein App-Baukastensystem für Geschäftskunden.

Hier noch mal die Links zu den Rätseln meines Vortrags:

  • Mathe- und Programmierrätsel
Danke an Stefan Winterfeld für's Zeigen!

  • Browserrätsel

Abkürzung Ouverture Facile

  • Kombination aus beidem

  • Bonus

Danke an Hannes für:

Freitag, 12. September 2014

Roots bloody roots

Alter! Irgendwann zwischen Internetanschluss und Abi - so '96 / '97' vielleicht - entdeckte ich das MP3-Format für mich. Mein Rechner war damals nicht in der Lage, eine 128kbit-MP3-Datei in voller Qualität abzuspielen. Der Player bot zum Glück die Möglichkeit, die Qualität zu reduzieren.

Wonach ich aber eigentlich gesucht hatte, war die Möglichkeit, Musik von Konsolenspielen abzuspielen. Ich hatte die Hoffnung, dass auf den Konsolen sowas wie die Amiga-MOD-Dateien verwendet werden. Insbesondere auf dem Super Nintendo gibt es ein Spiel, dessen Musik ich echt gern mag.

In den 17 Jahren seither guckte ich vielleicht noch ein oder zwei mal halbherzig nach einer Abspielmöglichkeit - vergebens.

Heute habe ich ein Plugin für foobar2000 gefunden, das Musikdateien von diversen Konsolen abspielt. Jetzt höre ich frisch gerenderte Musik auf dem besagten Super Nintendo Spiel und freue mich, dass das ausgerechnet am Video Games Day passiert ist! Alter! :)

Montag, 1. September 2014

Langsam in Fahrt kommen

Nach Fusion Festival und Urlaub kehrt nun langsam wieder der geregelte Tagesablauf ein und damit Zeit und Lust für Basteleien.

Da mir der Weg in meinen Bastelkeller zu dunkel bzw. die Bedienung der Beleuchtung zu umständlich ist, begann ich vor einiger Zeit mit dem Bau einer netzwerkgesteuerten Lampe. Ein interessanter Aspekt dabei sind für mich die simplen Teilaufgaben auf Einsteigertutorialniveau, die sich aber auf viele Domänen verteilen. Ich werde berichten, wenn ich halbwegs fertig bin.

Gerade eben habe ich meinen Yamaha-Verstärker repariert. Seit Jahren nervte mich, dass man mit dem großen Lautstärkeknopf am Gerät die Lautstärke de facto nicht mehr regeln konnte. Ich hatte in einem Hifi-Laden mal ein Ersatzteil bestellt, die Bestellung verlief aber leider im Sande. Ein zweiter Versuch neulich hat mir dann jetzt auch zu lange gedauert. Also habe ich noch mal intensiv recherchiert und siehe da: ich stehe doch nicht allein mit dem Problem da. Dieses Video hat mich dann nach weiterer Suche motiviert, den Schraubendreher zu schwingen und siehe da: DER GEHT!


Was mich in dem Umfeld nun noch nervt ist, dass sich mein Raspberry Pi mit XBMC nicht überreden lässt, Audio sowohl per HDMI als auch analog auszugeben. So muss ich zum Musikhören leider den Fernseher einschalten oder umständlich im Menü den Audioausgang umstellen (wofür ich natürlich auch den Fernseher brauche). Naja. Vielleicht klärt sich das ja noch.

Dienstag, 27. Mai 2014

Webmontag

Beim gestrigen Webmontag in Braunschweig habe ich mich endlich dazu durchgerungen, einen Slot zu gestalten. Mein Thema war "Geocaching als Alternate Reality Game".

Ich vermisse Geocaches mit dem gewissen technischen Etwas. Neben den normalen Caches, die man mehr oder weniger nur abhakt gibt es unter anderem Mystery Caches, die ein Rätsel oder gar eine Geschichte enthalten. Doch auch diese lassen noch viel Luft nach oben. Ich wünsche mir Rätsel wie bei Professor Layton, mysteriöse Vorfälle wie bei Lost (und den dazugehörigen Alternate Reality Games), hackable Websites wie bei Ouverture Facile. Und ich wünsche mir WiFi, Bluetooth, NFC, QR-Codes, Sprachsynthese und intelligente Anrufbeantworter.

Bei meinem Vortrag wollte ich zum einen auf das Thema aufmerksam machen und zum anderen Ideen der Teilnehmer sammeln. Unter den Ideen waren:
  • ein globaler Multicache, der nur im globalen Team anzulegen und von einem weiteren zu lösen ist,
  • Geocaches mit Zeitlimit,
  • NFC, Bluetooth und WiFi Fährten und
  • bewegliche Geocaches, z.B. als NFC-Tags an öffentlichen Verkehrsmitteln.
Danke für's Zuhören und Mitmachen!

Den gesamten Vortrag bzw. den gesamten Webmontag kann man hier ansehen:
Nach dem Vortrag kann man mich auch noch bei einem ganz besonderen Highlight des Webmontags sehen... ;)


Schau doch auch mal vorbei beim Webmontag!

Nachtrag: Gerade bin ich noch über einen Beitrag vom Kraftfuttermischwerk gestolpert, wo es um jemanden geht, der Geld versteckt... Also, auch zu so etwas möchte ich gern motivieren. ;)

Mittwoch, 21. Mai 2014

Motorsteuerung

Schon letztes Jahr nahm ich einen defekten CD Rekorder meines Sohnes auseinander, um an all die interessanten Bauteile zu gelangen, die man beim Basteln verwerten kann. Dabei hatte ich besonders an die Motoren des CD Players und des Kassettenlaufwerks gedacht.
Zu einem ersten den-Motor-mit-eigener-Stromquelle-drehen konnte ich mich bis vor kurzem nicht aufraffen, weil ich nicht so ein tolles Netzteil mit allem Pipapo habe wie z.B. mein Kumpel Kai. Bei mir gibt's nur olle Netzteile von wer weiß was für Geräten und Batterien. Ein billiges Multimeter lässt mich erahnen, wann und in welcher Richtung mehr oder weniger Strom fließt oder fließen will. Mein Kumpel Kai nennt das Gerät Schätzometer. Oder war's Multischätzer? Na, egal.
Arduino in seinem gemütlichen Nest
Neulich habe ich mich allen Unwegsamkeiten zum Trotz doch darangemacht. Zunächst mal habe ich Kabel an eine Netzteilbuchse eines ausgedienten Babyfons gelötet, damit ich mein Breadboard einigermaßen komfortabel mit Energie versorgen kann. Dann habe ich meinen recht Arduino MICRO auf das Breadboard gesteckt - passt perfekt, was wohl kein Zufall ist.
Mit einem Poti wollte ich die Geschwindigkeit eines Motors steuern. Als elektrotechnische Niete wusste ich nicht so recht, ob ich nun überrascht sein sollte, dass das so direkt eher banane funktioniert. Das erinnerte mich an die Kupplung meines alten Opel Kadetts: ganz kleiner Spielraum in der Mitte und bei Rennen kein Pokal absehbar.
Fertige Teststeuerung (ohne Diode)
Des Rätsels Lösung war dann, den Wert des Potis mit dem Arduino auszulesen und damit einen PWM Ausgang zu regeln. Dieser wiederum steuert einen Transistor, um nicht auf die 5V und die geringe Stromstärke des Arduinos beschränkt zu sein. Nach diversen falschen ach-so-funktioniert-das-Alarmen hatte ich dann auch irgendwann die richtige Schaltung um den Transistor herausgefunden. Geht. ;)
Da das ganze ein gängiges Vorgehen ist, um einen Motor per Arduino zu steuern, gibt es dazu diverse Anleitungen im Netz. Darüber habe ich im Nachhinein erfahren, dass ich besser noch eine Diode hätte verbauen sollen, um den Transistor und den Arduino vor einer Art initialen Rückstoß des Motors zu schützen. Bislang ist aber wohl noch nichts kaputt gegangen. ;)

Sonntag, 4. Mai 2014

Freies Labor

Am vergangenen Freitag habe ich gemeinsam mit Lars das erste Mal den Hildesheimer Hackerspace besucht. Nachdem wir uns in der Kufa durchgefragt hatten, wo der Hickerspace zu finden sei, trafen wir auf eine gute Hand voll Technikbegeisterte mit ihren Laptops und Hackerbrausen. Wie sich das für echte Nerds gehört, dauerte es eine Weile, bis das Eis gebrochen war. Doch dann ging das rege Treiben weiter.

Eine der Hauptaufgaben des Abends war die Vorbereitung des bevorstehenden Geekends. Das ist ein Wochenende voller geekiger Themen und Beschäftigungen, das wie letztes Mal im Trillkegut stattfindet. (Anmerkung: Ich bin in der Trillkestraße aufgewachsen, die sich wie das Trillkegut in der Nähe des Trillkebachs befindet.)

Das Geekend soll als Vorgeschmack für den Inhalt des frischen Vereins Freies Labor dienen, um Mitglieder dafür zu gewinnen. Ziel ist ein vom Verein getragener Ort, der rund um die Uhr als Werkstatt, Forum und gemeinsame Küche genutzt werden kann. Dafür braucht es genügend Mitglieder, um die Mittel für Miete, Nebenkosten, Internet und vielleicht sogar einen 3D-Drucker aufzubringen.

Ich finde das super und spiele selbst mit dem Gedanken, Mitglied zu werden. Ich freue mich über Interesse und Anregungen zum Thema!

Dienstag, 29. April 2014

Raspberry Eye

Roman Rolinsky stellte sich die Standardfrage eines jeden Raspberry-Pi-Besitzers: Was macht man jetzt damit?

Seine Antwort war, sich das Ding an den Kopf zu nageln. Also, nicht wirklich. Aber ein bisschen:
http://hackaday.com/2014/04/20/the-raspberry-eye-sees-all/

Montag, 28. April 2014

2do: Qi-Handyhalter im Auto

Coole Smartphones können selbstverständlich drahtlos geladen werden. Die dafür nötigen Ladegeräte sind allerdings nicht so günstig, dass ich mir überall dort eins hinlege, wo ich jetzt Micro-USB-Kabel ins Handy stecke.

Es gibt aber einen Ort, wo es für mich Sinn macht, kein Kabel ins Handy fummeln zu müssen: im Auto. Das geht immer Halterung entspannen, Handy rein, Halterung spannen, Ladegerät aus dem Fach nehmen, in die Steckdose, ins Handy und später folgt dann der Rückbau. Die Halterung als drahtloses Ladegerät im Auto macht für mich total Sinn.

Chris Crumpacker hat sich da schon mal Gedanken gemacht, diese umgesetzt und alles in seinem Blog veröffentlicht:

Sonntag, 27. April 2014

Lego Riesenrad

Neulich war ich mit Kasi im Rastiland. Mein Sohn wollte mal wieder was mit "Papas Elektrolego" machen und im kleinen Riesenrad des Freizeitparks kam ihm die passende Idee: Wir bauen ein Riesenrad! :)

Dafür gab es einige technische Schwierigkeiten zu meistern. Die wichtigsten waren:
  • 5 oder 6 Speichen gleichmäßig auf einer Antriebsachse verteilen und
  • 5 oder 6 mehr oder weniger gleiche Gondeln mit einem wilden Sammelsurium an Legoteilen herstellen.
Das Speichenproblem haben wir mit Legofelgen gelöst, die sechs entsprechende Löcher besitzen.

Die Gondeln hatte ich mit dem Lego Digital Designer entworfen. Gebaut haben wir dann letztendlich aber andere. Vielleicht mache ich mir noch mal die Mühe, das Endergebnis im Designer zu erfassen. Der spuckt nämlich coole Bauanleitungen aus. Das Riesenrad selbst ließe sich damit sogar auch modellieren. Allerdings ist die Bedienung für derlei verwinkelte Modelle nicht gerade optimiert.

Und nun gibt's noch ein Video des mehr oder weniger fertigen Riesenrades im Betrieb. Viel Spaß beim Zuschauen und Nachbauen! :D


Samstag, 19. April 2014

Hartnäckiges Zitronenbrett

Mein Lemonboard ist theoretisch leistungsfähiger als mein Raspberry Pi. Trotzdem kann ich im Moment nicht viel damit anfangen. Die verfügbaren Images (s.u.) sind alle auf ihre Art für mich unbrauchbar.

XBMC wäre zumindest vorläufig ein interessanter Anwendungsfall. Das verfügbare Image läuft aber mit seinem Frodo (XBMC 12) deutlich langsamer als der Pi mit Gotham (XBMC 13). Außerdem fehlen dem Image wichtige Einstellungsmöglichkeiten und Software - insbesondere auch Software, mit der ich als semierfahrener Linuxanwender Software aktualisieren oder nachinstallieren könnte. Aktuelle Uhrzeit, WLAN, Internetradio - Fehlanzeige.

Ich würde mir ja gern ein eigenes System zusammenzimmern, doch ich habe es mit der Anleitung auf lemonboard.org nicht geschafft, mir eine Entwicklungsumgebung aufzusetzen. Ich habe es mit drei verschiedenen Linuxinstallationen auf Virtual Box versucht (Ubuntu 14 64bit, Ubuntu 12 32bit, Debian Wheezy 32bit) und auf einem Ubuntu 13. Das ltib Image für das Lemonboard bootet nicht.

Was ich gern hätte, wäre das Verständnis und die Software, um mir schnell minimale Linux-Systeme für verschiedene SOC-Boards aufsetzen zu können. Ich dachte da an ein minimales Root FS, das einen SSH-Server startet und eine Paketverwaltung bietet. Die Plattform soll armhf sein. Und das ganze möchte ich dann mit dem jeweils passenden Kernel und Bootloader für Raspberry Pi, Lemonboard, UDOO, WD MyCloud und was mir sonst noch so in die Finger kommt kombinieren können.

Ich glaube, ich brauche jemanden, der mir mal zeigt, wie man sowas macht.

http://www.lemonboard.org/download/ubuntu/lemonboard-solo-ubuntu-sdcard.img.gz

http://www.lemonboard.org/download/android/lemonboard-solo-andorid-sdcard.img.gz

http://www.lemonboard.org/download/ltib/lemonboard-solo-ltib-sdcard.img.gz

http://www.lemonboard.org/download/xbmc/lemonboard-solo-xbmc-sdcard.img.gz

Mittwoch, 16. April 2014

Kratzröhre

Ich fummel da gerade wieder an einem Projekt rum. Es geht um bunt animierte Einhornhaare. Ein Lösungsansatz war, bunte Wolle durch einen transparenten Schlauch zu ziehen. Die Rechnung habe ich allerdings ohne die Reibung gemacht. Die wird nämlich schon bei geringfügigen Kurven im Schlauch so groß, dass ein Garnfaden eher reißt als sich durch den Schlauch ziehen zu lassen. Wieder was gelernt! ;)

Dienstag, 1. April 2014

Ampel für Kasi 1

Für ein besonderes Festival hatte ich mal mit dem Ingo ein Hemd (und T-Shirts) so präpariert, dass die Tanzbewegung des Trägers Lichteffekte auslöst. Dazu wird es hoffentlich bald einen separaten Beitrag geben. Doch hier geht es um etwas anderes. Als mein Sohn aufgrund des Hemdes spitzbekommen hatte, dass der Papa "was mit Lampen" machen kann, wünschte er sich von mir eine Ampel. Ich hatte das Projekt lange vor mir hergeschoben und glaubte den Wunsch bei meinem Sohn schon lange in Vergessenheit geraten. Doch ich hatte mich getäuscht: gerade rechtzeitig vor seinem Geburtstag erinnerte mich mein Sohn an seinen Ampelwunsch.

Wir hatten keineswegs dieselben Vorstellungen von einer selbstgebauten Ampel. Im Hinterhof spielen die Kinder gern Straßenverkehr mit allerlei Fahrzeugen. Dafür war die Ampel gedacht. Die folgenden Anforderungen hatte ich mir als Kompromiss aus Machbarkeit, sinnvollem Spielgerät und Wünschen meines Sohnes auferlegt:

  • Ein Gerät - im Gegensatz zu mehreren Ampeln in mehreren Gehäusen
  • Dreifarbige Lichtzeichen für vier Richtungen, von denen jeweils zwei identisch geschaltet sind
  • Lichtzeichen auch an sonnigem Tag erkennbar
  • Eigene Energiequelle, um Kabel zu vermeiden
  • Kein eigener Standfuß aber Besenstielkompatibilität
  • Robust genug um einen Nachmittag mit Kindern und einen kurzen Regenschauer zu überstehen
Testbetrieb mit Schirm,
Heißkleber und Pappwand
Wie das bei derlei Projekten so ist, habe ich viele Sackgassen (zum Glück bereits im Kopf) ausprobiert. Viele Rat-, Material-, Werkzeuggeber und Helfer haben mitgewirkt. Danke Euch allen! Auch wenn ich immer mal wieder abschweifen werde, möchte ich mich vorrangig auf den Weg konzentrieren, der zum Ziel geführt hat.

Das Hirn der Ampel ist ein Arduino Uno. Ich durfte mir von mehreren Seiten anhören, dass man das auch locker analog hinbekommen hätte, aber hey - ich bin Softwareentwickler. Ich mag es, wenn ich wenigstens ein bisschen programmieren darf. Außerdem wollte ich über kurz oder lang ohnehin den Einstieg in diese Mini-Board-Bastelwelt finden, um langfristig mal einen kleinen Roboter oder sowas zu bauen. (Das meinte ich übrigens mit Abschweifen.) Das Programm der Ampel war das erste, was ich von der Ampel hatte. Als ich es später ausprobieren konnte, hat es praktisch auf Anhieb funktioniert! Ich habe es dann allerdings noch erweitert und verschönert. Auf das Programm werde ich später separat eingehen.

Schematische Darstellung 2er
LED in FIMO-Halterung

Testbetrieb mit 3 Signalrichtungen
Wie bereits erwähnt besitzt die Ampel vier mal drei Lichtzeichen. Jedes Lichtzeichen besteht aus drei "superhellen" LED. Die drei LED habe ich in Fimo fixiert. Sie sind im Kreis angeordnet (es ist natürlich ein Dreieck, aber die Idee ist ein Kreis) und leicht zur Mitte gerichtet. Schwarzer Karton dient als Lampenschirm. Die Schirm und FIMO-LED-Pakete stecken in passgenau ausgeschnittenen Löchern in einer Pappkartonwand. Den Bereich im Lampenschirm habe ich als Diffusor mit Heißkleber aufgefüllt.


Gehäuse mit Ständerführung
und Pappwänden
Ein Loch ist im Boden
Die Pappwände ersetzen die Glasscheiben einer ehemaligen Zierlaterne aus Holz. Ihr Dach lässt sich aufklappen und im geschlossenen Zustand verriegeln. Den abblätternden Anstrich habe ich abgeschliffen und alles schwarz lackiert, auch um ein wenig Wetterbeständigkeit zu erreichen. In den Boden habe ich ein Loch gebohrt, durch das ein handelsüblicher Besenstiel passt. Von innen habe ich einen Möbelfuß mit entsprechendem Durchmesser über das Loch geschraubt. Der Möbelfuß ist etwas kürzer als die Lampe und dient einem Besenstielständer als Führung und Auflage oberhalb des Ampelschwerpunkts.

Zusammengetüddelt und rein!
Dann das alles noch zusammengetüddelt, ins Gehäuse und fertig! ;) Kleiner Scherz. Das war der vorrangig mechanische Teil. Die Teile über Elektrik und Software folgen bald. Versprochen.

Sonntag, 30. März 2014

Tine

Heute habe ich von meinem Kumpel Lars einen heißen Tipp in Sachen Personal Cloud bekommen: Tine. Von dem, was ich bisher gehört habe, scheint es meine Ansprüche an eine Personal Cloud besser zu erfüllen als ownCloud. Mein Hauptaugenmerk liegt auf Terminen und Kontakten. Im Gegenssatz zu ownCloud beherrscht Tine den Zugriff auf mehrerer Benutzer auf gemeinsame Kalender und Adressbücher.

Leider haben mich Probleme an meinen Servern daran gehindert, Tine auf die Schnelle zu installieren. Ich bleibe aber dran.

Mittwoch, 26. März 2014

OpenMediaVault

Mein WD MyCloud NAS ist zwar in anbetracht seines Preises ganz nett, aber es lässt eben auch Wünsche offen.

Zum einen wäre da die etwas mäßige Performance. Die integrierte Festplatte kann (am SATA-Controller meines PCs) Daten mit ca. 90MB/s übertragen. Im NAS fühlt sich das ganze deutlich langsamer an. Allerdings muss ich gestehen, dass mein Netzwerk viele Flaschenhälse bietet. Von einer externen USB3-Festplatte direkt am NAS konnte ich nun eine Kopiergeschwindigkeit von ca. 30MB/s messen. Das ist nicht toll, aber damit kann ich leben.

Weiterhin hatte ich die Hoffnung, diverse Serverdienste auf dem NAS laufen lassen zu können. Leider hatte ich bei dem Versuch, diese zu installieren, immer wieder mit proprietären Teilen des NAS zu kämpfen. Am Ende startete das Gerät stets nicht mehr. Ich habe dieses Projekt vorerst aufgegeben.

Als Alternative oder Ergänzung probiere ich gerade OpenMediaVault auf dem UDOO aus. Erste obeflächliche Tests brachten vielversprechende Ergebnisse. Mal sehen, vielleicht fliegt das MyCloud raus. Andererseits ist es mir etwas zu schade, das UDOO als NAS zu degradieren...

Sonntag, 23. März 2014

Zurück zu OpenELEC

Irgendwie habe ich meine xbian Installation auf dem Raspberry Pi kaputtgespielt. Den gestrigen Fernsehtag konnten wir damit zwar bestreiten, aber das ganze lief auch schon mal besser.

Eigentlich hatte ich mich für xbian entschieden, weil es nach eigenen Angaben immer ganz vorne mit dabei ist, und weil es die Verwendung des Systems auch für andere Zwecke gut ermöglicht. Da ich nun zwei Alternativen zum Raspberry Pi mein Eigen nenne, kann letzterer meinetwegen auch als dediziertes Mediencenter laufen.

Daher habe ich nun OpenELEC eine zweite Chance gegeben und muss sagen: ich bin begeistert. Die Betaversion läuft mit Gotham wie geschmiert. Hurra, der Alltag ist wieder ein Stückchen besser geworden! ;)

NACHTRAG: Zu früh gefreut - es gibt Probleme mit dem WLAN.

NACHNACHTRAG: Zu früh beschwert - es gibt ein Problem mit meinem Billig-WLAN-Dongle. Mein Etwas-Weniger-Billig-WLAN-Dongle funktioniert einwandfrei.

Mittwoch, 19. März 2014

Wiki und ownCloud

Ich habe erste Fortschritte in Sachen Personal Cloud gemacht. Zwei Dienste laufen nun probeweise auf meinem lemonboard.

Als Wiki lasse ich Mediawiki laufen. Die berühmteste Installation von Mediawiki ist Wikipedia. Wer in der Wikipedia nicht nur gestöbert, sondern auch schon mal mitgewirkt hat, hat eine Vorstellung davon, wo die Stärken und Schwächen dieses Wikis liegen. Ich war erst ein wenig enttäuscht von der Benutzerverwaltung, doch nun finde ich es eigentlich ganz gut. Kein unnötiger Schnickschnack - einfach Seiten editieren und gut.

Weiterhin habe ich ownCloud installiert. Diese dient als einigermaßen komfortabler Onlinespeicher ähnlich DropBox oder Google Drive. Viel wichtiger finde ich aber den Kalender und das Adressbuch. Beides kann z.B. mit dem Smartphone synchronisiert werden. Die dazugehörige Android App kostet knapp einen Euro und hat "nur" drei Sternen. Daher teste ich die Synchronisierung gerade mit zwei kostenlosen Apps - eine für den Kalender und eine für die Kontakte. Davon bemerkt man zum Glück nichts, da die Apps lediglich die Synchronisierungsbrücke zwischen ownCloud und den Systemdiensten von Android darstellen.

Diese und weitere Dienste kann ich natürlich auch kostenlos und viel komfortabler bei den großen Anbietern bekommen. Aber der Gedanke, dass meine Daten zu Hause auf zusammengebasteltem Zeug liegen und das ganze auch nur recht gut funktioniert, bereitet mir einfach Spaß. Ich kann's nur empfehlen! :) Und man lernt auch eine Menge dabei.

Montag, 17. März 2014

Personal Cloud

Lange Zeit hatte ich mir ein Gerät für zu Hause gewünscht, auf dem ich Netzwerkdienste laufen lassen kann, ohne unnötig Energie, Stille und Platz zu verschenken. Ich hätte zwar die FritzBox etwas aufbohren können, aber irgendwie war das nicht das richtige.

Seit dem Jahreswechsel purzeln nun geeignete Geräte regelmäßig in die Wohnung. Weihnachten und Geburtstag brachten ein einfaches NAS und einen Raspberry Pi. Ein Umzug brachte ein bis zwei weitere FritzBoxen. Die CeBIT brachte ein UDOO und ein lemonboard. Damit sollte ich langsam die nötige Hardware beisammen haben, um den einen oder anderen Dienst laufen zu lassen.

Die Dienste, die mir vorschweben, haben im Wesentlichen etwas mit Daten zu tun. Das NAS wäre dafür am besten geeignet, denn Datenverwaltung ist seine wesentliche Aufgabe und ich würde das Gerät nicht für andere Zwecke benutzen wollen. Mein NAS ist ein WD MyCloud. Das Teil läuft zwar unter Linux, reagiert aber etwas sensibel auf Modifikationen. Ich habe es diverse Male geschafft, das System bootunfähig zu machen. Ich kann das Gerät zwar wiederbeleben, aber der Prozess ist langwierig und alle Daten gehen verloren. Da macht das Basteln wenig Spaß. Vielleicht spiele ich bei Zeiten noch mal mit einer alternativen Festplatte damit rum, wo ein Zurücksetzen nicht so doll wehtut. Doch vorerst werde ich eher mit einem der anderen Geräte weitermachen.

Unabhängig davon, welches Gerät zumindest vorläufig mein Server wird, weiß ich noch nicht so recht, wie ich meine Wunschdienste realisieren soll. Hat jemand vielleicht Erfahrung und kann mir helfen? Ich möchte:
  • ein Wiki,
  • einen Blog,
  • eine Versionsverwaltung
    (Subversion und / oder git, allerdings denke ich nun wieder darüber nach, github zu verwenden),
  • ein Ticketsystem
    (auch hier ggf. github),
  • irgendwelche tollen Webservices und Android Backends... ;)
Weiterhin fände ich es nett, die typischen Organizer Dienste selbst zu hosten:
  • Adressbuch
  • Kalender (auch Gruppenkalender)
  • Mail
Natürlich mit Synchronisierung des Smartphones und Webzugriff.

Sonntag, 16. März 2014

Developer Playground auf der CeBIT 2014

Vergangene Woche habe ich mit ein paar Kollegen am space:d Developer Playground auf der CeBIT teilgenommen. Das bedeutete zwei Tage Barcamp und einen Tag Hackathon rund um die Themen Web und Mobile. Konkret konnte man mit diversen Geräten herumspielen. So hatte ich nun endlich auch mal ein Google Glas auf der Nase und habe eine Invasion von Außerirdischen abwehren können, die man nur durch eine EPSON Moverio sehen konnte und konnte.

Außerdem gab's diverse Lemonboards und UDOO-Boards zum Spielen. Am Ende durfte man die Dinger sogar behalten, daher bin ich nun stolzer Besitzer je eines Exemplars. Darüberhinaus winkten den Teilnehmern des Hackathons neben den genannten Boards und Brillen (kein Google Glas) diverse Alcatel Smartphones und ein Fischertechnik Roboter Starterset. Letzteres hätte ich sehr gern bekommen, aber der Gewinner hat es zugegebenermaßen eher verdient als ich. Das Smartphone, das ich gewonnen habe, konnte ich gleich meiner Schwester vermachen. Ich habe am Wochenende nämlich feststellen müssen, dass sie mit total dem Gurkentelefon durch die Gegend gelaufen ist. Das geht ja so nicht.

Die Kollegen Tri und Dennis haben mit ihren coolen Apps gleich zwei Moverios abgeräumt. Ich sage nur Flappy Bird. Echt spitze!! Dagegen sah meine Ampel alt aus. Die Technik wollte nicht so wie ich und so blieb am Ende nur Zeit für eine kleine Lichtshow, die man per Android-App auf dem UDOO starten konnte. Ich befürchte, die Ampel hat außerdem ein wenig gelitten, da mir nicht klar war, dass UDOO mit 12V betrieben wird statt mit den 6V, für die die Ampel ausgelegt ist. Über mein Ampelprojekt im Allgemeinen und die Ampeldisco im Speziellen werde ich bald noch gesondert berichten.

Neben den Spielereien und Preisen bieten derlei Veranstaltungen aber noch etwas viel Wichtigeres: Kontakt zu interessanten Menschen. So hat es mich sehr gefreut, Friedger und Markus kennengelernt zu haben, die mir bereits von der Droidcon bekannt waren. Die Italiener Michael und Emanuele bildeten quasi die UDOO-Fraktion und haben mit viel praktischem Know-How und guter Laune unterstützt wo sie nur konnten. Bäm! Peter aus Kenya hat spontan die Chance genutzt, mit UDOO / Arduino herumzuspielen. Und der Fischertechnikkastengewinner hofft, einmal als Videokünstler auf der Fusion mitmischen zu können. Ich gönne es ihm, aber an seinen Namen erinnere ich mich im Moment nicht. So, ätsch! ;)

Alles in allem hat die ganze Aktion sehr viel Spaß gemacht. Gerne wieder!

Mehr Inhalte

Mein letzter Beitrag hier liegt etwa 1,5 Jahre zurück. Wie es aussieht, sprudeln die (veröffentlichungstauglichen) Ideen nicht so zahlreich aus mir heraus wie erwartet. Daher bohre ich diesen Blog nun auf. Neben reinen Alltagsoptimierungen werde ich hier nun auch von Privatprojekten und spontanen geistigen Ergüssen berichten. ;)

Die Privatprojekte werden sich im Wesentlichen um Softwareentwicklung und Elektronikbasteleien drehen. Wenn ich Zeit und Lust habe, werde ich hier abgeschlossene oder bereits länger laufende Projekte vorstellen. Dazu zählen eine Fusion Festival App und weitere Apps für Android, ein Tanzhemd und eine "echte" Ampel (gar nicht mal so humorlos, das Wort "echte" in Anführungszeichen zu setzen, oder?). Aktuellere Projekte sind die Einrichtung einer Bastelwerkstatt im Keller, die Einrichtung einer personal Cloud und Basteleien mit dem Fernziel "Roboter oder irgendwas anderes Cooles".

Um die Aufmerksamkeitsspanne nicht überzustrapazieren, mache ich mit diesem Intermezzo nun Schluss und verteile die Eigentlichen Inhalte auf spätere Beiträge. ;) Tschö!