SMD LED bars for the Slice of PI/O 1.2

April 14, 2013

I just made two LED bars from SMD LEDs capable of running at 3.3 V to attach them directly to a Slice of PI/O 1.2.

Aus SMD LED shields for Slice of PI/O 1.2
Aus SMD LED shields for Slice of PI/O 1.2
Aus SMD LED shields for Slice of PI/O 1.2

Here is the whole thing mounted and running a simple animation:

Aus SMD LED shields for Slice of PI/O 1.2

Einkaufsliste für 2011

Dezember 19, 2010

Laptop-SSD

  • 280 MB/s r/w
  • 64 GB

Desktop-SSD

  • 500 MB/s r/w
  • 32 GB

Datengrab-HDD

  • 2 TB

Monitor

  • 26″
  • 2560×1536

Winter

Dezember 9, 2010

Einspurige Fahrzeuge sind technologisch unterlegen.

Denn wenn sie eine Spurrinne erwischen oder sonst wie aus dem Ruder laufen, fallen sie um.

Das passiert mit mehrspurigen Fahrzeugen nicht; die können rutschen, sich drehen aber sie fallen nicht um.

Kälte => Handschuhe => weniger Halt => Handgelenke

Wegen der durch massive Minusgrade absoluten oder durch Nässe und Fahrtwind relativen Kälte bist du gezwungen Handschuhe zu tragen. Die zusätzliche Schicht vermindert Feingefühl für das bei Erschütterungen natürlicher Weise auftretende Durchrutschen der Hand am Lenker. Weil das nicht mehr bei Bedarf korrigiert werden kann, verfällt man in die nicht mehr druchrutschende aber unergonomische Haltung, die zu Dehnung an den Außenseiten und stumpfen Quetschungen an den Innenseiten der Handgelenke führt.

Weniger Grip => weniger a_{max} => Handgelenke

Schnee senkt das maximal mögliche Drehmoment. Beim Anfahren/Beschleunigen sind daher die wirkenden Kräfte begrenzt und es tritt keine sporadische Entlastung der Handgelenke mehr auf. Eine sportliche Position auf dem Rad verstärkt diesen Effekt.

Weniger Grip => weniger V_{max} => Handgelenke

Gefrorenes Wasser auf der Straße erhöht den zu erwartenden Bremsweg und begrenzt damit die verantwortbare Höchstgeschwindigkeit. Daher wird weniger Leistung in Fahrtwind umgesetzt und weniger Auftrieb am Oberkörper erzeugt, der daher durch die oberen Extremitäten aufgebracht werden muss.

Du schreibst weniger.

Weil deine Handgelenke schmerzen, versuchst du sie möglichst wenig zu benutzen.

Du bist genervter.

Weil deine Handgelenke dich in subtilen aber dauerhaften Schmerz versetzen.

Du bleibst zu Hause.

Der Gesamteindruck vom nervenden Winter lässt dich optionale Aktionen unterlassen. Wintersemester ist anders.

Es ist viel weniger los.

Auch andere meiden, mit dem Rad oder auch nur zu Fuß am Verkehr teilzunehmen. Dementsprechend sind die Straßen seltsam menschenleer.

Du kaufst da ein, wo du wohnst. Am besten zu Fuß.

Weil mit Gepäck Rad zu fahren noch mal deutlich schwieriger ist.

Du brauchst viel länger zum Anziehen.

Mütze, Schal, Handschuhe, dicke Schuhe mit entsprechend aufwändigerer Schnürung, Jacke, (zusätzlicher) Pullover brauchst du im Sommer nicht.

Du duschst wieder Abends.

Weil dir morgens die Zeit fehlt um richtig durch zu trocknen.

Du fährst Umwege.

Weil einige Straßen zugeeist/verspurrinnt/zugeschneit/verlassen sind.

Du machst dir Sorgen um dein Gepäck.

Stürze kommen vor. Was ist wann versichert? Wie fällst du so, dass nicht versichtertes Zeug nicht beschädigt wird?

Hauptverkehrshindernis sind Fußgänger und Radfahrer.

Fußgänger, weil die gerne einfach da gehen, wo geräumt ist. Egal, wessen Fahrstreifen das gerade ist. Und weil sie Fahrstreifen wörtlich nehmen, wenn sie den geräumten Bereich überqueren oder auf ihn ausweichen wollen.

