Magic Lantern is a firmware add-on for various Canon digital single-lens reflex (DSLR) cameras and the EOS M. It adds features for DSLR filmmaking and still photography, and is free and open-source. Magic Lantern was originally written for the Canon EOS 5D Mark II by Trammell Hudson in 2009 after he reverse engineered its firmware. He ported it to the Canon EOS 550D in July 2010. There are now versions for many other Canon DSLRs and the current principal developer is known as A1ex.