Springe zum Inhalt

Blog

2

Seit längerem nutze ich nun Cyanogenmod und habe mein Smartphone auch verschlüsselt. Damit sind die Daten nun geschützt, jedoch kann bei einer verschlüsselten /data-Partition (nur diese Partition wird verschlüsselt) nicht mehr einfach mit Adb ein Cyanogenmod-Update eingespielt werden.

Die Methode ist, das Update per adb sideload einzuspielen, da die /system-Partition nicht verschlüsselt ist. Dazu muss in das Recovery-Image gebootet werden. Die wohl am häufigstens verwendeten Recovery-Images sind TWRP und seit neuestem auch die Cyanogenmod eigenen Recovery-Images. Beide bieten die Möglichkeit, das System-Image per sideload einzuspielen.

Kurz nach dem Starten von adb sideload <image.zip> kann folgender Fehler auftreten:

error: protocol fault (no status)

Ursache ist, dass adb auf dem Computer zu alt ist. Es wird aktuell mindestens 1.0.32 benötigt.

Leider ist selbst auf einem aktuellen Linux Mint, meiner bevorzugte Distribution, nur Version 1.0.31 enthalten. Man kommt also nicht drumherum, sich die Android-Developertools von Google herunterzuladen.

Danach ist der Sideload problemlos zum Updaten des Systems möglich.

Mit der Software "Motion" und dem Raspberry Pi 2 lässt sich ein Webcam realisieren, die Bewegung im Bild erkennt und bei Bewegung dann ein Video aufnimmt. Die Installation der Software und weiterer Anpassungen wurde bereits in einem vorhergehenden Artikel beschrieben.

Nach mehreren Tests stellte sich heraus, das für eine Bildauflösung von 640x480 Pixeln durch den Raspberry Pi 2 gerade noch so eine Rate von 5 fps berechnet werden konnte. Das mag für die meisten, reinen Überwachungskameras ausreichen, wenn nicht gar schon zu viel sein. ...weiterlesen "Motion Webcam Beispiel"

31

Im vorhergehenden Teil dieser Reihe wurde erklärt, wie man mit einem Arduino Uno und einem GSM-Board (in diesem Fall mit dem Siemens TC35) SMS versenden kann. Heute nun soll das Programm dahingehend erweitert werden, dass SMS empfangen und ausgewertet werden können und anhand des SMS-Inhalts ein Schalter bzw. ein Pin des Arduino geschaltet werden kann.

Der Schaltungsaufbau ist der gleich, wie er im letzten Versuch verwendet wurde. Hinzugekommen ist ein größeres Stück Software für den Arduino, welches nun die erforderlichen Befehle zum Empfang von SMS an das GSM-Modem sendet.

Die zur Kommunikation verwendete Lib SoftwareSerial definiert nur einen 64 Byte großen Empfangspuffer. Für den Empfang von SMS ist das viel zu wenig. In der Datei hardware/arduino/avr/libraries/SoftwareSerial/SoftwareSerial.h wird die Puffergröße durch _SS_MAX_RX_BUFF festgelegt. Diese Puffergröße sollte dort auf mindestens 1024 festgelegt werden.

#define _SS_MAX_RX_BUFF 1024

Folgende Vorgehensweise im Arduino-Programm für die Initialisierung wurde gewählt:

  • Aktivieren der seriellen Schnittstellen zum GSM-Modem wie auch zum Computer (für die Protokollierung und zu Testzwecken)
  • Einschalten des GSM-Teils des TC35 über den IGT-Pin
  • Löschen aller alten bereits auf der SIM-Karte gespeicherten SMS-Nachrichten

Im anschließenden loop des Arduino wird ermittelt, ob neue SMS-Nachrichten vorliegen. Diese sollen dem Schema "PIN{ ON | OFF | STATUS }" ensprechen. Bei korrekt übermittelter PIN wird bei falschem Kommando eine SMS mit entsprechendem Hilfetext zurückgesendet. ON bewirkt das Einschalten des Schalter, OFF das Ausschalten und STATUS sendet eine SMS mit dem aktuellen Zustand des Schalters an den Sender der SMS zurück. ...weiterlesen "Arduino Uno und Siemens TC35: SMS empfangen und Schalter steuern"

Im Folgenden wird demonstriert, wie mit einem Arduino Uno als Steuerungseinheit und einem durch die Firma SaintSmart um eine Platine mit entsprechenden Anschlussmöglichkeiten erweitertes Siemens GSM-Modem TC35 zum einfachen Versenden von SMS verwendet werden kann.

Beide Module lassen sich kostengünstig über eBay, Amazon oder den präferierten Hardwarehändler beziehen. Das TC35 schlägt dabei in der hier getesteten Version mit ca. 22 € zu Buche. ...weiterlesen "Arduino Uno und Siemens TC35: SMS versenden"

3

Unter Debian werden im Paket munin-plugins-core zwei Plugins geliefert, mit denen sich überwachen lässt, ob Paketaktualisierungen vorhanden sind.

Plugin apt

Dieses Plugin dient nur dazu, bei Vorhandensein mindestens eines Updates eine Warnung zu generieren, die, bei entsprechender Konfiguration, per E-Mail verschickt wird. Einen Munin-Graphen erzeugt dieses Plugin nicht.

Plugin apt_all

Dieses Plugin sucht in allen verfügbaren Repositories nach Update und erstellt daraus einen Munin-Graphen.

Beim Einsatz von apt_all kann folgende Fehlermeldung auftreten:

E: The value 'testing' is invalid for APT::Default-Release as such a release is not available in the sources
E: The value 'unstable' is invalid for APT::Default-Release as such a release is not available in the sources

Sie rührt daher, da das Plugin die Repositories für stable, testing und unstable durchsuchen will, auf dem System aber evtl. testing und unstable gar nicht in den Apt-Quellen konfiguriert ist. Leider lassen sich die durch das Plugin zu untersuchenden Repositories nicht konfigurieren, zum Abstellen der Fehlermeldung muss das Plugin selbst editiert werden. Ziemlich am Anfang des Plugins /usr/share/munin/plugins/apt_all findet sich eine Zeile mit

my @releases = ("stable", "testing","unstable");

Diese muss geändert werden in

my @releases = ("stable");