Radfahrer, weil sie halt wie immer langsam fahren aber bei ungewissen Straßenverhältnissen viel schlechter zu überholen sind. Auftretender Effekt: Gänsemarsch.

Radfahrer, weil sie da fahren wo geräumt ist und sich nicht mehr Fahrstreifen halten. Das führt zu Verwirrung die nicht immer durch gesteigerte Aufmerksamkeit ausgeglichen werden kann.

Autofahrer sind deine neuen Besten Freunde.

Bei schlechtem Wetter scheinen Autofahrer dem Wetter ausgesetzten Fahrern verstärkt Respekt zu zollen. Seltsamer Gedanke.

Richtiges Einordnen an Ampeln ist unrealistisch.

Geräumt wird maximal ein Streifen und der ist meist irgendwo, jedenfalls aber nicht rechts.

Ist nicht geräumt, bildet sich eine Fahrspur heraus, die irgendwo zwischen Hollandrad-Ideallinie und wildwest-Fahrstil liegt, jedefalls aber nicht rechts.

Deine Ideallinie ist zu.

Du kennst deine Strecke und die Ampelschaltungen. Da aber kaum jemand so fährt wie du, schon gar nicht bei diesen Verhältnissen liegen auf deiner Linie Dezimeter hohe Schneehaufen. Vergiss alles, was du weißt und fang noch mal von vorne an.

Du benutzt folgende Wörter wieder:

Graupel, Hagel, Schnee, Schnee-Matsch, Schnegen, Eis, Spurrinne, Glatteis, Bus, Schneise

Let Google host the jQuery of your Trac!

März 13, 2010

Situation

If you work on big amounts of content collaboratively, you might end up with hosting your own Subversion of Git repository with a Trac in your storeroom. Although Trac uses AJAX to make the sourcecode browser quite fast once the page is loaded, the first pageload can be relatively slow. This is especially annoying, when one is using another machine to present something or to dig something up for printing.

Solution

As we all know, there are very good reasons to let Google host jQuery for you. Unfortunately, Trac doesn’t support loading jQuery from Google and there does not seem to be a plugin for Trac doing this, either. But as long as .htaccess-files are enabled or — even better — Apache’s config-files can be changed, one can set up a redirect pointing to ajax.googleapis.com.

Implementation

Add this line to your .htacces-file or to the apache configuration for every virtualhost with a Trac on it:

Redirect 301 <path to trac instance>chrome/common/js/jquery.js http://ajax.googleapis.com/ajax/libs/jquery/1.2/jquery.min.js

Where <path to trac instance> is the path to the trac instance relative to your domain. For example the mainpage of the wiki would be at http://example.com<path to trac instance>. Also note that requesting ajax.googleapis.com/[...]/1.2/jquery.min.js will give you the latest version of JQuery (1.2.x) that Google is hosting.

Performance

jQuery is currently about 30 KB in size. This means 56% of the pageweight in this case or — transferred over an ADSL connection with 1 MBit/s Upstream — over 1 second just for uploading jQuery. The whole page weighs in at about 53 KB distributed over 13 requests, which take about 2.7 seconds to load.

With the redirect applied, we see a “301 Moved Permanently” in response to the request of the Trac’s jQuery and a new request to apis.google.com for jquery.min.js.

The first one only takes 12 ms in this case, because I am using the same internet connection as my server and all traffic only needs to travel trough my ISP’s routers and the response is very lightweight. With latencies typically not exceeding 60 ms, it should still be negligible when accessed via longer distance. The second attempt to get the jQuery takes only 78 ms of which the bigger part is due to network latency, because I redirected to the minified version of jQuery and google uploads at much faster rates than my server could via internet connection.

The page now loads in 1.7 seconds, almost 1 second or 36 % faster than before. The minified jQuery also causes the page to turn out about 13 KB or 24 % lighter.

Drawbacks

Because Trac’s jQuery still needs to be requested in order to issue a redirect to GoogleAPIs, there is a “useless” request now, which could be prevented by Trac issuing the “right” request in the first place. The penalty for it is only one round-trip time and should therefore be negligible, though.

DVCS fürs Studium?

Dezember 19, 2009

Anwendungsfall

Im Moment benutzen ich und meine Übungsgruppenpartner ein auf meinem Home-Server laufendes SVN zum Erstellen unserer Hausaufgaben und als Datei-Grab für Vorlesungen und Skripte.

