CampusOffice Kalender synchronisieren

Campus Office ist unser Studienplaner an der RWTH. Über ihn stellen wir uns unseren Stundenplan zusammen und melden uns zu Prüfungen an. Campus Office besitzt auch einen einfachen Kalender, der alle Termine des aktuellen Semesters individuell für jeden Studenten zusammenfasst. Glücklicherweise kann dieser Kalender auch im iCalendar-Format exportiert werden.

Leider ist jedoch keine automatische Synchronisation mit Google, Outlook & co möglich, da sich jeder Student zuvor mit seinen Daten angemeldet haben muss. Um dieses Problem zu umgehen habe ich ein kleines Skript geschrieben, welches als Proxy fungiert und diese Anmeldung übernimmt.

Folgende URL kann beispielsweise im Google-Kalender abonniert werden:

http://t0.0l.de/snippets/php/campus/cocal.php?u=[matrikelnr]&p=[passwort]

Alternativ kann man sich über das Frontend das Passwort in der URL auch noch etwas verscheiern lassen:
http://t0.0l.de/snippets/php/campus/cocal.php?hash=[base64_encode(matrikelnr + ‚:‘ + passwort)]  => http://t0.0l.de/snippets/php/campus/cocal.php?hash=MzA0OTU3OmFzZGZzZGY=

So habe ich nun alle meine Uni-Vorlesungen, Übungen und Klausuren in meinem Android-Smartphone ohne mich jemals wieder um die Synchronisierung kümmern zu müssen.

CampusOffice Kalender synchronisieren weiterlesen

transcode

Ich sitze im Zug nach Hause. Komme von der letzten Vorlesung des 2. Semesters: Informatik. Eigentlich bin ich auf dem Weg in die Semester-„Ferien“, ständen da nicht für den nächsten Monat noch 4 Klausuren in meinem Kalender 😉

Informatik, Grundlagen des Digitalrechners. Klingt eigentlich recht trocken. Trotzdem ist es klar mein Favorit unter den Fächern dieses Semesters.
Als Ergänzung zur Vorlesung richtete unser Professor einen kleinen Wettbewerb aus.
Mein Beitrag zum Students Englightment Award ist ein Compiler Frontend für den GNU Compiler der Atmel AVRs.

Teil der Vorlesung war die Einführung des Mikrocontrollers ATMega8 von Atmel und dessen Programmierung mit Assembler. Dabei lernten wir zuerst die Schaltungstechnischen Grundlagen und die Minimierung von Schaltnetzen. Anschließend sind wir auf den Aufbau der Zentralen Recheneinheit eingegangen (Steuerwerk, ALU etc..).

transcode kompiliert/assembliert ANSI C und Assembler in Maschinencode und umgekehrt. Dabei wird mit Hilfe von Debugging Informationen ein Bezug zwischen Zeilen im C-Code und den Mnemonics hergestellt. Durch Auswählen von Zeilen werden Bezüge direkt durch Hervorhebungen dargestellt. Für die Darstellung des Maschinencodes lässt sich zwischen binär, dezimal & hexadezimaler Form wählen.

transcode weiterlesen

MantisBT SourceIntegration with GitHub

leetcode.net has written an excellent GitHub integration plugin for the Mantis BugTracker. It allows you to reference issues by their #id in your commit message. You can close an issue simple by adding „fixed #35“ in your git commit message.

Verknüpfung des Bugtracker Eintrags mit dem GitHub Commit

Unfortunatly there is only poor documentation for the GitHub integration. I also had some problems with the „MantisBT“ post commit hook on the GitHub repository configuration. So, I did some code analysis and added a „Post-Receive-URL“ to my GitHub repo:

http://<server>/<path_to_mantis>/plugin.php?page=Source/import&id=<repository_id>

GitHub Configuration

To allow remote imports of new commits, you have to set the following checkboxes and IP addresses in your MantisBT configuration.

MantisBT Configuration

Schreibt mir eine SMS

