Automatisch

Mach’s Förnuftig – Ikeas Förnuftig smart machen

Förnuftig was?

Förnuftig ist der neue Luftreiniger von Ikea und als solcher hat er mein Interesse geweckt. Aber scheinbar anders als viele Andere finde ich das Gerät nicht interessant um Viren aus der Luft zu filtern, dazu eignet er sich wohl auch nicht. Mir geht es eher um größere Verunreinigungen wie Pollen, Staub o.ä. das sich in der Luft tummelt.

So weit so gut, der Haken: Förnuftig lässt sich von Hause aus so gar nicht ins Smart Home integrieren. Das Gerät hat als Interface lediglich einen Drehschalter mit den Stuffen „Aus“, 1, 2 und 3. That’s all.
Für mich ist hier die Challenge dies zu ändern, denn natürlich möchte ich den Filter am liebsten laufen lassen wenn mich der „Krach“ nicht stört. Und natürlich auch nicht dauerhaft sondern vielleicht in Intervallen. Oder z.B. dann wenn der Staubsauger fährt und Staub aufwirbelt. Und wer weiß was mir sonst noch so einfällt.
Es muss also eine digitale Steuerung ans Gerät.

Abkürzung – der einfache Weg

Der erste Gedanke in Richtung smarte Steuerung war schon da vor dem Gerät:
Entsprechend simpel ist er: Eine schaltbare Steckdose.
Dank des analogen Drehschalters “merkt” sich der Luftfilter seinen Zustand auch ohne Strom. Mit einer schaltbaren Steckdose lässt sich also sehr einfach zwischen “Aus” und der am Gerät eingestellten Stufe umschalten.
Ich hab hier einfach zu einer Steckdose mit Tasmota Firmware gegriffen,
zum einen weil ich sie da hatte, zum anderen da diese sich super ohne Cloudanbindung nutzen lässt.

Die Umsetzung ist einfach, Zwischenstecker rein, fertig, aber die Möglichkeiten sind es leider auch. Die schaltbare Steckdose kann also nur ein erster Schritt sein. Deshalb hab ich mir als nächstes das Innenleben angesehen.

Aufschrauben

Wenn man die Stoffbespannung und den Filter aus dem Gerät entfernt, offenbart sich der Förnuftig als schlichter, in meinem Fall schwarzer Kasten.

Förnunftig - Innenleben

Dabei wirkt das Plastik aus einem Guss, abgesehen von einem Streifen an der Oberseite, der sich auf der Unterseite zum Drehknopf befindet und in dem sich der kleine rote Knopf befindet.
Interessanterweise ist dieser Plastikstreifen mit “normalen” Philipps Schrauben befestigt, wohin gegen die restlichen Schrauben ein Dreiecks-Profil aufweisen.
Nach dem Lösen der beiden Schrauben kann der Plastikstreifen nach oben abgehoben werden. Darunter offenbart sich ein Teil der Elektronik. Förnuftig - Offen

Zum Vorschein kommt eine kleine Platine. Netterweise ist sie nicht überkomplex, hat nur einen Layer und der ist auch schön beschriftet.

More ...

Make ssh’s VerifyHostKeyDNS work on OSX as it should

Finaly there is MacOS X Yosemite.
With it hopefully an update of the default openssh client app i thought. After installing the update i had to admit, i was wrong. Same old OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011 as in Maverics. With the same old bug (??) mentioned here, where adding -o VerifyHostKeyDNS=yes leads to

DNS lookup error: general failure
No matching host key fingerprint found in DNS.

That’s not nice. I do want to use SSHFP, partly because i think its a nice feature, partly because i hardly ever check the fingerprints of my hosts.

So lets fix OS X ssh client, shall we.

More ...

Kontakt und Kalender Sync auf Android ohne Google

Vor einiger Zeit habe ich hier ( [ Sabredav ] Kalender und Kontakte in Sync mit Caldav und Carddav ) schon mal dargelegt wie man sich einfach seinen eigenen Carddav und Caldav Server aufsetzt. Dies ist für diverse Leute interessant sofern sie zwar ihre Daten zwischen mehreren Geräten ausgetauscht wissen möchten, aber gleichzeitig die Kontrolle über ihre Daten behalten wollen. Also ein abgeben selbiger an Dienstleister die alles für lau im Ausland speichern nicht in frage kommt.
Damals ging es vorallem um die Serverkomponente.

More ...

[ Firefox Sync ] explizit einige Settings syncen