Ich denke, dieses Problem lässt sich mit dem Umstieg auf ein Verteiltes Versionskontrollsystem (DVCS) umgehen oder teilweise lösen.

Problem: VDSL is still NA

Die beschränkte Bandbreite meiner Internetverbindung verhindert im Moment einige Nutzungsweisen. So lassen wir Video-Vorlesungen per Konvention aus der Versionsverwaltung heraus, weil Check-Outs sonst 1 Stunde * Video-Anzahl dauern würden.

Schlauere Implementation

Wenn Ich richtig verstehe, würde git selber hinzugefügte Dateien anhand ihrer SHA1-Quersumme als gleich der auf dem “zentralen” Repository erkennen und nicht erneut herunterladen, obwohl die Commits und Check-Outs kanonisch sind. Außerdem könnte man auch voneinander pullen.

Problem: Kein Backup

Im Moment gibt es kein Backup unserer Sachen. Das sollte nicht weiter tragisch sein, weil jeder Teilhaber ja das für ihn relevante Zeugs bei sich hat, aber die Versionshistorie liegt nur auf dem Server und aus historischen Gründen, würde ich die gern lange behalten.

Lösung: Verteiltheit des Repositorys (Linus’ Lösung für echte Männer)

Die Daten die im SVN liegen, sind gewissermaßen wertvoll und “soziale” Backups auf allen Benutzer-Maschinen zu haben. Allein für mich bedeutet das Server + Desktop + Laptop = 3 Backups. Das ist schon fast Overkill. Speicherplatz ist äußerst günstig und von daher denke ich, dass es sich lohnt, die anfallenden 500 MB / Semester auf mehreren Maschinen vorzuhalten.

Problem: Unzuverlässige Internetverbindung

Internetverbindung ist nicht unbedingt überall gegeben, wo gearbeitet werden soll. Auch wenn der Campus mit Uni-WLAN versorgt ist, gibt es Räume wie z.B. das 10Vorne, in denen WLAN nur unzuverlässig nutzbar ist. Außerdem kommen einige Kommilitonen nicht aus Oldenburg und arbeiten unterwegs im Zug.

Lösung: Unabhängigkeit der Arbeitsmaschinen vom Server

Auch an solchen Orten könnte man mit einem DVCS Versionshistorien lesen, ältere Versionen auschecken und Branches erstellen. Mergen soll auch besser gehen, was auch immer das heißen mag.

Problem: Ein Webinterface ist nice-to-have, aber ein ziemliches High-Level-Feature

Um mal schnell ne Datei auf einen PC mit Drucker herunterladen oder “projektfernen” Leuten Dinge zuzeigen, hat sich Trac bewährt.

Lösung: eingebaute Webinterfaces

Webinterfaces sind bei DVCS scheinbar verbreitetere Features: Bazaar kann sogar wieder Trac und selbst das eingebaute gitweb bietet schon Feeds an.

Problem: Informatiker sind auch nur Lefthänders

Der typische Informatiker scheint ausgestorben, oder die Kunst so sehr differenziert zu haben, dass sich viele als typisch erachten, aber kein Außenstehender sie noch als solche erkennen kann. (“Ich kann nicht programmieren und will das auch nicht lernen, ich bin ja Wirtschaftsinformatiker.” oder “SVN benutz ich nur, weil ihr das macht und sehe auch keinen Sinn darin.”)

Lösung: Einsteigerfreundlichkeit

Es gibt massig GUIs und alle DVCS laufen auf allen wichtigen Systemen. Das Konzept nur noch Clients zu haben und keinen übergeordneten Server ist der einfachere Ansatz, finde ich.

Problem: Nicht alle interessiert alles

Da sich die Übungsgruppen nicht immer aus den selben Leuten rekrutieren, müssen nicht alle den gesamten Fortschritt verfolgen.

Lösung: NA

Keines der drei nicht-kommerziellen DVCS unterstützt das Auschecken von Teilbäumen.

Das Leben

November 20, 2009

Ist eine einzige große Suche Kontrast und Klarheit.

Und ich weiß jetzt schon nicht mehr, was ich damit meinte.

Sharkoon Venga Economy

März 15, 2009

Hallo zusammen.

