Magic Lantern Firmware Wiki
Advertisement

Redirect to:

Installing Magic Lantern 0.2 for Canon 550D, Firmware 1.0.9

Support Magic Lantern!
x

WARNING[]

***************************************************
*                                                 *
* THIS IS DANGEROUS AND MIGHT DAMAGE YOUR CAMERA. *
*  NO WARRANTIES.  NO GUARANTEES.  DO NOT TAUNT.  *
*                                                 *
***************************************************

If you are not comfortable with this, stop reading and delete the software before you are tempted to try running it on your camera.

To repeat this important point:

***************************************************
*                                                 *
* THIS IS DANGEROUS AND MIGHT DAMAGE YOUR CAMERA. *
*   IF IT BREAKS, YOU GET TO KEEP BOTH PIECES.    *
*                                                 *
***************************************************

Important notes[]

  • EyeFi cards are known to cause problems, so it's better to use normal cards. See also this message from fe50.
  • If you have a bootable SD card and have the DISKBOOT flag set in the camera (which the installer does), and you do not have an AUTOEXEC.BIN file on the card the camera WILL NOT BOOT! It will hang and not wake up until the battery is removed.
  • If you encounter a "locked up" camera, quickly remove the battery. Otherwise the ARM might be in a tight-loop and get very hot, very quickly. Your battery will run down and your LCD might show some discoloration.
  • When in doubt, remove the battery and reboot.
  • And, remember that this software can damage or destroy your camera.

Introduction[]

There are 2 ways of running user code on the 550D/T2i/Kiss X4:

  1. using the update process with a .fir file, which must be digitally signed.
  2. using the bootdisk process: the autoexec.bin file is loaded and executed. This file does not have to be signed, but the bootdisk flag must be enabled in the camera.

To install Magic Lantern on your camera, you must download the right magiclantern for your firmware: 1.0.8 or 1.0.9. The recommended way is to upgrade your camera to 1.0.9 in order to get the latest features.

No development will be done on 1.0.8 any more. Magic Lantern does not work at all with earlier firmware versions.

Installing Magic Lantern for 550D firmware 1.0.9 for the first time[]

Make sure you have the Canon Firmware 1.0.9 first! Running Magic Lantern on an incorrect firmware version may brick your camera!

If you already use a previous version of Magic Lantern for 550D firmware 1.0.9, it's easy. Download the latest ML and unzip everything onto your SD card. Done. Enjoy!

If you already use Magic Lantern for 550D/1.0.8, format your card, upgrade camera firmware to 1.0.9 and follow the ML install steps.

Step 0. Downloading[]

  • Download latest build
  • For 500D firmware version 1.1.0, download magiclantern.fir from here

Step 1. Enabling bootflag[]

550install

Magic Lantern install screen

  • Recharge your battery to 100%
  • Remove any accessories from your camera (such as battery grip or external flash)
  • Restore your camera to default settings (Clear all camera settings, from Wrench 3 menu (*must be in manual or P mode to select Wrench 3 menu))
  • Format the SD card from the camera (low level, from Wrench 1 menu)
  • Copy magiclantern.fir from the zip archive on the SD card
  • Launch the firmware update process. For this, start the camera and select Firmware ver 1.0.9 from the Wrench 3 menu (must be in manual or P mode to select)
  • The installer (magiclantern.fir) will enable the bootdisk flag in NVRAM by calling the bootdisk_enable() function from Canon firmware. This is the only persistent change to your camera, which can be reverted.
  • Once the drive light has gone off and stays off for a few seconds, remove the battery.

Step 2. Making the SD card bootable[]

The file autoexec.bin can be launched if the bootdisk is enabled AND the SD card is "prepared" with special values written in boot sector:

  • for FAT16 cards: EOS_DEVELOP at offset 43 and BOOTDISK at offset 64
  • for FAT32 cards: EOS_DEVELOP at offset 71 and BOOTDISK at offset 92
  • for EXFAT cards: EOS_DEVELOP at offset 130 and BOOTDISK at offset 122; there's also a checksum, see Bootdisk for details.

Do not put a "prepared" (bootable) card without autoexec.bin in the camera! (it won't boot and you'll have to take the battery out).

Mac OS X[]

MacBoot usage

thumb|300px|right|Magic Lantern install tutorial for MAC OS X (older, does not use MacBoot)

Use MacBoot by Dave Mitchell. MacBoot works with FAT16, FAT32 and EXFAT cards.

Select your SD card drive, check Make DSLR-bootable and hit Prepare.

Jan 26th 2011 - Latest version (1.05) should have fixed things - my apologies for the problems up to now - Dave.

If MacBoot does not work, try make_bootable.sh (scroll down) and be sure to report the problem to Dave.


thumb|300px|right|HOW TO INSTALL MAGIC LANTERN ON A MAC AND UPDATE MAGIC LANTERAN

Windows[]

thumb|300px|right|Installation tutorial by saw0media

thumb|300px|right

Use EOScard (thanks Pel!) It works with FAT16, FAT32 and EXFAT cards.

EOScard

EOScard usage

Select your SD card drive, check EOS_DEVELOP and BOOTDISK and hit Save.

Note, you will need to have Administrator rights on your Windows user account.

