Ordentlich

Ordentlich

Ich hatte ja schon von der Handykonsole geschrieben die ich mir für mein neues altes Auto (VW Passat 3BG) gebastelt habe. Die hat mir ein Arbeitskollege gedruckt, den eigentlichen Handyhalter hatte ich damals aus Holz gebastelt. Jetzt habe ich ein neues Telefon, da habe ich einen neuen Halter auch direkt aus — mittlerweile meinem eigenen — 3D-Drucker gezogen.

Was ich gerne noch in der Nähe gehabt hätte ist eine USB-Steckdose, damit ich direkt auch aufladen kann. Das geht natürlich über den Zigarettenanzünder, aber wie man so schön sagt: Wenn man erstmal einen Hammer in der Hand hat sieht alles aus wie ein Nagel. :-D

Ich habe also den Hammer in Form meines Druckers, in Kombination mit FreeCAD konnte ich damit einen Blindstopfen aus dem Armaturenbrett nachbauen.

Aus einem billigen Autoladegerät habe ich die Elektronik rausgepult, Kabel angelötet und die grell-blaue durch eine schwächere rote — passend zur Instrumentenbeleuchtung — ersetzt. Mit etwas Schrumpfschlauch und einem Tropfen Heißkleber passt die kleine Platine sauber in den Ausschnitt in meinem Stopfen.

Das Ergebnis kann sich wirklich sehen lassen, finde ich. Die Oberfläche die das Druckbett dem Stopfen verpasst hat entspricht zwar nicht exakt den benachbarten Schaltern, ich bin mir aber sicher dass das erst beim zweiten Hinsehen auffällt.

Ich bin zufrieden. :-)

 

Nachtrag vom 28.01.2022: Ich dachte dass ich die Datei damals schon hier angehängt hätte. War wohl nicht so. Hier ist sie:

English English preferred? This way, please.

Heute habe ich einen coolen neuen Trick gelernt, in dem ich das Item Preprocessing benutzen kann das Zabbix seit der Version 3.4 anbietet. Dies ist kein Zabbix-Blog, aber ich betrachte das als so nützlich — und nicht gerade intuitiv — dass ich das mal eben aufschreiben möchte.

Für alle die es nicht kennen: Zabbix ist ein quelloffenes Monitoring System, der Hersteller nennt es nicht ganz zu unrecht „Enterprise Class“. Ich nutze das nicht nur bei der Arbeit sondern auch zu Hause — nicht nur um das Fleisch in meinem Smoker zu monitoren. :-)

Meiner Meinung nach ist Zabbix wirklich stark bei allem was in Zahlen ausgedrückt werden kann. Es kann auch mit textuellen Informationen umgehen, aber nachdem ich damit ein paar kleinere Schwierigkeiten hatte versuche ich das nach Möglichkeit zu vermeiden. Zustände können in Zabbix auch numerisch dargestellt und als Ganzzahl gespeichert werden, mit dem Value Mapping kann man trotzdem gut lesbare Ausgaben erzeugen.

Heute bin ich an ein Problem gekommen das ich mit meinen üblichen Methoden erst nicht umsetzen konnte. Ein Webservice gibt mir den Status einer Applikation, die ist entweder RUNNING, STOPPING oder STOPPED. Es ist nicht schwer das in einem String-Item zu speichern, und einen Trigger anzulegen der reagiert wenn die Applikation STOPPED ist. In diesem speziellen Fall sollte ich aber einen Trigger bauen der meldet wenn der Dienst länger als eine gewisse Zeit im Status STOPPING ist, daran ist zu erkennen dass es ein Problem beim regulären Anhalten der Applikation gibt. Das war nicht trivial, da die Triggerfunktion str("STOPPING",15m) auch schon zuschlägt wenn mindestens einer der Werte in den letzten 15 Minuten „STOPPING“ war.

Item Preprocessing to the rescue!

Drei Schritte

Drei Schritte

Mit Version 3.4 hat ein Feature namens Item Preprocessing in Zabbix Einzug gehalten. Damit kann ein gemessener Wert auf verschiedene Arten weiterbehandelt werden bevor er gesichert wird. Eine der Methoden ist, durch reguläre Ausdrücke eine Art „Suchen und Ersetzen“ vorzunehmen.

Wie sich rausstellt brauchte ich dazu einen halbwegs komplexen regulären Ausdruck, aber am Ende konnte ich die Zustände des Webservices in einfache Ganzzahlen umwandeln. Bei einer Websuche habe ich etwas über „conditional replacement“ gefunden, und mit diesem großartigen Tester für reguläre Ausdrücke konnte ich diese Schönheit bauen:

Damit kann ich den String den ich mittels JSON Path aus der Ausgabe des Webservices ziehe in zwei weiteren Schritten umwandeln:

  • Erst hänge ich eine Art „Wörterbuch“ an meinen Wert: ich ersetze den kompletten Wert (.*) durch sich selbst, gefolgt von den Ersetzungswerten: \1:STOPPED=0:STOPPING=1:RUNNING=2.
  • Dann ersetze ich den regulären Ausdruck (STOPPED|STOPPING|RUNNING)(?=.*:\1=(\d)) durch den Wert der zweiten Capturing Group \2.

Auf die Weise kann ich mein Item als vorzeichenlose Ganzzahl konfigurieren, da hier nur noch die Zahlen 0, 1 oder 2 abgelegt werden müssen. Und ich kann die übliche Trigger-Funktions-Magie anwenden um zu melden wenn der Wert länger als eine gewisse Zeit bei 1 verbleibt. Ein weiterer Bonus: ich kann im Graphen des Items sehen wann der Webservice nicht im Zustand RUNNING gewesen ist, und wie lange das angehalten hat.

Vorschläge?

Ich bin ziemlich angetan davon, Werte auf diese Weise für die Weiterverarbeitung vorzubereiten. Aber ich bin auch an Meinungen interessiert: gibt es bessere Wege mit diesem Problem umzugehen? Irgendwas offensichtliches das ich übersehen habe?

Wenn man lange genug in der Wikipedia surft kommt man auf echt merkwürdige Artikel. Mein Fundstück des Tages: Die Melassekatastrophe von Boston.

Bei der Melassekatastrophe von Boston am 15. Januar 1919 barst ein mit Melasse gefüllter Tank, worauf sich sein Inhalt als bis zu neun Meter hoher Schwall über die Bostoner Innenstadt ergoss. 21 Menschen verloren ihr Leben.

Dass das noch nicht verfilmt worden ist… :-D

Über kurze Umwege kommt man von dem Artikel übrigens zur Londoner Bier-Überschwemmung. Und ich lasse jetzt besser die Finger vom Browser…

Nach langer zuverlässiger Tätigkeit musste ich leider meinen alten Passat aus dem Rennen nehmen. Der wäre dieses Jahr 22 Jahre alt geworden, somit hat der seinen Dienst mehr als geleistet.

Als Ersatz habe ich mir einen neuen alten Passat besorgt. Der ist erst 14, hat also — hoffentlich — noch ein paar Jahre vor sich. :-)

Sockel am Armaturenbrett

Sockel am Armaturenbrett

Der neue ist also aus 2003, und somit ein sogenannter „Volkswagen Passat B5 GP (Typ 3BG)„. Als der klein war hatte er eine ziemlich umfangreiche Ausstattung. Unter anderem war da ab Werk eine Vorrichtung für ein Handy drin. Davon war jetzt nur noch der Sockel übrig.

Für den alten Passat hatte ich im Laufe der Zeit mehrere Handykonsolen gebastelt. Erst gefräst, später gelasert. Im neuen wollte ich auch wieder eine haben, allerdings fehlte da so eine praktische Fläche an der man was festschrauben kann. Der Sockel — sowie die damalige Handyvorrichtung — wurde von VW verbaut, stammt aber offenbar vom Hersteller Cullmann. Man findet passende Gegenstücke auf eBay, komischerweise werden die aber zu Preisen gehandelt die an 100 Euro ran reichen — insbesondere komisch da man daran dann die Handygeneration „Nokia 6210“ unterbringen kann, keine modernen Smartphones.

Der 3D-Druck auf einem Dummy

Der 3D-Druck auf einem Dummy

Also habe ich mich mal als Designer betätigt und mir ein Teil aus einem freundlichen 3D-Drucker gezogen. Die Masse habe ich vom Sockel abgenommen, und nach etwas Beschäftigung mit FreeCAD hatte ich das Modell das ich als STL exportieren konnte.

Den vorderen Teil habe ich mir dann nochmal mit passenden Löchern aus Sperrholz gelasert und schwarz lackiert. Das Ergebnis ist gewohnt kantig, tut aber genau was es soll. Das Telefon ist sicher untergebracht und im Blickfeld, unten am Halter ist Platz für ein Ladekabel. Und vor allem fällt der Blick jetzt nicht mehr auf den unbestückten Sockel.

Das endet bis jetzt noch an einem einfachen Zigarettenanzünder-Adapter, aber da habe ich schon eine Idee zu… ;-)

Da ich gefragt wurde: hier sind die Dateien nach denen ich gedruckt habe. Viel Spass damit.

