Wie man das 5 Sekunden boot Delay beim Digispark / Digistump attiny85 entfernt

Neben den ESP8266 Microcontrollern hatte ich mir zum Herumspielen auch ein Dreierpack attiny85 Microcontroller von Digispark bestellt. Diese sind sehr klein, stromsparend und können für verschiedenste kleine Aufgaben herangezogen werden. Der entsprechend installierte Bootloader macht die Entwicklung dabei besonders einfach, weil man mit der Arduino IDE arbeiten kann und das Gerät einfach nur anstecken muss und nicht irgendwelche Programmer benötigt oder so.

Diese Einfachheit hat allerdings einen Nachteil: immer, wenn man den attiny85 mit dem Strom verbindet, wartet der Bootloader 5-6 Sekunden lang, ehe das installierte Programm startet. Und hier möchte ich euch nun zeigen, wie ihr den Bootloader so modifizieren könnt, dass er direkt das Programm startet und statt der 5s Wartezeit mittels Jumper in den Programmier-Modus gebracht wird.

Dazu benötigt ihr:

Neuer Bootloader:
https://github.com/micronucleus/micronucleus/blob/v1.11/upgrade/releases/micronucleus-1.11-entry-jumper-pb0-upgrade.hex

Upload Software:
https://github.com/digistump/DigistumpArduino/tree/master/tools

Ladet euch das für euer Betriebsystem passende tar.gz herunter und entpackt es. In den entpackten Ordner könnt ihr der Einfachheit halber direkt die Hex Datei packen.

Der Upload ist dann eigentlich ganz leicht:

chmod +x micronucleus <-- die Binary ist nicht ausführbar, muss man also einmalig erledigen...
./micronucleus micronucleus-1.11-entry-jumper-pb0-upgrade.hex

Ihr werdet nun aufgefordert, den attiny85 anzustecken. Sobald das erledigt ist, wird der neue Bootloader gebrannt. Anschließend müsst ihr ca. 30s warten, dann das Gerät vom USB abziehen und den Pin GND mit Pin P0 verbinden. Nun zurück zur Arduino IDE wechseln, erneut den Upload des Programmes starten und wenn ihr aufgefordert werdet steckt ihr den attiny85 mit der GND-P0 Verbindung an. Nachdem die Firmware geschrieben wurde, zieht ihr das Teil wieder ab und trennt die Verbindung zwischen GND und P0. Wenn er nun wieder mit dem Strom verbunden wird, sollte der attiny85 sofort und ohne Pause das Programm starten.

Eilmeldung Münster

Wie krass der Riss in unserer Gesellschaft ist sieht man, wenn es mittlerweile eine Eilmeldung ist, dass ein Arschloch (!) „deutscher“ oder was auch immer ist. Jemand der einen oder mehrere Menschen tötet, ist einfach ein riesengroßes Arschloch – egal wo er/sie herkommt oder welcher Religion er/sie angehört. Es ist unerträglich dass diese Tat nun scheinbar „weniger schlimm“ ist weil es ja kein böser Ausländer war 😔😔😔

Warum der Fall Cambridge Analytica und Facebook gravierender ist als angenommen

Für alle, die die Tragweite hinter dem Cambridge Analytica Problem noch immer nicht verstanden haben oder nicht wollen, erklärt dieses Video das Thema ziemlich gut.

Um das Ganze etwas verständlicher zu machen: Bei der ganzen Thematik geht es um zwei Problematiken, nämlich: wie ist diese Firma an ihre Daten gekommen und was hat sie anschließend damit angestellt.

Zur Frage der Datenherkunft sind sich viele der selbsternannten Internetexperten einig, dass ja jeder Nutzer bei Facebook wissen sollte, dass der Dienst kostenlos ist und man somit mit seinen eigenen Daten bezahlt – denn niemand verschenkt etwas in der heutigen Zeit. Das ist soweit auch korrekt.