If the antivirus is complaining, put it on Game Mode or try another operating system ;)

Linux and Mac OS X (command line)[]

You can use make_bootable.sh, which is included in the archive. If you don't know how to run scripts, see [1].

Open the file and change the following line in order to indicate your SD card device:

# change this
dev=/dev/disk1s1
  • To find the correct /dev/ entry under OS X type:
    diskutil list | grep FAT

    That will list all mounted FAT disks, the /dev/ entry is the last column. Note also that under OS X this script will leave the card unmounted, eject and reinsert it to re-mount it.

  • To find the correct /dev/ entry under Linux type:
    mount | grep fat

    and choose the one labeled EOS_DIGITAL.

  • For EXFAT cards, see this thread.

Run the script from the terminal:

bash make_bootable.sh

If it doesn't have enough permissions, run it as root:

sudo bash make_bootable.sh

Step 3. The last one :)[]

  • Delete magiclantern.fir.
  • Copy autoexec.bin and cropmks onto your SDCard. Older builds may require some BMP files and magic.cfg.
  • Put the card in the camera.
  • Switch on your camera, and Magic Lantern (autoexec.bin) will boot.

As long as you had enabled the BOOTDISK flag once, you card is "prepared"; the camera will try to load any autoexec.bin. The .fir file is not needed any more, unless for some reason you will want to retry the installation process.

Troubleshooting[]

  • Check if all doors are closed. The camera will not boot if the SD slot door is open!
  • If Magic Lantern does not work (i.e. no new features are noticed), repeat Step 2. This means your card is not bootable. Also try with an older (FAT16) card, try with another card reader, another PC or another operating system.
  • DO NOT repeat the firmware upgrade step with magiclantern.fir! There may be a firmware update counter like on the 7D, and you may end up with a bricked camera.
  • If the camera does not boot (seems dead), remove the battery and the card. Then put the battery back and try to boot the camera without card. Then put a formatted card in the camera and try to boot without Magic Lantern. Only after you are sure the camera is OK, you can try to see what's wrong with Magic Lantern.
  • Again, NEVER let a prepared card without a working autoexec.bin on it, remove the battery immediatly during 5 seconds, switching off is not enough !!!
  • Look in the issue tracker for similar problems; if you can't find the solution, create a new issue there.

Installing updated Magic Lantern builds[]

After you've installed ML, you can get updated builds; just unzip them on the SD card (overwrite old files).

It's highly recommended to install an updated build, usually the last one. They are announced first on the ML mailing list and on Vimeo Magic Lantern User Group.

Make sure you have the correct firmware version!

Latest builds are available on the Unified Magic Lantern wiki page.

Uninstalling Magic Lantern[]

Uninstalling ML from one card[]

Format the card from the camera, and Magic Lantern will be gone (only from that card, of course).

Don't just delete the Magic Lantern files from the card! If you do, the camera won't boot and you'll have to take the battery out.

Uninstalling ML from the camera[]

You don't have to do this unless you are asked to do so by ML developers. For most users, formatting the card will be enough to uninstall ML.

If you know what you are doing, put this in magic.cfg to reset the DISKBOOT flag from the camera:


()

magic.disable_bootdiskf = 1

Risks[]

  • This firmware does a (very small) (semi-)permanent change to your camera: it changes the DISKBOOT flag, which is stored in NVRAM. This change can be reverted (see the mailing list and bootflags.c).
  • There are no confirmed reports of Magic Lantern doing permanent damage on the 550D.

    However, there are reports on CHDK forum that some users bricked their 350D, most probably by installing a hack on the wrong firmware version. There are also lots of reports of camera refusing to boot after installing ML; this happens because they have tried to start the camera from a bootable (i.e. prepared) card without autoexec.bin.
  • Starting the camera with a bootable card without an autoexec.bin will cause symptoms similar to a bricked one (it will not boot). This may scare you. If it happens, take the battery out quickly and the camera should be fine. There are many reports about cameras which behave like being bricked, when in fact it was just autoexec.bin missing. That's why you should read the install instructions carefully.
  • On certain cameras, there are power management issues (i.e. if you turn off the camera or let it go to standby, it won't start any more). Make sure you don't have these problems; if you do, take the battery out after each shooting session!
  • Even if you don't have power issues, it's a good idea to take the battery out when you don't use the camera.
  • The biggest risk is when experimenting with source code without knowing what you are doing. Calling certain functions or calling them at the wrong moment can be dangerous.
  • Risks are low with pre-built binaries, since we test them on our cameras before making them public.
  • Risks are minimal with official versions (from the main repo), since they get tested by many users before releasing them.

That being said, Magic Lantern for 550D was downloaded over 10000 times (without counting downloads from the mailing list or from other sites), and most users run it successfully and use it for production, not only for testing.

Source code[]

You can build your own AUTOEXEC.BIN files with the 550d branch of the source code:

hg clone -r 550d https://bitbucket.org/hudson/magic-lantern

There is no Canon source or object code in the Magic Lantern tree and we do not distribute ROM dumps since they contain code that is copyright by Canon. If you have the camera in hand, you can make your own dump for analysis and use this IDC database to add symbols to it.

If you want to compile your own AUTOEXEC.BIN, check the following wiki pages:

Advertisement