Canon EOS M3

Started by Hector, February 07, 2015, 01:50:43 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


EOS 100D 100D.100B


How's to progress? I bet others would be willing to throw in some money to encourage the current developers. 

Walter Schulz

- There will be no ML for M3 because code base is totally different. M3's firmware is closely related to Canon's point-and-shoot. There is a CHDK port in the making. Please join the discussing there.
- Money will cause current devs to drop-out from project.


FYI, the latest QEMU branch is able to emulate a large part of the EOS M3 firmware, so it could be useful for those porting CHDK.

Emulation log: EOSM3-qemu.log

- DryOS core (task scheduler, semaphores, meminfo) is pretty much identical to EOS firmware (e.g. 7D2)
- A lot less debug messages on M3 (unless I'm missing something, since there are plenty of strings)
- File I/O routines are different (Fopen_Fut on M3, similar to Powershot, FIO_OpenFile on EOS)
- Initialization appears simpler on M3 (a sequential routine; on EOS there are a bunch of things running in parallel)
- Low-level initialization looks pretty similar (cstart, init_task)
- SD card emulation is not done, but should be doable (if you look at how it's done on 60D or 5D3, for example)
- User-level code is totally different
- The log contains TurnOnDisplay, TurnOnBackLight and similar stuff, so if you find the display buffer address, it might actually show something :)
- To enter the debug shell, return '#' as the first character from the UART (TIO)

? Help
h Help
d <adr> <size> Dump memory
e <adr> Edit memory
i  adr Input
o  adr  data Output
q Quit ( =Reset )
c CheckSiP ( don't return! )
f <adr> <file> File read
v <source> <target> <size> Verify memory
--- example ---
>> d A0000 1B0    ; dump 0xA000-0xA1AF

To prepare the ROM files for QEMU from the CHDK dump:

mv PRIMARY12.BIN EOSM3/ROM1.BIN  #  32MB from FE000000
mv SECONDARY.BIN EOSM3/ROM0.BIN  #  8MB  from FB800000

The rest of details about how to run the emulator are in the QEMU thread and in the install script.

I wouldn't say porting ML is impossible on this camera, but it would be one of the most difficult ports (it will require a lot of wrapper functions that mimic the behavior of DSLR firmware, and while you can probably easily get ML menu up and running, porting the features will be a lot more difficult - most things are very unlikely to work only with minor tweaking). It would be probably a little easier than porting ML to Nikon :P

Hope it helps.


Quote from: a1ex on June 12, 2016, 09:11:57 PMif you find the display buffer address, it might actually show something :)
You can find some addresses there:

Quote from: usting316 on December 29, 2015, 07:38:13 AM
@ant can u send me files so i can use the intervalometer options on my m3? Thanks
You can try pre-pre alpha version of CHDK. Intervalometer script should work...


Looking for a EOS M3 owner to dump 8MB starting from FB800000, for my QEMU experiments. Please see for instructions.


Is there any way to shot Time Lapse on EOS M3???


Yes, using CHDK and intervalometer script ...


Where I can find instructions about this? May be You can give me a link? Thanks.


Quote from: uncer on September 06, 2016, 07:58:48 PM
Is there any way to shot Time Lapse on EOS M3???
In the miniatyr function on the camera you can use the filmfunction and speed up the view 5-10 or 20xx

Sent fra min GT-P5210 via Tapatalk


Quote from: ATV2m on September 11, 2016, 11:19:52 AM
In the miniatyr function

And you will get 1280*720 movie with 4:2:0 colours    :P


Quote from: a1ex on July 17, 2016, 01:07:04 PM
Looking for a EOS M3 owner to dump 8MB starting from FB800000, for my QEMU experiments. Please see for instructions.
a1ex do you still need a dump?


Nope, thanks, already got one from Ant123.


Hi all new owner of a EOS M3 here in the States.  It's replacing my T5i that I sold to a friend.  Buddy of mine turned me on to ML and I eagerly came here to download but it's looks like no dice for the M3 =(  Is this true or am I just a dumb noob not looking hard enough??

Walter Schulz

EOS M and M3 do not share the same code base. M3 internal code is based on PowerShot architecture. 

For programmers it means EOS M3 will be the most difficult port ever and because CHDK project is covering PowerShot pretty well it is unlikely you will see an ML port.


Hello Everyone,

I am a beginner with the Canon EOS M3 Mirrorless Camera and have a question regarding the limited video length in Canada.

I'm an active gamer and want to record video without having it cut out every 29 minutes and 59 seconds. I understand this is a limitation because in Europe you can be charged taxes, duties, etc. when recording videos exceeding 30 minutes. I live in the country of Canada and don't want this to happen to my videos. Does Magic Lantern have a function to bypass this limit? If so, is it a good idea for my camera?


P&N Gaming



@potvinp Read the post above yours...



Although not ML, as a non-video guy, I've enjoyed getting more out of the M3 with CHDK.

For example, I've just posted a landscape focus and exposure bracketing script here:;topicseen#msg140851