Ich bin gerade damit fertig geworden, aus dem Sharkoon Venga Economy einen Rechner für meinen Opa zubauen und möchte ein paar Eindrücke vertextlichen.

WTF?!
Das war mein erster Eindruck, als ich das Paket vom Postonkel übernahm. Ich war mir doch recht sicher, dass ich ein Full-ATX-Gehäuse gekauft hatte und der Karton schien mir dafür sehr klein und auch noch sehr leicht. Doch die Aufschriften der Verpackung behaupteten, es sei ein “MIDI ATX PC CASE” in der “White Edition”. Na gut, dann ist also Auspacken und nicht Retour angesagt.

Unboxing
Karton auf, die beiden Styropor-Keile angepackt und rausgehoben. Ohne Verklemmen, ohne Nachhelfen. Der Karton passt super. Es ist ja fast schade drum, aber weg damit, die Folie entfernt und zum Vorschein kommt ein mit dem ersten Eindruck völlig überzeugendes Gehäuse.

Von Außen
Die Front ist schneeweiß. Die vier 5,25″-Einschübe und den einen in 3,5″, die vier metallischen Bedienelemente, den Sharkoon-Schriftzug und das schwarze Gitter hinter dem vorderen Lufteinlass umläuft eine tiefe Lichtkante, außerdem sind die Ecken der Front sehr weit abgerundet, was einen langen Übergang zum recht eckigen Metallteil nötig macht. Das sieht aber immer noch ganz gut aus und geht wohl auch kaum anders.

Frontpanel
Die Anschlüsse für Audio und USB sind an die Linke Seite gelegt, stören also den schlichten Eindruck nicht und fallen zumindest in der weißen Ausführung auch kaum negativ ins Auge. Trotzdem könnte sich das als unpraktisch erweisen, wenn der Rechner links vom Schreibtisch an einer Wand stehen soll. Aber dann könnten auch seitlichen Lüfter nicht richtig arbeiten, wenn man sie denn nutzt. Nicht perfekt gelöst, aber auch nicht falsch.

Rundrum
Beide Seitenbleche sind mit großflächigen Absetzungen versehen, was wohl der Stabilität etwas zu trägt. Das ist gut, Steifheit hat man nie genug. Eines der Beiden nimmt zwei 12er oder 8er Lüfter auf. Die Bleche sind sonst aber identisch, wodurch sie sich auch vertauschen lassen. Thumbscrews gibt es keine; übliche Grobgewindeschrauben halten die Seitenwände.

Hinten
Fast nichts Besonderes. Allerdings ist die Kante, die die Erweitungskarten provozieren, bis zum Ende des Mainboards durchgezogen. Wenn man viele PCs gesehen hat fällt das wohl auf, für nicht so geschulte Augen mag das die Kiste einfacher erscheinen lassen. Naja, da kann man drüber streiten, muss man aber auch nicht, denn diese Lösung stört nicht im Geringsten.

Demontage Teil I
Schon beim Abnehmen der Seitenwände fällt auf, dass sie (wie Beispielsweise beim Rebel 9 Von Sharkoon) oben und unten mit einer Verstärkung versehen sind. Auch wenn sie in sich ganz gut wabbeln, hilft diese Führung beim Einfädeln beim Zusammensetzen. Gut.

Demontage Teil II
Die Front rastet unten mit vier runden und oben mit zwei eckigen Klammern in den Metallkäfig ein. Um an alle unteren heranzukommen muss man beide Seitenwände entfernen, an die oberen Klammern kommt man nur, wenn im obersten Schacht kein Laufwerk eingesetzt ist. Ein kleiner Kritikpunkt, denn so häufig macht man das ja doch nicht und die Konstruktion hält sehr gut und erfordert wenig Geschick, wenn man erst mal freien Zugang hat.

Von Innen
Dass das Blech für Mainboard und Netzteil auf Höhe der 5,25″-Laufwerke bis zur Front durchläuft fördert den aufgeräumten und durchdachten Eindruck ebenso, wie die leicht nach hinten versetzte und ebenfalls bis zum Gehäuseboden durchlaufende Aufnahme für 3,5″-Laufwerke.