ABER: Cambridge Analytica hat die Daten erstens von einer völlig anderen App geliefert bekommen und somit explizit NICHT die Zustimmung der Nutzer erhalten. An dieser Stelle wurde auch Facebook „betrogen“ und konnte ehrlich gesagt nicht viel dagegen tun. Und zweitens: der große Fehler von Facebook war (und ist es leider noch immer), dass eine App, die von einem Nutzer die Erlaubnis zum Lesen seiner Daten bekommt, AUCH die Erlaubnis hat, die gleichen Daten seiner Freunde abzufragen, obwohl diese NICHT explizit ihre Zustimmung dazu gegeben haben. So wurden „nur“ die Zustimmungen von ca. 320.000 Usern eingeholt, jedoch auch die Daten ihrer im Schnitt 160 Freunde. Erst dadurch kam die Summe von ca. 50 Mio „geklauten“ Profilen zusammen.

Aber nun zur Frage, was man mit diesen abgegriffenen Daten anfangen kann: Bereits mit ein paar Likes und Angaben wie Geburtsort, Alter, Geschlecht usw. kann man ein relativ genaues Persönlichkeitsprofil einzelner Menschen anlegen. Wenn man dann noch Zugriff auf deutlich mehr Likes bekommt, wird das Bild immer feiner. Cambridge Analytica hat diese Daten soweit analysieren können, dass damit ein sehr genaues Targeting von Facebook Werbung möglich war. Und damit wurde dann auch sehr gezielt Werbung geschalten, für kleinste Nutzergruppen, um ihnen genau das im Feed einzublenden, was sie „sehen wollten“ – inkl. angepasster Tonalität und Inhalte. Und indem man die Inhalte Stück für Stück veränderte, konnte man die Meinung der Nutzer ganz subtil manipulieren.

Der Typ im Video fasst es in einer Analogie extrem gut zusammen: Mittels der gewonnenen Daten kann man Micro-Targeting betreiben, was im Endeffekt bedeutet, dass man seine Meinung nicht auf dem Marktplatz herausposaunt, sondern jedem einzelnen Menschen ins Ohr flüstert – und zwar für jeden in einer abgewandelten Form, die bei ihm am besten ankommt.

Und als letzter Punkt noch: ich möchte hier nicht falsch verstanden werden. Mir ist klar, dass man mit derartigen Methoden nicht einfach eine Wahl oder Abstimmung komplett kippen kann. Die Taktik war und ist hier jedoch:  Wahlen und Abstimmungen, bei denen knappe Mehrheiten in Kombination mit vielen unentschlossenen Menschen und Nichtwählern wahrscheinlich sind, sind anfällig für diese Manipulation. Man muss nämlich “nur” kleine Teile der Bevölkerung umstimmen, die eben nicht in ihrer Meinung gefestigt sind. Dies traf sowohl bei der Wahl des US Präsidenten als auch beim Brexit zu.

PS: Übrigens hat Steve Jobs hat vor ein paar Jahren mal folgendes zum Thema Privatsphäre gesagt, und die Aktionen von Apple lassen zumindest darauf schließen, dass sie diese Aussage ernst nehmen:

raspberry pi 3 b+ will nicht booten

Die Geschwindigkeit meines Octopi Druckservers für meinen 3D Drucker hat mich in letzter Zeit etwas genervt, daher habe ich mir direkt einen ganz neuen Raspberry Pi 3 b+ bestellt. So wie immer dachte ich mir: Karte wechseln, booten, fertig. Aber nix da. Der neue Raspi bootet einfach nicht.

Ok, dann neues Image probiert, andere Karten, andere Kabel usw. Nichts half. Die rote LED blinkte immer nur in unregelmäßigen Abständen und auf meinem Monitor war nur das Bunte Viereck sowie das Blitzsymbol zu sehen, was eigentlich auf Stromprobleme hinweist. Was aber wiederum bei einem 2 oder auch 2.5 A Netzteil mit dicken Kabeln nicht sein kann.

Der Grund für das Problem war dann doch sehr einfach: man muss die SD Karte “richtig” formatieren 🙄…

