port-linux-to-canon-dslr-camera
Last month, I Got a Canon's amazing and powerful video-capable DSLR Camera and was wondering if I could play a hack on it.

Yes, Just like last time I installed and run Linux on my PlayStation 3 gaming console and the popular game console, the Nintendo Wii.

What If I could port Linux Kernel to my DSLR Camera ??

Well, it’s now possible for you to port Linux to your Canon DSLR cameras, thanks to the fine folks behind the well-known third-party software add-on, Magic Lantern.

The developers of Magic Lantern have provided some incredible features to DSLR video world for free, with an open-source firmware add-on called Magic Lantern.

Magic Lantern is actually an enhancement that works on top of Canon's DSLR firmware to provide professional video features that were lacking in the early video-capable Canon DSLR, including better control over audio, helpful exposure, programmable focus, audio tools and more.

However, the latest work by the Magic Lantern team sounds much more exciting. The team has managed to port the Linux kernel to Canon DSLR cameras, achieving a new milestone in hacking DSLRs by turning the camera's body into a mini computer.
"Starting from our recent discovery about display access from bootloader, we thought, we could now have full control of the resources from this embedded computer," Magic Lantern developers wrote in a forum post. "So, why not trying to run a different operating system?"
The idea was really interesting! The Magic Lantern creators attempted to port the latest Linux kernel version 3.19 to Canon EOS DSLRs, despite the fact that the team has nearly zero experience with kernel development.The hack is best explained by its developers in a quick proof of concept (POC) video below.

They were successfully able to run the same hack on all Magic Lantern-enabled Canon EOS cameras, including 60D, 600D, 7D, 5D Mark II, and 5D Mark III.

At the time, the team could do the following tasks:
  • Allocate all available RAM to Linux
  • Print debug messages directly on the camera screen
  • Set up timer interrupts for scheduling
  • Mounts am 8 MiB ext2fs initial ramdisk
  • Starts /bin/init from initrd.
Now, the next step is to build the userspace binaries, such as Graphical User Interface (GUI) and more.

So, I have already scheduled my next weekend for checking out this cool hack on my new Canon DSLR camera. If you're also interested in trying out the same on your camera, you can download the autoexec.bin, or get the source code from here.

Have something to say about this article? Comment below or share it with us on Facebook, Twitter or our LinkedIn Group.