The following morning the weather was so foul it hardly deserved the name, and Dirk decided to call it Stanley instead.
Stanley wasn’t a good downpour. Nothing wrong with a good downpour for clearing the air. Stanley was the sort of thing you needed a good downpour to clear the air of. Stanley was muggy, close, and oppressive, like someone large and sweaty pressed up against you in a tube train. Stanley didn’t rain, but every so often he dribbled on you.
Dirk stood outside in the Stanley.
(Douglas Adams in The Salmon of Doubt)

Diesen Monat hatte ich zum ersten Mal die Gelegenheit mir London anzusehen. Ich war beruflich dort, tagsüber also beschäftigt. Abends bin ich ziemlich viel rumgelaufen und habe mir Dinge angesehen. Eine ziemliche Nerd-Tour war das: Drehorte von Sherlock, The IT-Crowd, James Bond… und nebenbei natürlich eine Menge beeindruckende Gebäude.

Auf dem Flug dorthin habe ich gelesen und mich über den oben zitierten Teil aus The Salmon of Doubt (Lachs im Zweifel) amüsiert. Als großer Hitchhiker-Fan lag es also nah, im Rahmen der Nerd-Tour das Grab von Douglas Adams zu besuchen. Ich hätte damit gerechnet dass der an seinem letzten Wohnort in Amerika bestattet wurde, aber er liegt auf dem Highgate Cemetary im Norden Londons.

Nur durch den Zaun gelinst

Nur durch den Zaun gelinst

Ich nahm also die U-Bahn und stieg an der Station Archway aus. Von da bin ich — da ich nicht wusste wo der Eingang war mit einem Umweg — durch ein Wetter gelaufen das exakt… Stanley war. :-D

Am Tor angekommen traf ich den Friedhofswärter, der gerade dabei war abzuschließen. Am nächsten Tag könnte ich wiederkommen, ab 10:00 Uhr hätte der Friedhof geöffnet. Ich musste mittags am Flughafen sein, also würde da nichts raus werden. Er hat seine Triumph warmlaufen lassen, sich dabei noch mit jemandem unterhalten. Dabei ist ihm wohl aufgefallen dass ich wie ein begossener Pudel da stand und nicht wusste was ich stattdessen tun sollte. „Ey, Mate!“ Wenn ich durch den Park gehen würde könnte ich durch den Zaun das Grab von Karl Marx sehen. Ich habe ihm gesagt dass das nicht meine Art von Autor ist, und dass ich eher auf die Bücher von Douglas Adams stehe. „Yeah, me too.“ Er stieg auf seine Maschine und war weg.

Ich lief also durch Stanley zurück zur U-Bahn und fuhr unverrichteter Dinge wieder in die Innenstadt.