Am besten lädt man sich dazu das offizielle Tool zum Formatieren von SD Karten runter (ja, das gibt es tatsächlich 🙂 ) und wählt dort bei der Formatierung “overwrite format” aus. Damit wird die komplette SD Karte einmal überschrieben. Anschließend spielt man mit einem Tool seiner Wahl ein AKTUELLES Raspbian oder Noobs Image auf, welches die Treiber für den neuen Raspberry enthält.

Im Falle von Octopi wie bei mir war es nötig, den aktuellen Nightly Build zu verwenden. Das letzte stable Release verwendet sogar noch die letzte Raspbian Version…

Wunderschöne Kartenausschnitte als Hintergrundbilder für dein Handy

Um seinem Handy den persönlichen Touch zu geben, sind Hintergrundbilder bzw. Wallpaper das einfachste und offensichtlichste Mittel. Viele mögen Bilder ihrer Liebsten sehen, wenn sie ihr Handy entsperren, andere wieder nehmen Landschaften oder abstraktes und wieder andere haben einfach nur einen einfarbigen Hintergrund.

Etwas richtig besonderes bekommt man bei alvarcarto.com geboten: einen wählbaren Kartenausschnitt, der in verschiedenen Schwarz-Weiss Varianten eingefärbt ist. Eigentlich bietet der Anieter dieses Verfahren für Poster an, hat sich aber nun dazu entschlossen, einen Generator für mobile Hintergrundbilder zu erstellen:

Man gibt einfach die gewünschte Location ein und wählt dann das Farbmuster. Anschließend stellt man noch das Handy Modell bzw. die richtige Auflösung ein, und schon kann man das Bild generieren lassen und es dann herunterladen.

Für meinen Wohnort Dresden sieht das Ergebnis dann so aus:

FreeBSD pkg install meldet size mismatch Fehler

Die Fehlermeldung sieht in der Regel so oder so ähnlich aus:

pkg: cached package ...: size mismatch, fetching from remote
pkg: cached package ...: size mismatch, cannot continue

Um das Problem zu lösen, löscht man sämtliche caches von pkg mit folgenden Commands:

pkg clean
rm -rf /var/cache/pkg/*
pkg update -f
rm /var/db/pkg/repo-*.sqlite
pkg bootstrap -f

Beim Ausführungen von Java jnlp Anwendungen erscheint ein Access Denied Fehler

Beim Ausführen einer Java Anwendung mit einer jnlp Datei bekam ich komischerweise immer wieder Fehlermeldungen „java.io.FilePermission“ für die Datei „/usr/bin/xprop“. Die Datei war im System vorhanden und durfte auch von jedem ausgeführt werden, selbst mit Sudo kam der Fehler.

Die Lösung des Problems ist zwar relativ leicht, aber mal wieder sehr ärgerlich: es ist ein Fehler in der OpenJDK und in meinem Fall der icedtea-netx Implementierung. Und um diesen zu umgehen muss man leider die original Oracle JAVA JRE runterladen und installieren.

Wichtig hierbei: man muss wohl zwingend die tar.gz Variante und nicht die RPM Variante nehmen, da nur diese „javasw“ enthält.

Das Vorgehen für die Installation ist:

  • openjdk und co vom System schmeissen (es geht auch anders, aber man muss die Sache ja nicht unnötig verkomplizieren)
  • unter http://www.oracle.com/technetwork/java/javase/downloads/index.html den Download Button unter „JRE“ anklicken und auf der folgenden Seite die AGB akzeptieren und dann die entsprechende tar.gz für 64bit oder 32bit herunterladen
  • tar.gz entpacken und den Ordner nach /usr/java/[ORDNER_NAME] verschieben
  • anschließend (keine Ahnung ob das der richtige Weg ist, aber er funktioniert) unter /usr/bin per Link die java und javasw Binaries verlinken:
cd /usr/bin
ln -s /usr/java/[ORDNER_NAME]/bin/java
ln -s /usr/java/[ORDNER_NAME]/bin/javasw

Nun könnt ihr die jnlp Datei einfach per
javasw [DATEI].jnlp aufrufen.