Lüftung Hinten
Über den Anschlüssen vom Mainboard hat der Platz wegen der minimalistischen Gehäusebreite nicht für 12er Lüfter gereicht. Lediglich ein 8er oder ein mittlerweile sehr unüblicher 9,2 cm-Lüfter lassen sich montieren. Wegen der durchgezogenen Kante an der Hinterseite gestaltet sich der Einbau eines Lüfters etwas schwierig; zwei Schrauben müssen am äußeren Blech vorbei in die eigentliche Halterung eingesetzt werden. Nicht so einfach wie es hätte sein können, aber kaum schwieriger als Schraubendreher, Schraube und Lüfter sonst zum Zusammenspiel zubringen.

Lüftung Vorn
Trotz der kleinen Lufteinlässe in der Front findet vor den Festplatten ein 12er-Lüfter Platz. Das ist gut, größer ist schließlich leiser und so wird kein Platz verschenkt.

Kabelführung Vorn
Die Taster und Leuchten der Front haben zwar eigentlich ausreichend lange Kabel, durch die etwas unglückliche Verteilung der Löcher in der Metallfront muss man sie aber auf einem kleinen Umweg nach innen führen, wenn man sie auf der Linken und nicht wie vorgesehen auf der Rechten Gehäuseseite verlegen will. Wer also die Anschlüsse für die Front nicht quer durch das Gehäuse und damit durch den Luftstrom legen will, muss Glück mit seinem Mainboard haben. Bei mir hat es (mit einem ASRock A7NF2-RAID) gepasst und ich denke Fälle, in denen das nicht geht sollten selten und der Aufwand die Kabel auf Seite zu binden vertretbar sein.

Kabelführung Innen
Das Gehäuse hat zwar eine Führung, um die Kabel vom Netzteil hinter der Halterung vom Mainboard entlang zu legen, bei kurzen Power Supply Units lässt sich aber sogar die Aussparung neben der Netzteilhalterung dafür nutzen und sich so das Gehäuse weiter aufräumen. Wieder hervor kommen die Kabel dann entweder auf Höhe der RAM-Riegel oder dem unteren Mainboard-Teil. So lassen sich auch stromhungrige Grafikkarten mit direkten Verbindungen zu Netzteil versorgen. Überflüssige Kabel lassen sich an der linken Seite neben den 3,5″ Laufwerken verstecken. Um Lüfterkabel mit Kabelbindern am Gehäuse festzuziehen, gibt es einige Bohrungen, im vorderen Bereich lassen sich dafür auch die nicht genutzten Aufnahmen für 3,5″-Laufwerke benutzen.

Mainboard
Das vor mir verbaute Mainboard belegt zwar alle sieben Erweiterungsslots des Gehäuses, hat also volle Höhe, breit ist das Board aber etwas weniger als maximal erlaubt. Dadurch hat es etwas Platz zur Festplatte, größere Boards und lange Grafikkarten könnten aber die Wahl des Platzes für 3,5″-Laufwerke einschränken.

Stabilität
Möglichst viele Teile bis zur nächsten Gehäuseteil durchlaufen zu lassen und alle scharfen Kanten mit großen Umfalzungen zu versehen mag eine gute Idee sein und verhilft dem Gehäuse tatsächlich zu gewisser Stabilität, man merkt aber häufig, dass die “Dicke” des verwendeten Bleches sehr nah an der Grenze des Vertretbaren liegt. Auch wenn das wohl übertrieben ist, vermittelt das Gehäuse den Eindruck man müsste mit allen Schrauben sehr vorsichtig umgehen, um die Gewinde nicht zu überdrehen. Wer häufig Hardware ein- und ausbaut, wird hier bestimmt schnell die Haltbarkeit erschöpft haben.

Luftstrom
Der vorn zu verbauende 12er bläst genau unter der Festplatte durch, wenn man sie in die erste Halterung unter dem Diskettenlaufwerk setzt. Auch ist sie dann ungefähr auf Höhe der Grafikkarte, was den Luftstrom weiter kanalisiert und Hitzestau zwischen den PCI-Karten verhindert. Das Gehäuse ist dabei immer noch breit genug, dass man bei einem auf wenig Leistung ausgelegten System auf seitliche Entlüftung verzichten und sich auf die Entlüftung vom Netzteil und dem oberen Gehäuselüfter verlassen kann. Auch für einige passive Grafikkarten sollte diese Methode noch ausreichen.