Abends im Hotel hatte ich dann noch eine weitere Gelegenheit mich zu ärgern: etwa 300 Meter vom Eingang des Friedhofs entfernt hätte ich — im Rahmen meiner Nerd-Tour — vermutlich die Möglichkeit gehabt meinen Frust mit einem Glas Cider runterzuspülen. Da wäre das Angel Inn gewesen, seinerzeit die Stammkneipe von Graham Chapman:-(

Zur Zeit bin ich auf der Suche nach einer Lösung für ein ziemlich einfaches Problem. Dachte ich eigentlich…

Es gilt, ein Kinderzimmer mit Musik zu beschallen. Zur Zeit tönt da ein billiger tragbarer MP3-Player, manchmal per Kopfhoerer, manchmal per Aktivbox. Das Problem ist, dass sowohl Player als auch Box auf Akku laufen. Die müssen ständig wieder aufgeladen werden, und das nervt alle Beteiligten.

Gesucht wird also ein stationäres Gerät zum Abspielen von Musik. Die liegt heutzutage als MP3 vor, wahlweise auf SD-Karte, USB-Stick oder Netzwerk. Das Gerät darf (muss nicht) tragbar sein, sollte aber direkt an der Steckdose laufen. Also eine Art Boombox (so nennt man Ghettoblaster wohl Heute?), oder eine kompakte HiFi-Anlage. Vielleicht auch wie ein Radiowecker.

Sowas gibt es. Auch zu Preisen die in ein Kinderzimmer passen.

Allerdings soll man in den MP3s auch navigieren können, ganz so als ob es 2017 wäre. Mit Menues und ID3-Tag-Anzeige, vielleicht sogar mit Coverdarstellung.

Sowas gibt es nicht. Scheint mir. :-(

Der tragbare 20-Euro-MP3-Player kann das. Sobald aber ein Netzteil verbaut ist scheint es das nicht mehr unter 200 Euro zu geben, und das ist meiner Meinung nach etwas viel für Kinderhände. In die günstigeren Geräte sind teilweise noch Cassettenlaufwerke verbaut (2017!), MP3 müsste man sich bei vielen vorher auf CD brennen, und die „Benutzeroberfläche“ besteht aus einzeiligen alphanumerischen Displays — wenn überhaupt, oft ist es einfach eine zweistellige Siebensegment-Anzeige.

Die teuren Geräte haben dann auch noch Streaming-Funktionalität, oder DAB+ und ähnliches. Das ist alles gut und schön, aber nicht nötig. Ansonsten geht man offenbar davon aus dass die Musik durch ein Handy oder ein Tablet wiedergegeben wird, so dass die Anlage nur noch zum Bluetooth-Lautsprecher degradiert wird. Ein Handy steht aber noch nicht auf dem Plan… im Kinderzimmer.

Ich trage mich jetzt also mit dem Gedanken, einen Touchscreen und ein paar Lautsprecher an einen Raspberry zu bauen. Da läuft Kodi, das kann alles was ich damit machen möchte. Und alles in allem wird das Ding dann bei etwa 100 Euro liegen. Oder hat vielleicht doch jemand einen Tipp für was fertiges…?

Ich habe hier ja schon öfter auf esoterische Programmiersprachen hingewiesen. Die Faszination hält an, und jetzt hat mich jemand auf eine besonders… bizarre Spielart… hingewiesen.

Ich würde jetzt gerne auf Eingenheiten der Sprache Fetlang eingehen, oder ein Beispielprogramm zeigen. Dann müsste ich aber damit rechnen dass ich wieder in irgendwelchen Contentfiltern lande, wegen Schweinkram. Soviel vielleicht: Das Projekt steht unter BDSM-Lizenz, und das steht natürlich für „BSD, modified“. :-D

Also: wer Interesse hat kann Fetlang auf Github in Augenschein nehmen. Ehrlich gesagt weiss ich nicht ob ich den Link als NSFW kennzeichnen sollte. Zumindest kompromittierendes Bildmaterial habe ich da nicht gefunden, keine Ahnung wie NSFW sonst noch definiert werden kann…

Dritte bis sechste Hand

Dritte bis sechste Hand

Wo eine Lötstation ist muss man meist nicht lange nach einer „dritten Hand“ suchen. Bis letztens war das bei mir das Modell das man auch in dem Wikipedia-Artikel zum Thema findet, das ist vermutlich der Standard — und leider Käse. Glücklich war ich noch nie damit. Und eine kurze Marktforschung zeigt mir leider auch keine günstige Alternative.

Also basteln. Natürlich. :-)

Ich hatte schon eine ganz brauchbare Lupen-Leuchte. Eigentlich sehe ich gut, aber bei SMD kann die tatsächlich helfen. Und durch Zufall — ich war auf der Suche nach was ganz anderem — habe ich Leitungen für Kühlflüssigkeit gefunden. Man suche in der Online-Auktionsplattform seiner Wahl nach „Coolant Pipe“. Dazu noch ein paar „Alligator Clips“ aus der gleichen Quelle. Für sechs Leitungen habe ich keine drei Euro bezahlt, zehn Krokodilklemmen gab es für einen Euro.

Die Leitungen sind wirklich stabil. Man kann sie in jede Form biegen, und die halten tatsächlich besser die Stellung als die Arme an meiner alten dritten Hand.

Also habe ich die orangefarbenen Enden („Düsen“) etwas aufgebohrt und mit Superkleber die Klemmen eingesetzt. Das ganze dann von hinten mit Heißkleber vergossen, hält prima. Zum Zusammenbauen musste ich die Teile etwas heiß machen, sonst hätte ich die Düsen nicht wieder an die Leitung bekommen. Für das andere Ende habe ich passende Löcher in den Sockel der Lampe gebohrt. Da ist nicht genug Material um ein Gewinde zu schneiden, also habe ich auch die Enden verklebt.

Gut beleuchtet und mit Durchblick

Gut beleuchtet und mit Durchblick

Das Ergebnis erfüllt exakt seinen Zweck: vier sehr frei positionierbare Klemmen, direkt unter einer guten Beleuchtung in die für Extremfälle sogar eine Lupe eingebaut ist.

Ich habe auch schon weiterführende Ideen gesehen: kleine Lüfter statt einer Krokodilklemme, um Lötdämpfe wegzublasen, spezielle Halterungen für Tastköpfe und einiges mehr. Aber für mich ist das so erstmal sehr nah an perfekt. Ich bin zufrieden. :-)