So, die zweite Klausur ist geschafft! Heute haben wir Grundgebiete 1 der E-Technik geschrieben :-/ nach 1,5 Stunden bin ich mal wieder mit gemischten Gefühlen aus dem Hörsaal gekommen. Dafür gab’s dann aber eine kleine Belohnung: ich habe MMET bestanden 🙂 Nicht grandios, aber auch nicht ganz so knapp wie ich es erwartet hatte.

Nach der Klausur hab ich mich mal etwas von der Uni abgelenkt und ein kleines Skript geschrieben: Ihr könnt mich nun kostenlose SMS schicken. Benutzt dazu einfach die Textbox in der rechten Sidebar. Es ist quasi eine Art Shoutbox & Gästebuch in einem. Eure Nachrichten werden aber nicht gespeichert, sondern direkt per SMS an mein Handy gesendet.

Das ganze läuft über meinen VoIp-Provider Sipgate, der seinen Kunden eine XML-RPC API zu Verfügung stellt, um damit SMS & Faxe zu versenden. Dazu habe ich dann ein kleines PHP-Skript geschrieben, welches ihr in meinm Git-Repository finden könnt:

Der Code liegt wieder in meinem git-Repository.

SMS zu versenden ist leider immer noch nicht kostenlos. Daher könnt ihr maximal alle 4 Stunden eine 160 Zeichen lange Nachricht versenden.

volkszaehler.org

volkszaehler.org ist ein freier Smart Meter (hier: intelligenter Stromzähler) im Selbstbau. Die anfallenden Stromprofile bleiben dabei unter der Kontrolle des Nutzers.

Seit dem 1.1.2010 müssen Stromversorger ihren Kunden für Neubauten so genannte „intelligente Stromzähler“ (Smart Meter) anbieten. Der Kunde soll dadurch seinen Stromverbrauch analysieren und optimieren können.

Die dabei anfallenden Daten („Stromverbrauchsprofil“) erlauben einen sehr detallierten Einblick in den Tagesablauf des Nutzers (wann steht er auf? wann geht er in’s Bett? wann kocht er? wie oft verwendet er seine Spülmaschine? verändert sich sein Verhalten? …). Darum sollten die Daten ausschließlich für den Nutzer selbst zur Verfügung stehen – und das geht nur, wenn man sich den Smart Meter selbst baut. Mit einem Materialeinsatz von ca. EUR 100, etwas Geschick und Zeit lässt sich das mit Hilfe eines Standard-µC-Moduls aufbauen.

Auf der SIGINT 2010 konnte ich mir den Vortrag von Justin Otherguy über das noch recht junge Projekt anhören und fand anschließen die Gelegenheit mit ihm über das Projekt zu sprechen. Schnell war für mich klar, dass ich hier helfen möchte.

Bisher gibt es nur einen funktionsfähigen Prototypen. In den letzten Wochen habe ich mit ein paar weiteren Entwicklern begonnen den Code des Prototypen neu aufzubauen. Volkzaehler.org ist dreigeteilt:

  1. Die Controller und Sensor Ebene
    erfasst  mithilfe eines Mikrocontrollers die Daten leitet sie an den Backendserver weiter.
  2. Der Backendserver
    besteht aus einem PHP-Skript und einer Datenbank. Hier werden die Daten weiter verarbeitet und ausgewertet. Er kommuniziert ausschließlich über eine standardisierte JSON API.
  3. Das Frontend
    stellt die Daten für den Benutzer übersichtlich dar und ist für die Ausgabe der Analysen verantwortlich.

Diese Darstellung verrät uns auch, dass nur der Stromverbrauch erfasst werden kann. Geplant sind sämtliche Messgrößen (Temperatur, Luftdruck, Luftfeuchtigkeit, Strahlung, Niederschlag etc…).

Bisher gibt es noch keine stabile, lauffähige Version des Quellcodes. Im Wiki, der Mailing-Liste und GitHub findet ihr weitere Informationen zu meinem neuen Projekt.

Wir freuen uns über jede Unterstüzung 🙂 Besonders Entwickler mit PHP und Javascript Kenntnissen wären hilfreich 😉