Fazit
Das Sharkoon Venga Economy sieht viel besser aus, als es ist und es ist nicht schlecht. Wer seinen PC primär als Einrichtungsgegenstand betrachtet wird an diesem Gehäuse sicher seine Freude haben, aber wer vor hat, häufig am Rechner zu basteln oder aus dem Gehäuse einen potenten Spielerechner zu bauen, wird an Grenzen stoßen. Ich sage nicht, dass das schlecht ist, schließlich lässt sich ein kleines Gehäuse und große Ansprüche als Herausforderung auffassen, aber so einfach einen beliebigen Kühler kaufen oder eine zweite Grafikkarte verbauen kann schnell in der Erkenntnis enden, dass es einfach nicht geht.

Recht herzlichen Dank für die Aufmerksamkeit. :-)

Gedanke am Rande zur Lage der Nation

Mai 5, 2008

Kaum wer hat wohl so schlechte Presse wie Studi-vz und doch findet man dort sogar die Hardliner-Datenschutz-Sympathisanten meistens nur etwas später, letztlich aber doch fast alle. Pessimistisch wird gern geschlossen, kümmert Datenschutz im Moment die Nutzergruppe wenig. Aber anders herum ist es doch schon mal ganz gut, dass Presse nicht all zu wichtig ist für die Entscheidung, über Nutzung und Ignoranz. Soziale Netze (als Benutzerdaten-Web 2.0-Anwendung) sind noch nicht mal eine ganze Pubertät alt, da ists wohl kein Wunder, wenn wir noch nicht wissen, wo der vernünftige Mittelweg ist. Mit Presse hingegen sollten wir etwas mehr Routine haben und das ist scheinbar der Fall. Das ist doch ein guter Anfang. ;)

Firefox 3: Workflow for the win!

April 22, 2008

Im Firefox 3 kann man die Seitenquelltext-Ansicht aktualisieren.

Weiß wahrscheinlich fast keiner, wird wohl auch kaum wen interssieren, und nur wenige werden den Nutzen zu schätzen wissen, aber ich find’s mal richtig Klasse. Ich hab grade dynamische meta-Tags implementiert und statt (wie früher) dauernd das Fenster schließen und neu aufrufen zu müssen tut es nun, wie man es von einem Browser erwarten dürfte ein Druck von F5. Winziges Feature, riesige Wirkung. :)

hostname setzen mit DHCP3

Februar 22, 2008

Das Problem:

Der Name des Rechners wird nicht an den DNS-Server übergeben.

(eventuelle) Auswirkungen:

  1. Der Router erkennt zwar die MAC-Adresse und die IP-Adresse eines Rechners, aber nicht dessen Namen.
    (Früher gab die Fritz-Box mal “noname” an, jetzt lässt sie das Feld schlicht frei.)
  2. ping <hostname> gibt “unknown hostname” aus.
  3. trace <hostname> gibt “no route to host” aus.

Die Lösung (einfach):

sudo gedit /etc/dhcp3/dhclient.conf

Die Kommentar-Rauten vor den folgenden Zeilen löschen:

send host-name "<hostname>";
send dhcp-client-identifier <mac-addresse>;

<hostname> ist der Name des Rechners.
<mac-addresse> ist die MAC-Adresse des Rechners. (Im Format: 00:00:00:00:00:00)

Mac-Adresse herausfinden:

ifconfig :)

Die Lösung (für mehrere Interfaces):

Wenn mehr als ein Netzwerk-Adapter vorhanden sein sollte, der im LAN korrekt funktionieren soll, müssen die Interfaces gesondert aufgeführt werden, weil die MAC-Adressen der Geräte unterschiedlich sind.

interface "eth0" {
	send host-name "<hostname0>";
	send dhcp-client-identifier <mac-addresse0>;
}
interface "eth1" {
	send host-name "<hostname1>";
	send dhcp-client-identifier <mac-addresse1>;
}

Update der Daten

Damit der Hostname erneut gesendet wird, muss er vom Client neu eingelesen und vom Server neu abgefragt werden, wie es scheint. Daher hilft ein Neustart des Dienstes alleine nichts; auch der DNS-Server muss zur Aktion gebracht werden. Also:

sudo /etc/init.d/networking restart

und außerdem:

Netzwerkkabel rausziehen
Netzwerkkabel reinstecken

Folgen

Erhalte jeden neuen Beitrag in deinen Posteingang.