Twitgrillen reloaded.

14 07 2013

Es sah dieses Jahr fast so aus, als würde kein Twitgrillen stattfinden können, da Linda und Martin zeitlich zu sehr eingespannt sind. Daher haben Daniel und ich die Planung für das 7. Leipziger #twitgrillen übernommen. Aktuell suchen wir den passenden Termin. Stimmt doch einfach hier mit ab.
Wie zuvor wird das Twitgrillen im Leipziger Rosental stattfinden. Weitere Infos und alle aktuellen Neuigkeiten findet ihr auf twitgrillen.com oder auf dem Twitteraccount @twitgrillenLE.





Der @Griesgraemer und die Telekom.

25 06 2013

Das Social Media nicht immer Mariacron bierernst ist, haben der werte @Griesgraemer und die Telekom heute bewiesen.

Ach wenn ich sonst den Drosseltypen nicht viel abgewinnen kann – der kleine Dialog ist echt unterhaltsam!





Tweetnest ist kaputt. Vorläufig.

14 06 2013

Seit zwei Tagen ist meine Tweetnest-Installation kaputt, es werden keine neuen Tweets mehr archiviert. Dem @DL3NGN ist es heute bei seiner Installation auch aufgefallen.
Das Problem ist die Abschaltung der alten API bei Twitter. Andy Graulund (@graulund), der Tweetnest-Entwickler, ist noch nicht auf die aktuelle API umgestiegen und wird es wahrscheinlich auch nicht so schnell tun:

Das Problem ist schon einige Zeit bekannt – doch noch nicht gefixt. Also entweder warten oder selbst versuchen Tweetnest umzustellen.

P.S. Thinkup funktioniert noch.





Werbung auf Ironblogger-Seiten?!

28 05 2013

Ausverkauf, Kommerz, Verrat!!!einsdrölf

Nein, jetzt mal im Ernst. Sonntag gab es einen Tweet von @antischokke, dass andere nachdenken, Werbung auf Ironblogger-Seiten zu schalten.

Mein erster ungefilterter Gedanke war: „Sacht ma, habt ihr noch alle Latten am Zaun!?“
Doch bevor ich mich nicht ganz nett über diese Idee äußere, wollte ich lieber erst mal ne Runde drüber schlafen – einen Tweet habe ich mir dann verkniffen, meinen Senf muss ich aber dazugeben. Da 140 Zeichen dafür aber nicht reichen, hier jetzt ein Beitrag dazu.

Wieso sollte man Werbung auf einer Ironbloggerseite schalten? Klar, damit Kohle in die Kasse kommt.
Wenn zu wenig Geld für Bier zusammenkommt, dann hat die Ironblogger-Aktion ja geschafft, was sie wollte. Es geht beim ironblogging nicht darum, so viel Geld wie möglich zum Saufen zu bekommen. Es soll mehr gebloggt werden. Das ist und bleibt das Hauptziel. Wer dann nicht bloggt, muss halt in die Kasse zahlen. Geld in der Kasse bedeutet dann Bier – aber das ist nur ein (angenehmer) Nebeneffekt.
Wenn ihr nicht genug Geld in die Kasse bekommt, weil alle ihre Blogs fleißig und regelmäßig mit Beiträgen füllen, dann freut euch!

Eine weitere Möglichkeit, wieso man Geld braucht, ist der Unterhalt der Ironblogger-Seite. So eine Seite kostet zwar ein paar Euro, treibt aber niemand in den Ruin. Aktuell werden die Kosten für Ironblogger-Berlin von unsrer Ironmutti getragen. Dafür an dieser Stelle mal mein Dank! Hier könnte ich es verstehen, wenn Nicole sagen würde, sie möchte die Kosten nicht weiter alleine tragen.
Da ließen sich aber auch andere Möglichkeiten finden. Eine Domain, einen Bloganbieter oder etwas Webspace – das sind die Sachen, die gezahlt werden müssten. Für diesen Fall kann man einen Mitgliedsbeitrag einführen. Jeder Ironblogger zahlt 50 Cent oder einen Euro pro Jahr in die „Betriebskostenkasse“ – was dort mehr rein wandert als benötigt, kann dann beim nächsten Treffen mit in die Bierkasse.

Meiner Meinung nach gibt es also keinen Grund, wieso man Werbung auf den Ironbloggerseiten schalten sollte.
Danke.





