Digital Ixus 80is mit CHDK-Firmware

Das “Canon Hacker’s Development Kit” (CHDK) bietet umfangreiche weitere Funktionen ergänzend zur originalen Firmware. Für den Betrieb unter einem Mikrokopter ist insbesondere die Möglichkeit des Ausführens von Scripten und das Auslösen über den USB-Anschluß von Interesse. Hier wird beschrieben, wie die CHDK-Firmware in eine Digital Ixus 80is kommt.

Firmware Version der Kamera feststellen:
Erstellen einer Datei mit dem Namen vers.req im Hauptverzeichnis der SD-Speicherkarte.

Kamera im Wiedergabemodus anschalten und dann die Tasten “SET” und “DISPLAY” gleichzeitig drücken; eventuell mehrmals gleichzeitg drücken.

Im Beispiel lautet die Auskunft: “Firmware Ver GM1.01A”

Daher wird das passende Firmware-Archiv ixus80_sd1100-101a-0.9.8-782-full.zip heruntergeladen.

Vorbereiten einer SD-Card mit 4GB
Die SD-Card ist in diesem Beispiel /dev/sdb

1. Zunächst wipen der Card:

dcfldd pattern=0x bs=64k of=/dev/sdb
oder
dd if=/dev/zero bs=64k of=/dev/sdb

2. Mit fdisk eine FAT16 Partition anlegen.
Ergebnis sollte so aussehen:

knecht canon # fdisk -l /dev/sdb

Disk /dev/sdb: 3963 MB, 3963617280 bytes
122 heads, 62 sectors/track, 1023 cylinders
Units = cylinders of 7564 * 512 = 3872768 bytes
Disk identifier: 0xde8dc8ba

Device Boot Start End Blocks Id System
/dev/sdb1 1 1023 3868955 6 FAT16
knecht canon #

3. Formatieren der SD-Card mit FAT16

knecht canon # mkdosfs -F 16 /dev/sdb1
mkfs.msdos 3.0.1 (23 Nov 2008)
knecht canon #

4. Volumebootsektor der Card auslesen und sichern.

dd if=/dev/sdb1 bs=512 count=1 of=volboot.dd

Sicherungskopie erstellen:

knecht canon # cp volboot.dd{,.orig}

5. Volumebootsector editieren, z.B. mit hexeditor oder ghex.

Kontrolle: Ab Offset 0x36 sollte FAT16 stehen! Wenn nicht, dann wurde der falsche Sector gedumpt!
Editieren: Beginnend an Offset 0x40 BOOTDISK eintragen.
Speichern und beenden.

Vorher:

volboot.dd.orig

Nachher:

volboot.dd

6. Zurückschreiben des geänderten Volumebootsectors auf die Karte:

dd if=volboot.dd bs=512 count=1 of=/dev/sdb1

knecht canon # dd if=volboot.dd bs=512 count=1 of=/dev/sdb1
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0.228866 s, 2.2 kB/s
knecht canon #

7. Kopieren der benötigten Dateien auf die Card:
Mounten der Partition und auspacken des Archivs:

knecht canon # mount /dev/sdb1 /mnt
knecht canon # unzip ixus80_sd1100-101a-0.9.8-782-full.zip -d /mnt
knecht canon # umount /mnt

8. Ordner dcim erstellen
knecht canon # mkdir /mnt/dcim

9. Abschließendes.
Schreibschutzschieber der Card auf “Lock” (Schreibgeschützt) setzen (Keine Sorge; die Kamera kann trotz allem die Bilder auf der Card ablegen.) Die Kamera wird beim Zugriff auf die Card nun CHDK laden.

Ändern der Display-Sprache auf “german”.

Kamera in Wiedergabemodus stellen und anschalten. Nach dem blauen Canon-Fenster leuchtet einmal kurz ein rotes Fenster auf, welches die CHDK-Version einblendet.
Die Drucken/Verbinden-Taste drücken – unten im Display erscheint nun der Schriftzug . Die Taste MENU drücken. Nun erscheint das umfangreiche Main_Menu von CHDK. Unter “Visual settings” den Punkt “Language” auswählen. Dort dann “german.lng” wählen. Nun sind die Umlaute wahrscheinlich noch niht lesbar. Um dies zu ändern, muss die OSD-Codepage auf “Win1252” geändert werden.

Mögliche Probleme:

Q: Nach dem Anschalten meldet die Kamera, dass die Speicherkarte schreibgeschützt ist.
A: Die SD-Card wurde nicht richtig präpariert und ist nicht bootbar. Entweder fehlen die erforderlichen Dateien BOOTDISK.BIN und PS.FI2 im Hauptverzeichnis, oder das Modifizieren des Volumebootsectors (Eintrag von “Bootdisk”) war fehlerhaft.

Q: CHDK startet, aber im Dateibrowser sind die Unterverzeichnisse (z.B. SCRIPTS oder LANG) leer?
A: Die SD-Card ist nicht mit FAT16 formatiert – CHDK erwartet aber eine FAT16 Formatierung! Obige Schritte nochmal exakt nachvollziehen und darauf achten, dass beim Formatieren durch “-F 16” FAT16 erzwungen wird.

Q: CHDK ist weg?!
A: Die Karte darf in der Kamera nicht formatiert werden, sonst ist alles weg. Sollte es doch einmal passieren, müssen alle Schritte neu durchgeführt werden.

Was bei der 4GB SD-Card nicht funktioniert:

  • In der Kamera formatierte SD-Card (bei 4GB wird die Kamera Fat32 wählen).
  • Karte aus dem CHDK-Menu heraus bootbar machen.


Diesen Artikel drucken Diesen Artikel drucken

Die Kommentarfunktion ist geschlossen.