Canon Hack Development KitDas Canon Hack Development Kit (CHDK) ist ein unabhängiger Firmware-Aufsatz für digitale Kompaktkameras des japanischen Unternehmens Canon mit DIGIC-II, -III-, -IV-, -V- oder -VI-Prozessor. CHDK wird als Open-Source-Projekt betrieben, der Quellcode[1] und die fertig kompilierte Software[2] sind unter GNU-GPL-Bedingungen verfügbar. Die Software erweitert den Funktionsumfang der digitalen Kameras. Auch wird die originale Firmware der Kamera dazu weder ersetzt noch verändert. EntwicklungsgeschichteDie Geschichte von CHDK begann in der zweiten Hälfte des Jahres 2006. Der Programmierer VitalyB konnte eine offizielle Datei zur Ixus-Firmware-Aktualisierung („update“) soweit analysieren, dass er die Aktualisierungsprozedur verstand. Mit diesem Wissen schrieb er ein Programm zum Auslesen der Firmware. Dabei wurden die Daten an eine der Kamera-LEDs geschickt und per optischer Kopplung übertragen. Mit den Erkenntnissen aus der Auswertung der Daten wurde ein Programm geschrieben, das 10-Bit-RAW-Dateien der PowerShot A610 speichern konnte. Es erhielt den Namen RAW-Enabler. Im nächsten Entwicklungsschritt erfolgte die Integration eines Interpreters für den BASIC-Dialekt uBasic. Damit waren einfache Skripte zur Steuerung der Kamera möglich. Die Kamera-Modelle PowerShot A620, A630 und A710 wurden in das Projekt einbezogen. Als neue Funktionen kamen eine Histogramm-Anzeige, erste Möglichkeiten für Belichtungsreihen, OSD-Anzeigen und ein Layout-Editor zur Positionierung der OSD-Elemente hinzu. Ab Anfang 2007 fügte der Programmierer GrAnd[3] die Anzeige diverser Kamera-Werte, Über- und Unterbelichtung im Histogramm, einen DOF-Rechner, eine Batterie-Anzeige, einen Datei-Browser, einen Text-Anzeiger, die Organisation der RAW-Speicherung sowie eine Autostart-Funktion hinzu und nannte das Projekt CHDK. Im September 2007 entwickelte der Programmierer MX3 eine Bewegungserkennung für den Firmware-Aufsatz. Ein weiterer Programmierer, Fingalo, erweiterte uBasic wesentlich durch eine Vielzahl von Kamera-spezifischen Befehlen. Die nächsten acht Kameramodelle konnten CHDK nutzen. Lange Belichtungszeiten und Belichtungsreihen im Serienmodus folgten als neue Funktionen. Erstmals gelang es, DIGIC-III-Kameras mit VxWorks- und DRYOS-Betriebssystem erfolgreich anzupassen. USB-Fernbedienmöglichkeiten entstanden. Anfang 2008 ging eine Vielzahl neuer Funktionen in der Version ALLBEST auf. Mitte 2008 entwickelte sich die Experimental-Version Juciphox mit einer ganzen Reihe an neuen Funktionen, u. a. der Skriptsprache Lua, zum heutigen Standard. Die letzte wichtige Neuerung war die kamerainterne Unterstützung von DNG-Dateien. Im Laufe der Zeit bildete sich eine große Gemeinschaft heraus, die die Weiterentwicklung von CHDK gemeinsam betreibt. Gegenwärtig werden mehr als 80 Kamera-Modelle der Ixus- und PowerShot-Serien unterstützt. ArbeitsweiseDie notwendigen Binär-Daten werden auf die in der Kamera benutzte Speicherkarte kopiert. Zum Start von CHDK ruft man die Firmware-Update-Funktion im Kamera-Menü auf, um die Daten in den Arbeitsspeicher der Kamera zu laden. Per Kamera-Taste kann nun ein zusätzliches Konfigurationsmenü aufgerufen werden, in dem sämtliche Einstellungen von CHDK organisiert werden. Wird die Update-Funktion nicht ausgeführt, arbeitet die Kamera ganz normal ohne CHDK. Bei Bedarf kann CHDK bei Einschalten der Kamera auch automatisch gestartet werden. Dazu macht man die Speicherkarte bootfähig und setzt den Schreibschutzschalter auf „schreibgeschützt“. FunktionsüberblickCHDK bietet sehr viele Funktionen an. Diese können hier nur als Überblick zusammengefasst werden.
Funktionale AbgrenzungEs sind, mit Ausnahme von Rohdaten, keine anderen als von der Kamera vorgegebenen Bild- und Video-Formate möglich. CHDK eignet sich nicht als Abspielprogramm für diverse Multimedia-Formate wie z. B. MP3. VariantenNeben der allgemeinen internationalen CHDK-Version gibt es weitere Varianten. Speziell für den deutschen Sprachraum wurde eine Version entwickelt, die alle Voreinstellungen für eine deutsche Benutzerführung sowie einen erweiterten Umfang von Skript-Befehlen beinhaltet. Die deutsche CHDK-Nutzergemeinschaft hat sich besonders auf die Anwendung von Skripten spezialisiert. Eine weitere Variante nennt sich Stereo Data Maker (SDM). Hier geht es vorrangig um die Erstellung von Stereo-Bildern. SDM unterstützt dabei die Synchronisation mehrerer Kameras, beinhaltet aber auch die wesentlichen CHDK-Funktionen. SDM steht in der Kritik, da es sich nicht an die Lizenzbedingungen von CHDK hält. Es gibt diverse Ansätze, Spiegelreflexkameras der Canon-EOS-Digitalkamera-Reihe mit zusätzlichen Funktionen auszustatten. Diese Entwicklungen unterscheiden sich deutlich vom CHDK für digitale Kompaktkameras. Führendes Projekt ist hier Magic Lantern. Weblinks
Einzelnachweise |