Wenn Twitter dir folgt…

27 04 2013

Wie würdet ihr reagieren, wenn Twitter euch (ver)folgt?





Der @ChaosPrinter.

18 04 2013

Wer mir auf Twitter folgt, hat es eventuell schon mit bekommen. Ich habe mal wieder etwas gebastelt. Den @chaosprinter.
Was verbirgt sich dahinter? Ein Thermodrucker, den meisten als Kassenbondrucker bekannt, angeschlossen an einen Raspberry Pi, zur Ausgabe von allem was mir so in den Sinn kommt. Wenn ihr eine Mention an @chaosprinter schreibt, wird sie automatisch ausgedruckt. Ihr könnt es gerne ausprobieren.

tl;dr

Wie kam ich auf die Idee?
Als Knirps war ich in den Ferien hin und wieder mit meinem Paps unterwegs bei ihm auf der Arbeit. Er hat Rohrpost- und Schienenförderanlagen gebaut und gewartet. Die Zentralen dieser Anlagen hatten einen „Fehlerspeicher“ – nicht wie heute in ein paar Speicherchips sondern auf Papier. Speicher war damals viel zu teuer und so hat man einen Thermodrucker eingebaut. Allerdings auch nur eine Sparversion. Das Papier wurde auf einen Metallwinkel gefädelt, vor die Thermozeile gespannt und von einen kleinen Motor wurde das Papier befördert. So konnte man auch nach Wochen noch sehen, wann mal ein Fehler passierte – natürlich nur, wenn Papier eingelegt war.
Solch eine Druckereinheit hatte ich in meinem Bastelfundus – allerdings ist alles in Epoxid vergossen, da kommt man also nicht dran. 

Ein wenig in der Bucht suchen und einige verlorene Auktionen später hab ich dann den Chaosprinter erstanden. Es ist ein Star TSP700 der ersten Generation, mit serieller Schnittstelle. Das Netzteil hat etwas mehr Leistung, schließlich brauch der Drucker bei 24 Volt Spannung knappe 2 Ampere unter Volllast.
Der Drucker hat zwei grundlegende Betriebsarten: „ESC/POS“ und „STAR Line“.

ESC/POS ist ein Standard von Epson, dieser vereinheitlicht die Kommunikation mit POS (Point of Sale) Druckern. Für diesen Modus gibt es auch schon fertige Bibliotheken die man nutzen kann. Doch leider ist der Funktionsumfang im ESC/POS Modus stark eingeschränkt, der Drucker ist nicht mehr der Neuste und unterstützt nur einige Grundfunktionen des Standards.
Der STAR Line genannte Modus ist ein proprietärer Modus von Star, den auch nur 2 Drucker unterstützen. Dafür ist er aber sehr gut dokumentiert und sehr einfach umzusetzen.

Angeschlossen habe ich den Drucker mit einem seriell-USB-Wandler, da der interne serielle Anschluss meines Raspberry Pi bereits mit einem RFID-Reader belegt ist. Die Kommunikation übernimmt eine kleine selbst geschriebene Python-Klasse mit aktuell nicht einmal 200 Zeilen.
Wer sich schon einmal mit den ASCII-Zeichen kleiner 32 befasst hat, dem fällt die Kommunikation mit dem Drucker leicht. Nahezu alle Befehle werden mit „Escape“, ASCII-Zeichen 27 / 0x1B, eingeleitet.
Wenn numerische Parameter, wie z.B. Seitenränder, gesetzt werden müssen, so kann hier die Zahl als Byte-Wert oder als ASCII-Zeichen gesendet werden. Also beispielsweise eine 1 oder „1“ (ASCII 49 / 0x31). Ich nutze in meinem Skript immer den Bytewert, dies funktioniert zuverlässiger als das entsprechende Zeichen.