Ist es euch schon aufgefallen ?
Jetzt haben wir so einen schönen FSyncMS Server und dann irgendein tolles Plugin, und trotzdem Syncen die Einstellungen des Plugins nicht.
Firefox Sync synchronisiert nämlich nicht alle Werte eurer Firefox config,
sondern nur manche.

Manchmal will man aber spezielle Settings Syncen,
von Addons zum beispiel, hier kann abgeholfen werden:
Im Mozilla Developer Network (hier) steht wies geht.
Einfach unter about:config, rechtsklicken und einen neuen Bool-Wert anlegen.
Den Namen wie folgt festlegen,
services.sync.prefs.sync.<pref>
wollen wir z.B. das Setting keyword.url syncen so müssten wir
services.sync.prefs.sync.keyword.url
anlegen und auf True setzen.

More ...

Autoconnect VPN mit Networkmanager

Mein Notebook soll sich wenn es sich nicht in meinem Heimnetzwerk befindet mit dem VPN verbinden.
Dazu hab ich ein kleines Script für den Networkmanager (dispatcher.d) geschrieben:

More ...

[SMS Backup +] Backup und Sync von SMS und Anruflisten unter Android

Wo das Thema synchronisation schon mal da ist…

Jetzt Android lastig, es geht um Backup und/ oder sync von SMS und Anruflisten des Android devices.
Wobei für mich persönlich der Clou an der Sache ist, dass das Backend ein beliebiges IMAP-Konto ist,
und das Format sogar Menschenlesbar.

All diese schönen Features bring die Software SMS Backup + ( Market link ).

Installation und Configuration sind eigentlich relativ gerade aus, wenn man einige Fallstricke kennt.

More ...

automatisch eigene Tweets speichern

Nachdem ich in Alte Tweets speichern/sichern beschrieben habe,
wie man seine bisherigen Tweets speichern kann,
kam bei mir danach die Anforderung automatisiert meine Täglich neuen Tweets hinzu zu fügen.

Ich wolle also ein Script haben,
das einmal am Tag die eigenen Tweets aus twitter zieht und abspeichert.
Also habe ich das alte Script angepasst.
Ergebnis ist folgendes:

#!/usr/bin/perl

require Encode;
use Net::Twitter;
use strict;

my $nt = Net::Twitter->new(
username => "TWITTERNAME",   #Durch Twitternick ersetzten
password => "TWITTERPASSWORT" #Durch Twitterpasswort ersetzen
);
my $pfad = "/pfad/zum/script/verzeichnis"; #Bitte durch eigenens Verzeichnis ersetze

#Ab hier nichts mehr ändern

open(LASTTWEET, "< $pfad/last_own_tweet.id") || die "Datei nicht gefunden\n";
my @IN = ;
my $lastid = $IN[0];
close(LASTTWEET);

eval {
my $statuses = $nt->user_timeline({ count => 150, since_id => $lastid});
#for my $status ( @$statuses ) {
for (my $i=(@$statuses-1);$i >= 0;$i--){
my $status = @$statuses[$i];
print Encode::encode_utf8("$status->{created_at} $status->{time} < $status->{user}{screen_name}> $status->{text}\n");
if( $status->{id} > $lastid)
{
$lastid = $status->{id};
}
}

open(LASTTWEET, ">$pfad/last_own_tweet.id");   # Datei zum Schreiben öffnen
print LASTTWEET "$lastid";  # Datei schreiben
close(LASTTWEET);

};
if ( my $err = $@ ) {
die $@ unless blessed $err && $err->isa('Net::Twitter::Error');

warn "HTTP Response Code: ", $err->code, "\n",
"HTTP Message......: ", $err->message, "\n",
"Twitter error.....: ", $err->error, "\n";
exit;
}
else { exit; }

In dem Script müssen am Anfang die Variablen einmal richtig gesetzten werden (wie Twitternick etc.).
Desweiteren muss die datei “last_own_tweet.id” im Scriptverzeichnis angelegt werden,
und mit der ID des Tweets befüllt, bei dem das ganze Beginnen soll.

More ...

Teamdrive – Dropbox mit eigenem Server

UPDATE Feb. 2011:
Mitlerweile gibt es etwas meiner Meinung nach besseres: Sparkleshare,
was auch open source ist.
Zwar noch beta aber aus dem Bauch herraus besser als Teamdrive also mal ansehen bitte =)

Mein Text zu Sparkleshare ist hier

More ...

Archiv