I bought a Canon EOS 550D (aka Canon EOS T2i; DP Review) camera a few years ago (it was released February 2010). It came with the 1.0.6 firmware on it. I was recently reminded of Magic Lantern firmware extensions, and wanted to be able to try it out (I found Magic Lantern support for the camera soon after I bought it, but put off trying it until after the wararnty expired; it's also supposed to be more stable now, and the 550D was one of the original development models). The firmware extensions work by binary patching known locations in the firmware, so they rely on having a particular firmware version installed -- usually the latest stable version. For the 550D, the firmware required is 1.0.9.

There are three firmware versions between 1.0.6 and 1.0.9; 1.0.7 doesn't seem to have seen any wide release (no one seems to know what changed), but 1.0.8 (released July 2010) and 1.0.9 (released November 2010) both have a single specific change each (1.0.8: avoid focus drift on, eg, macro lenses, when the AF/MF switch is set to MF; 1.0.9: issues around tone banding with the Auto Lighting Optimizer). I hadn't upgraded as I wasn't seeing any issues. But to be able to try Magic Lantern I need to upgrade.

The Canon EOS 550D firmware is available from Canon Japan; after agreeing to the terms you can download an install PDF, and the firmware files in two archive formats. (There's a handy page listing all Canon firmware URLs maintained in the Photo Malaysia forum, in addition to most firmware releases getting a bunch of photo blog publicity.)

Since it's recommended to reset the camera to default settings before/after upgrading the firmware (particularly in the Magic Lantern install guide), I wanted to make a record of the camera settings I've been using, both to be able to reset them and also for future reference. So below are the settings I'm using which seem to be non-standard.

My Canon EOS 550D settings

Camera 1

  • Quality: RAW + Large/Fine
  • Beep: Disable
  • Release shutter without card: Disable
  • Image review: off
  • Peripheral illumn. correct.: Enable
  • Red-eye reduc.: Disable

Camera 2

  • Auto Lighting Optimizer: Standard
  • Metering Mode: Evalulative metering
  • Custom White Balance: no
  • WB Shift/BKT: 0,0+/-0
  • Color space: sRGB
  • Picture style: Standard (3,0,0,0) (Sharpness, Contrast, Saturation, Color tone; cf Ken Rockwell pushing saturation up to +3 or +4)

Camera 3

  • ISO Auto: Max.: 800

Play 1

No special settings

Play 2

  • Histogram: RGB

Tool 1

  • Auto power off: 2 minutes
  • Auto rotate: On computer only
  • File numbering: Continuous
  • LCD auto off: Enable
  • Screen color: 1

Tech 2

  • Sensor Cleaning:

    • Auto cleaning: Enable
  • Live View function settings:

    • Live View shoot.: Enable
    • Grid display: Grid 1 #
    • Metering timer: 16 sec.
    • AF mode: Live mode

Tech 3

  • Custom Functions:

Other settings

  • AF mode: AI Servo (works well with back button focusing)
  • White balance: Auto
  • AF Point Setting: centre only (usually; sometimes all)

The upgrade

After downloading the firmware, I did a low level format of a small SD card (2GB) in the Canon EOS 550D to use for doing the update (the firmware is under 10MB, so any modern card is big enough). Then I used the "Tech 3"/"Clear Settings"/"Clear all camera settings" option to clear all the settings above, and double checked the settings seemed to be reset to the default.

Then I extracted the firmware from the archive (self-extracting ZIP file in the Windows version; MacOS Disk Image in the OS X version; I extracted both and double checked they were the same because there was no checksum to verify the download; FTR my md5sum was "2b21ba303a5199865d6ad1801ae3a57a", and the file was 9,538,556 bytes as noted by Canon). After that I copied the firmware file (e8kr7109.fir) onto the small SD card I'd formatted in the camera, into the root of the SD card, ejected the SD card, and put it back into the camera.

To start the firmware upgrade, I went to "Tech 3"/"Firmware Ver. 1.0.6" and pressed "Set" to go into the menu. The Firmware update menu told me the current version was 1.0.6, and offered "Update." with a cancel/OK. When I clicked on the "OK", the Firmware update program started, scanned the menu card, and found "e8kr7109.fir". When pressed "set" there, it asked "Update Firmware? 1.0.6 -> 1.0.9", and then I chose "OK", at which point the actual firmware update started. The firmware update took about a minute and a half; the first 27% went very quickly, then it gradually counted up to 100%. When it was done it said "Update is complete", "1.0.6 -> 1.0.9", with a final "OK" to acknowledge.

Once the update was done, I pressed "OK" to exit the firmware update program, at which point it returned to the normal camera screen; visiting the "Tech 3" menu again showed the firmware as 1.0.9. Following Canon's instructions I turned the camera off, removed the battery, left it out for a minute, and reinstalled the battery and turned the camera on. It booted fine. Out of an excess of caution I then cleared all settings again, and then formatted the memory card again to remove the firmware file.

Having done all of that, I reapplied my custom settings (above) manually. And registered the CF 9 (Shtter/AE lock button) setting to "My Menu" (the "*" at the right) for ease of reference (it is helpful to change when shooting with a cable release, or following motion). For future use I also put "Mirror Lockup" in that menu, because I use it occassionally (night shots, on a tripod) and sometimes end up frustrated I've forgotten to turn it off....

With a few test shots I don't obviously see anything different (unsurprising, given the bug fixes were to things I was not using). But at least I'm set to try Magic Lantern. (And fortunately the "clear all camera settings" did not reset the continuous file numbering -- the numbers continue on from where they were up to before the upgrade.)

ETA, 2013-01-19: I ended up getting my camera sensor cleaned (at Wellington Photographic Supplies, Vivian St -- $90 for next day service with two lenses, and seems to have removed all the obvious dirt) before trying Magic Lantern.

The actual install of Magic Latern once I had the right Firmware went as described: clear settings again, low-level format card, download and unzip ("magiclantern-v2.3.550D.60D.600D.50D.500D.5D2.zip"; MD5 = 774899b1854df673ade065e5a53aa51f) at root of card, start camera with card installed, run the firmware update sequence (described above) to configure the camera to look for a boot flag on the SD card, wait for confirmation screen, then turn camera off and on again. Then set my custom settings all over again. The camera appears to work, and the firmware version shows as "1.0.9-ml-2.3". The Magic Lantern menu appears using the "Erase" (trash can) button, in shooting mode (it still works as an erase button in playback mode).

I used a 8GB plain SDHC card for my first test; if it seems to work reliably, without excessive battery drain, I may put Magic Lantern on all my cards. Holding down the "SET" button while powering on will prevent the Magic Lantern extensions from starting: it says "Magic Off" at the top left, and the firmware version shows as "1.0.9-ml-off" -- versus a card without Magic Lantern, which shows "1.0.9" as per the basic firmware. So Magic Lantern did trigger at boot, but didn't install its menu/hooks. But that may be sufficient work around for any possible issues.