Es ist auch möglich Grafiken zu drucken. Dazu gibt es zwei Auflösungen, „normal“ und „fine“. Bei normal besteht ein gedruckter Punkt aus 3 Pixeln horizontal und 3 Pixeln vertikal. Fine hingegen erzeugt aus einem zu druckenden Punkt einen Pixel horizontal und drei Pixel vertikal.
Druckbar im Grafikmodus sind maximal 8 Punkte in der Höhe, und 192 Punkte (normal) bzw. 576 Punkte (fine) in der Breite.
Nun besteht ein Bild ja im Normalfall aus mehr als nur 8 Punkten in der Höhe. Gelöst habe ich dies in Python. Die Grafik wird eingelesen, die Farbtiefe herunter gesetzt, so dass nur noch Schwarz-Weiß übrig ist, Grautöne gibt es keine.
Der nächste Schritt skaliert die Bilder, sollten sie zu breit sein, auf die passende Größe.
Im Anschluss wird das Bild abschnittsweise gelesen, immer acht Pixelzeilen auf einmal und auf dem Drucker ausgegeben. Einen ganzen Zeilenvorschub zwischen den Abschnitten kann ich nicht ausführen, sonst würde es Lücken zwischen den gedruckten Abschnitten geben und somit keine zusammenhängende Grafik zustande kommen.
In der Dokumentation finden sich aber auch Befehle, wie das Papier nur einen Bruchteil einer Zeile bewegt werden kann. Somit lassen sich auch größere Grafiken drucken.

Der Drucker unterstützt von Haus aus verschiedene eindimensionale Barcodes. Man sendet nur die Daten und der Barcode wird automatisch erzeugt. QR-Codes kann der Chaosprinter aber auch darstellen, dafür erzeuge ich über eine Python-Bibliothek dynamisch eine Grafik, die sofort im Anschluss gedruckt wird. Dies funktioniert zuverlässig.

Texte gibt man einfacher und schneller im Textmodus aus, allerdings muss man dort mit beschränkten Formatierungsmöglichkeiten auskommen.
Es stehen sechs Schriftgrößen zur Verfügung. Ein Text kann fett, unterstrichen oder invertiert, also schwarzer Hintergrund mit weißer Schrift, ausgegeben werden. Linksbündig, Rechtsbündig und Zentriert sind kein Problem, Blocksatz kann nicht genutzt werden. Man kann den Text auch auf den Kopf stellen sowie von oben nach unten ausgeben. Einen automatischen Zeilenumbruch gibt es nicht. Ist der zu druckende Text länger als die Zeile, wird der Text auf der nächsten Zeile fort gesetzt. Wörter werden hierbei noch am Ende der Zeile begonnen und dann am Anfang der nächsten Zeile vervollständigt.
Solltet ihr in unterschiedlichen Sprachen drucken wollen, auch dies ist kein Problem, der Drucker bringt einige Codepages mit, die aktiviert werden können. Natürlich müsst ihr euch selbst darum kümmern, dass das Encoding eures Textes beim Senden korrekt ist.

Damit man das Papier nicht abreißen muss, gibt es noch einen eingebauten Schneidemechanismus. Dieser schneidet auf Befehl das Papier komplett durch oder lässt in der Mitte einen Steg stehen.

Weitere Funktionen des Druckers, die ich bisher noch nicht genutzt habe, sind die Möglichkeit, ein Logo im Drucker zu hinterlegen und die Benutzung des „Cashdrawer“ Anschlusses.
Die Logofunktion erlaubt es einem eine kleine Grafik im internen Speicher des Druckers zu hinterlegen und später direkt von dort drucken zu lassen. Somit spart man sich die immer wiederkehrende Übertragung dieses Logos.
Der Cashdrawer-Anschluss dient dazu, eine Kassenschublade zu öffnen. Dabei wird ein kurzer Impuls auf Anschluss am Drucker, der als Westernbuchse ausgelegt wurde, gegeben. Diesen Anschluss werde ich bei Gelegenheit mit einem Relais versehen um darüber Lasten schalten zu können.

Im nächsten Teil verrate ich euch dann, wie ich die Anbindung an Twitter gelöst habe.





#ff @Cynx

22 02 2013

Es ist mal wieder Freitag, Zeit eine Empfehlung auszusprechen.

Diesmal geht meine Empfehlung an einen Wahlhessen, einen dampfgetriebenen Herrn mit Verstand und der Pfeife in der Hand – gemeint ist  @cynx.
Der Alex ist nicht nur Clockworker, er schreibt mal eben kurz und geek ein Buch,  funkt an Bord durch den Æther, ist Systemheld.

Jeder sollte Cynx folgen, denn seine Tweets sind mit einer Weisheit und einen Witz gewürzt, der seinesgleichen sucht. Neben der täglichen Gin-Tonic-Time versorgt uns Alex auch mit Überlebenstipps im Büronahkampf.

Also, Ärmel hoch gekrämpelt und folgen. Sofort!