I would like to try and update ML so it runs with firmware 1.2.3 on the 5D Mark III. My understanding is that I need to do the following:
- Obtain a ROM dump of the 1.1.3 and 1.2.3 firmwares.
- Load these dumps into ARMu.exe.
- For each address is platform/5D3.113/stubs.S, find the equivalent address in the 1.2.3 firmware by comparing the disassemblies.
- Create a new platform/5D3.123/stubs.S file using these newly discovered addresses.
- Update various build/compile scripts as required.
I'm new to this however and I've hit a wall at the very first step. How do I get a dump of 1.2.3? I tried updating my 5D3 to 1.2.3 and then flashing 5D3-113-bootflag.fir. Perhaps not surprisingly, this dies with the following error: "Update file error. Please check the memory card and reload the battery and try again". I've also tried to run both the scripts here: http://chdk.wikia.com/wiki/Canon_Basic/Scripts/Dumper but nothing is produced. I'm not convinced the scripts even run. As instructed I set the "SCRIPT" string in the boot sector (using EOScard) and created the appropriate script.req and extend.m files - is there something else I need to do too or does Canon Basic scripting not work on DSLRs, just the point'n'shoots? Can I perhaps extract and decrypt the dump from Canon's 5D300123.FIR file instead? If I need to create my own .fir file for 1.2.3 to dump the ROM, how would I go about doing that - presumably it needs signing? Can I make an autoexec.bin to dump it? Is there another trick I can try?
Obviously various developers here know how to get a ROM dump but I haven't been able to find this process documented in detail anywhere. Any hints would be greatly appreciated!
Appealing to Pelican, coutts, 1%, a1ex, g3gg0, or anyone else who can help me learn more about this.
A couple of relvant threads:
http://www.magiclantern.fm/forum/index.php?topic=2602.msg73403#msg73403
http://www.magiclantern.fm/forum/index.php?topic=5695.msg61657#msg61657
Good luck! Hope someone who can help you responds.
Quote from: chris_overseas on January 05, 2014, 06:18:47 PM
I would like to try and update ML so it runs with firmware 1.2.3 on the 5D Mark III. My understanding is that I need to do the following:
- Obtain a ROM dump of the 1.1.3 and 1.2.3 firmwares.
- Load these dumps into ARMu.exe.
- For each address is platform/5D3.113/stubs.S, find the equivalent address in the 1.2.3 firmware by comparing the disassemblies.
- Create a new platform/5D3.123/stubs.S file using these newly discovered addresses.
- Update various build/compile scripts as required.
I'm new to this however and I've hit a wall at the very first step. How do I get a dump of 1.2.3? I tried updating my 5D3 to 1.2.3 and then flashing 5D3-113-bootflag.fir. Perhaps not surprisingly, this dies with the following error: "Update file error. Please check the memory card and reload the battery and try again". I've also tried to run both the scripts here: http://chdk.wikia.com/wiki/Canon_Basic/Scripts/Dumper but nothing is produced. I'm not convinced the scripts even run. As instructed I set the "SCRIPT" string in the boot sector (using EOScard) and created the appropriate script.req and extend.m files - is there something else I need to do too or does Canon Basic scripting not work on DSLRs, just the point'n'shoots? Can I perhaps extract and decrypt the dump from Canon's 5D300123.FIR file instead? If I need to create my own .fir file for 1.2.3 to dump the ROM, how would I go about doing that - presumably it needs signing? Can I make an autoexec.bin to dump it? Is there another trick I can try?
Obviously various developers here know how to get a ROM dump but I haven't been able to find this process documented in detail anywhere. Any hints would be greatly appreciated!
Appealing to Pelican, coutts, 1%, a1ex, g3gg0, or anyone else who can help me learn more about this.
A couple of relvant threads:
http://www.magiclantern.fm/forum/index.php?topic=2602.msg73403#msg73403
http://www.magiclantern.fm/forum/index.php?topic=5695.msg61657#msg61657
+one on this, I'd like to help with any dirty work. Btw I know nothing about coding, but I could maybe help looking for stubs etc once we've got the dump. :)
No one has some hints for me? It seems a bit crazy to reinvent the wheel.
Quote from: chris_overseas on January 16, 2014, 06:11:54 PM
No one has some hints for me? It seems a bit crazy to reinvent the wheel.
Chris, you've made this offer a number of times since early November. Clearly it's been seen, and those with the relevant knowledge have decided not to respond. Seems rude to me that they haven't responded at all -- you're after all not simply complaining about wanting some new feature, but willing to do the work, which the administrators and devs are always encouraging complainers to do -- but perhaps they have their reasons for not even telling you 'no'. Maybe try sending a PM.
Quote from: mva on January 17, 2014, 11:55:22 AM
Chris, you've made this offer a number of times since early November. Clearly it's been seen, and those with the relevant knowledge have decided not to respond. Seems rude to me that they haven't responded at all -- you're after all not simply complaining about wanting some new feature, but willing to do the work, which the administrators and devs are always encouraging complainers to do -- but perhaps they have their reasons for not even telling you 'no'. Maybe try sending a PM.
Well I've done a bit of reverse engineering over the years but I'm new to cameras, so I feel that if I had the spare time I could probably figure at least some of it out for myself. The problem is I don't have a lot of spare time so I was hoping for a bit of a jump-start with some tips from those who already know the correct route to take. I suspect the problem is that this particular firmware upgrade is a lot more difficult to deal with than a normal one - coutts alluded to that with his comments on the 1.2.1 stubs he updated. Perhaps given my lack of knowledge I'll only end up bricking my camera and no one wants that responsibility :)
I'm not actively looking into this because I have other projects to work on for now. If someone does give me a few pointers though I'll gladly take a look and do as much as I can, including documenting the process for others. I'd really like to get ML + f/8 AF on my 5D3.
Steps to be done:
- Dump the firmware (get in touch with a1ex, he may help)
- Match stubs / consts between the two ports (requires access to IDA)
- Fix bugs
- ???
- You have your new port.
Thanks nanomad. I tried asking the same question recently but didn't get much response (http://www.magiclantern.fm/forum/index.php?topic=9827.0).
I'll drop a1ex a note and see if he can point us in the right direction for getting that firmware dump.
Another one here.
I have also offered to put in a few hundred hours, provided someone
helps me get onto the horse.
I don't mind virtually copying a telephone book by hand, do the "dirty work"
as someone worded it. But I am no programmer, have long forgotten 99%
of the BASIC and PASCAL we had in school, back when there was no monitor
but a teletype instead.
About the rude answers (or no answers at all):
This is not a commercial project, nobody has any interest in customers,
and there is definitely no community management.
We have to take it like it is and get organised by ourselves.
The stupid thing though: Obviously most of what is asked will be read, even
if there is no answer or a rude answer. I myself have asked in three or four
places about proceedings for firmware 1.2.1 and have never received any
answer but instead a warning for posting duplicate questions.
I am now on moderated status and every time I contribute to this forum,
a moderator must make the effort to look into what I write and approve or decline.
Proper community management would have told me to dig out the stubs myself
after the first question, and point me to somebody who might be able and willing
to make me fit for the job.
Yes, your playground, your rules. But I think one could make life easier for
everybody and get more help in coming forward - even for those who are
not too much interested in firmware 1.2.3.
People hear about magic lantern, and whoever buys a 5D Mk3 now will have
1.2.3 on it. The questions will not die, they will grow. Let's work together
to relief the pressure from the kettle.
Some progress. I managed to get a dump off my camera with help from a1ex and I've updated most of the stubs. I still trying to figure a few of them out and I have no idea how long it will take to get the stubs finished, changes tested and stable, but at least there is a clear path forward now.
Good job! Looking forward for a pull request from you!
@chris_overseas - Good luck, I really hope you will make it! :)
I upgraded from MKII to 5DMKIII today just to shoot full HD RAW and then found out the hard way that ML isn't supported with new MK3's at all... Would really like to help but don't know much about coding :/
Quote from: Jerone on January 25, 2014, 06:32:31 PMML isn't supported with new MK3's
Downgrade firmware and they are.
Pull request submitted: https://bitbucket.org/hudson/magic-lantern/pull-request/354/ported-ml-over-to-5d3-firmware-123/
It works but there are still a few bugs. I've submitted the pull request because I don't have the skills to progress it much further, plus I'm not going to be able to work on this for the next week or so anyway. I'm hoping others will be able to do as much testing as possible, and hopefully some of the more knowledgeable devs can help out with the bug fixing. Enjoy!
Quote from: chris_overseas on January 26, 2014, 10:38:05 PM
Pull request submitted: https://bitbucket.org/hudson/magic-lantern/pull-request/354/ported-ml-over-to-5d3-firmware-123/
It works but there are still a few bugs. I've submitted the pull request because I don't have the skills to progress it much further, plus I'm not going to be able to work on this for the next week or so anyway. I'm hoping others will be able to do as much testing as possible, and hopefully some of the more knowledgeable devs can help out with the bug fixing. Enjoy!
I think you should create a new folder 5D3.123
Big thanks to Chris for getting this moving.
Those people interested in running ML on 1.2.3 should checkout the pull request: https://bitbucket.org/hudson/magic-lantern/pull-request/354/ported-ml-over-to-5d3-firmware-123
I'm wanting to test it out, but I have two questions.
From that last link you gave it seems like they had a folder named .123, but they merged or renamed it to .113 and my latest pull from the mercurial repo didn't have a .123 dir. I built the .113 dir just fine, but is that for the 1.2.3 firmware? And second question, what of the built files is the .fir file is it the magiclantern.bin file?
Or what is the file I use to create the .fir file used in the normal installs?
~Phil
If you already have the bootflag enabled.
Format a SD/CF card in camera, install Canon firmware 1.2.3, clone chris_overseas repo: https://bitbucket.org/chris_miller/magic-lantern/overview
Build it just like you would any other 5D3 build.
Leave feedback.
Oh ok, I'll use his repo, thanks, What file is the .fir firmware file? Is it the magiclantern.bin?
I tried looking around a while here on the site and didn't see it.
Well I got that built just fine too, but looking at the makefile there should be a make fir to make the firmware but that doesn't seem to work, I've tried a few other make targets to no avail. ugh, how do you create the firmware?
~Phil
Quote from: Audionut on February 04, 2014, 03:38:22 AM
If you already have the bootflag enabled.
Format a SD/CF card in camera, install Canon firmware 1.2.3, clone chris_overseas repo: https://bitbucket.org/chris_miller/magic-lantern/overview
Build it just like you would any other 5D3 build.
Leave feedback.
You only need the developer firmware from the alpha thread to enable the bootflag (prior to 1.2.3).
I do,
make clean
make 5D3
change to module directory
make
change to platform directory (5D3.123)
make zip
Extract zip and copy contents to card.
Good to go.
One day I'll sort out how to get the VM to pick up the card directly.
That was exactly what I needed, running it right now, seems great so far, focus peaking, exposure zebras, etc working. I'm still pretty new to ML so I'm playing around to see what I can do
~Phil
Question, some of the modules, raw_rec for example, fail to build with this error:
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgcc_s.so when searching for -lgcc_s
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgcc_s.so when searching for -lgcc_s
/usr/bin/ld: cannot find -lgcc_s
collect2: ld returned 1 exit status
make[3]: *** [raw2dng] Error 1
Is this because it wants a 32 bit gcc? Can I not build some of these modules on a 64 bit os?
~Phil
It's not actually the module that is failing to build, it's the converter program raw2dng that is meant to run on your computer and convert the raw files that ML spits out into DNGs. I gues your standard gcc compiler (not the arm cross-compiler) is not setup as expected.
I ended up just coying the modules from the last nightly build.
After more raw playing, I note every time I record raw I get:
Hack error at ff4acd4:
expected e3a0032, got 6e654c2c
Is this a known bug or something related to the new 123 build?
Its still recording raw, but with my slow card I only get a few seconds.
~Phil
Quote from: pompeiisneaks on February 04, 2014, 04:29:03 PM
I ended up just coying the modules from the last nightly build.
This is a really bad idea and you could potentially even damage your camera by doing this. Modules compiled for 1.1.3 are not compatible with 1.2.3. Once the 1.2.3 support is merged into ML outdated module code will be prevented from loading at all, but that safeguard is not yet in place:
https://bitbucket.org/hudson/magic-lantern/pull-request/354/ported-ml-over-to-5d3-firmware-123/activity#comment-1154370
To encourage testing and feedback, here is a 5D3.123 build.
You should already have the bootflag enabled with the development firmware. (http://www.magiclantern.fm/forum/index.php?topic=2602.0) This implies that you are currently running firmware 1.1.3
Format the card on computer
Format the card in camera, to be safe.
Copy Canon 1.2.3 firmware to card
Update camera.
Download build below, extract contents and copy to card.
Test it and leave feedback. No feedback slows the development process.
Quote from: chris_overseas on February 04, 2014, 04:55:47 PM
This is a really bad idea and you could potentially even damage your camera by doing this. Modules compiled for 1.1.3 are not compatible with 1.2.3. Once the 1.2.3 support is merged into ML outdated module code will be prevented from loading at all, but that safeguard is not yet in place:
https://bitbucket.org/hudson/magic-lantern/pull-request/354/ported-ml-over-to-5d3-firmware-123/activity#comment-1154370
Okay then anyone have any ideas why my raw2dng fails to build with the errors I'm seeing? I'll try the build just linked, but I'd love for the modules to build on my dev system.
~Phil
raw2dng isn't the module, raw_rec.mo is.
raw2dng is the windows executable for converting the raw files into DNG frames. You need to fix you gcc/mingw install and make sure you can compile 32bit on your 64bit OS.
This thread (http://www.magiclantern.fm/forum/index.php?topic=8183.0) may be of some help.
I got it figured out. The libgcc.i686 version was missing on my system. Now a ton more build just fine, but I get this error on mvl_dump which means that I can't use the mlv_rec for the new Magic Lantern video format. Any ideas? This def seems more like a C error:
[ GCC ] mlv_dump
[ GCC ] mlv_dump
[ GCC ] mlv_dump
mlv_dump.c: In function 'lua_call_va':
mlv_dump.c:64: warning: unused variable 'verbose'
mlv_dump.c:63: warning: unused variable 'nres'
mlv_dump.c:63: warning: unused variable 'narg'
In file included from ../lv_rec/lv_rec.h:24,
from mlv_dump.c:305:
../../src/raw.h: At top level:
../../src/raw.h:185: warning: declaration does not declare anything
../../src/raw.h:193: warning: declaration does not declare anything
mlv_dump.c: In function 'main':
mlv_dump.c:2025: error: 'struct raw_info' has no member named 'active_area'
mlv_dump.c:2026: error: 'struct raw_info' has no member named 'active_area'
mlv_dump.c:2027: error: 'struct raw_info' has no member named 'jpeg'
mlv_dump.c:2028: error: 'struct raw_info' has no member named 'jpeg'
mlv_dump.c:2034: error: 'struct raw_info' has no member named 'active_area'
mlv_dump.c:2035: error: 'struct raw_info' has no member named 'active_area'
mlv_dump.c:2036: error: 'struct raw_info' has no member named 'jpeg'
mlv_dump.c:2037: error: 'struct raw_info' has no member named 'jpeg'
mlv_dump.c:2555: error: 'struct raw_info' has no member named 'active_area'
mlv_dump.c:2556: error: 'struct raw_info' has no member named 'active_area'
mlv_dump.c:2557: error: 'struct raw_info' has no member named 'active_area'
mlv_dump.c:2558: error: 'struct raw_info' has no member named 'active_area'
make[3]: *** [mlv_dump] Error 1
Any thoughts on this error?
~Phil
Quote from: pompeiisneaks on February 04, 2014, 09:29:09 PM
which means that I can't use the mlv_rec for the new Magic Lantern video format.
The windows binaries very rarely get updated, personally I would just grab the prebuilt binary from the developer.
http://www.magiclantern.fm/forum/index.php?topic=7122.0
If you really want to build it, you probably need to ping g3gg0 on that one.
which would be good except that the other modules don't build when it fails there. I guess this becomes more related to general devel instead of this 123 build though. I'll do as you say and work on the other issues in the general devel forum area.
Thanks,
~Phil
It shouldn't try and build the exe unless you specifically tell it to. If it's dying on the linux build you could try removing it from the mlv makefile.
makefile.modules.default controls which modules get built with make, and each module has it's own makefile.
edit: Turns out we have a sticky in the raw section for linux tools. http://www.magiclantern.fm/forum/index.php?topic=9335.0
g3ggo got me on the right track, centos has old gcc. Getting that resolved.
Thank you guys for this great update,
I am new to ml...
worked with the tragic lantern on my old 600d
I would like to help with debugging... i own a new 5d3 1.2.3 - no ml installed.
how do i install this version of ml on a brand new 5d3?
I must downgarde to 1.1.3 to install the dev version for bootflag and then go back to 1.2.3 and install this version?
Best...
David
Quote from: Audionut on February 04, 2014, 07:02:55 PM
To encourage testing and feedback, here is a 5D3.123 build.
Thank you very much for that.
Quote
You should already have the bootflag enabled with the development firmware. (http://www.magiclantern.fm/forum/index.php?topic=2602.0)
Is there a way to enable the bootflag without downgrading to firmware 1.1.3 before?
Not at this stage, the priority is on getting the port functional rather then making it user friendly to install.
Okay I've played with it a bit more, and gotten my build system working. I've not yet tried my last working build, I'm using the one Chris linked earlier. As was asked earlier, what should be tested? I've tried several of the debug menu stuff like burn in tests and benchmarks and they're all seeming to crash. I can get the logs and bmp if they're needed, but they may also not be the root of what needs testing.
Best thing to do is put everything through it's paces. :)
I've been playing around a bit, and have the logs and bmp from crash screen, where is the preferred landing spot for files? I'll try to see about doing a public dropbox folder in the meantime.
I've had some really odd behavior with MLV raw recording. This is from my own build, it all works, but sometimes the videos are extremely high noise and pinkish. Not sure how to explain it better than that, but I'll get a few screencaps from it as well.
~Phil
Nevermind, I'll just dropbox them.
So here's the scoop. First off I was using some of the burn in and test features and had a few crashes. Here are the logs and BMP screenshots. The two crashes were actually with the build linked here, the odd video behavior is with my build done afterwards.
first crash
https://www.dropbox.com/s/yo7thtsigfcc64f/LOG000.LOG
https://www.dropbox.com/s/9ovokwkiy33axrv/VRAM0.BMP
and here is the second crash
https://www.dropbox.com/s/4o1bt95flngtfa7/LOG001.LOG
https://www.dropbox.com/s/bx3v2luqtmlmw0w/VRAM1.BMP
Also I've got three images, they'll be in order a DNG file saved as png from three video recordings I did with MLV. 1 is 1080p and had horrid colors all messed up. 2 is just fine, right after the first failure, and 3 is at a lower resolution so that I could record to my slower card. It also was all messed up. Is this a known problem? Do I just have something set wrong or?
1080p bad https://www.dropbox.com/s/sekurd8e9mi7h8z/bad1080p.png
1080p good https://www.dropbox.com/s/forj472o66is0qp/good1080p.png
864p bad https://www.dropbox.com/s/ck9rl0lxgypjz0d/bad864.png
This is what I'm seeing as off so far.
otherwise focus peaking, zebras on over exposure, audio levels seem fine. The only other thing that seems odd is sometimes things seem to be fighting for liveview and blink on/off a lot. My focus points in the canon firmware seems to overwrite things if they're blinking and it alternates between the two, maybe normal behavior but I"m new to the ML in a lot of ways.
~Phil
Picking up my Ninja 2 tomorrow. This couldn't have come at a better time. Thanks so much to everyone involved. Bunch of legends! :D
Nobody has any input on if my pics could be a problem with code or are expected? Or should I submit this issue to a new thread about the build specifically?
~Phil
I just want to say thanks for taking the time to put piece together this new version! Very thankful to have such hard workers behind all this. Props
Quote from: pompeiisneaks on February 05, 2014, 07:07:34 PM
Nobody has any input on if my pics could be a problem with code or are expected?
This isn't the only WIP, and I expect this to be one of the lower priorities atm.
Back porting Tragic Lantern to get those ports functional in the ML is a major priority.
ML working alongside hdmi out. Interesting behavior though. With mirroring off (hdmi out only, no liveview), pressing info can bring up a cropped frame with ml overlays ect. But with mirroring on (hdmi out+liveview) it is not possible to get ml overlays on either screen (ml menu asks you to press info to remove canon overlays).
Raw recording works in both modes. With mirroring off, raw recording has no effect on hdmi output!
Just what Ive been waiting for... Imagine raw to card and 1080 25p to Ninja on 1.2.3 :o
Quote from: Grifter on February 07, 2014, 02:11:18 AM
Just what Ive been waiting for... Imagine raw to card and 1080 25p to Ninja on 1.2.3 :o
That's exactly what I'm already doing! ;)
Is it the Full Liveview screen you get onto the Ninja? And the cropped Raw to the CF?
The raw recording appears to have no effect on hdmi feed. I've yet to extract the raw to check it looks ok though. If you were referring to a cropped raw using 5x zoom then no, hdmi receives 5x zoom as well.
Quote from: pompeiisneaks on February 05, 2014, 04:39:17 AM
1 is 1080p and had horrid colors all messed up. 2 is just fine, right after the first failure, and 3 is at a lower resolution so that I could record to my slower card. It also was all messed up.
I've got these artifacts today with silent pictures. Couldn't find a way to reproduce them though.
Good to know I'm not the only one. a1ex, are you using the 1.2.3 build on 5D3 or is this something global?
~Phil
I took thousands of silent pictures back then with 1.1.3 (before raw_rec) and I don't remember seeing them.
Can't tell if it's a quirk in 1.2.3 or something introduced in latest ML code (first I need a way to reproduce them, then I can downgrade to 1.1.3 and try the same thing).
chris_miller corrected RAW_TYPE_ADDRESS 1 hour ago, maybe it will help
Didn't help. I've reproduced it with silent pics in burst mode, and sometimes slit-scan.
Went back to 113, everything clean.
As far I remeber this function removed all bad frames on 60D:
/* get exclusive access to our edmac channels */
edmac_memcpy_res_lock();
Maybe they changed something with edmac ?
Some bad pictures were in slit-scan mode, where I'm not doing any kind of EDMAC trickery. That code works with plain old memcpy from Canon's buffer.
I should probably run some tests without any ML code loaded (from a minimal boot-hack).
Quick question, I recently got my camera back from a clean and check from canon where I specifically asked them not to upgrade my firmware. they complied and left it alone, but when I got it back, I had to reload ML on the camera.
Now since i've reloaded ML the ML card has to always be in the camera or I get:
"Update file error. Please check the memory card and reload the battery and try again"
I've tried putting reenabling the boot flag made my sd card bootable again with no such luck. The reason I discovered was because I was trying to update to 1.2.3
Thanks in advance !
Getting clean hdmi recording and raw recording so far :D Going to do some test with both at once :-\
123 clean HDMI works well with ninja2. Tested crop modes at x5 & x10, they record to ninja cropped while recording raw & MLV, but at a reduced frame size. Would be nice to have timecode active to trigger ninja2 when shutter is pressed. More testing to come.
Corrupted frames fixed hopefully; please test and let me know if it actually works.
http://www.magiclantern.fm/forum/index.php?topic=10443
An updated build. This one comes with the same warranty as the last build.
https://dl.dropboxusercontent.com/u/34113196/ML/Builds/magiclantern-v2.3.NEXT.2014Feb11.5D3123.zip
Quote from: Audionut on February 12, 2014, 10:04:52 AM
An updated build. This one comes with the same warranty as the last build.
https://dl.dropboxusercontent.com/u/34113196/ML/Builds/magiclantern-v2.3.NEXT.2014Feb11.5D3123.zip
Does this build include the pink frame fix Alex recently implemented?
It's compiled to commit 75b8736 (https://bitbucket.org/chris_miller/magic-lantern/commits/all).
Can someone set up a platform entry 5D3_1.2.3 for these new builds in the nightlies?
While making it user friendly takes ressources from development, it also frees
resources through preventing double and triple questions about ML in first place.
Thanks everybody for your great work.
Also: What needs to be done to solve the bootflag problem?
Laying out the problems regarding porting stubs and record restart
helped chris_miller and viciniusatique to contribute.
Maybe a quick word on this could be helpful.
Regards, Michael Quack
Please don't rush it. If you want to provide feedback on the early builds, please do. If not, stay calm.
I know it's a stupid question but how can I download ML repo files and then update it with modifications from pull request "#354: Ported ML over to 5D3 firmware 1.2.3." using hg ?
Probably easier just to build straight from the 1.2.3 repo: https://bitbucket.org/chris_miller/magic-lantern/overview
Quote from: Audionut on February 13, 2014, 10:27:53 AM
Probably easier just to build straight from the 1.2.3 repo: https://bitbucket.org/chris_miller/magic-lantern/overview
I'm not sure if all commits are pushed to this repo, for example latest memory backend..
I've just updated it with the latest bleeding-edge stuff.
However, the memory backend is not as rock-solid as on 60D (it fails at g3gg0's tests after less than a minute).
Quote from: a1ex on February 13, 2014, 11:13:57 AM
I've just updated it with the latest bleeding-edge stuff.
However, the memory backend is not as rock-solid as on 60D (it fails at g3gg0's tests after less than a minute).
thx a1ex
is there any impact to MLV_REC ?
I don't know, you should tell me that ;)
What I know right now is that we have a memory leak with repeated malloc(16MB)/free calls, but the underlying call (_shoot_malloc/_shoot_free) is fine. If you want to help me track it down, you are welcome.
Fixed the leak.
I can test something on new firmware after work. Any suggestions ? :)
Anything that was touched in recent changesets :D
mlv_rec is working, "memory hacks" doesn't cause any issues, no pink frames
i cant find any proper way of getting ML working with 1.2.3... i really appreciate if someone could help me... it seems faster with 1.2.3 and i need to get 30fps continuous working for a project. super thanks!
THANKS a lot ! Audionut.. sorrry > . .. for my lack of attention !
can i replace old modules with the new ones from NIGHTLY BUILDS ?
Reading usually helps (http://www.magiclantern.fm/forum/index.php?topic=9827.msg99668#msg99668).
Most modules need changes to be compatible with 1.2.3. I've included all of the standard modules with my build. Is there a specific module you needed?
raw_rec and mlv_modules
with the latest version I've had no problem using raw and mvl raw recording. I've not tested for long periods of time, but they build fine and run fine on .123.
~Phil
MODULE_CFLAGS += -I../../src/
ML_MODULES_STATIC ?=
ML_MODULES_DYNAMIC ?= raw_rec file_man pic_view ettr dual_iso autoexpo arkanoid silent dot_tune mlv_play mlv_rec mlv_snd
Looks like you are in luck ;)
so yeah noix222 the builds posted here have support for mlv recording and raw recording, you'll need to download them and try, using it for a project may be a bit premature, just a warning, this is very alpha build at this point. If you're making money with this, it may be a bit too sketchy to try it. But you're welcome to give it a go, the more data shown that it works the better.
~Phil
well yeah thanks guys a lot for the answers!!! i did a few tests yesterday.. so the first BUILD magiclantern-v2.3.NEXT.2014Feb04.5D3123... in both of them i just tried RAW_REC and MLV_REC.... with the raw rec the max MB i get is 98... nothing more. MLV the SD is giving me 19mb but the CF comes out 50mb... not as power... it would be really nice if it could pump the 100MB CF to add the 20MB from the SD. The newer build i tested (magiclantern-v2.3.NEXT.2014Feb11.5D3123) didn't work. i dont know why, everythime i press record in RAW mode or MLV more the recording doesn't start....
Created a branch on the main repo for 5D3 1.2.3.
https://bitbucket.org/hudson/magic-lantern/pull-request/394/5d3-123-port-wip/diff
https://bitbucket.org/hudson/magic-lantern/branch/5D3-123
Is it a good way to get a fresh source ?
hg clone -b 5D3-123 https://bitbucket.org/hudson/magic-lantern/
Try this:
hg clone https://bitbucket.org/hudson/magic-lantern/
cd magic-lantern/
hg update 5D3-123
hg merge unified
but you'll get merge conflicts in io_crypt...
5D MIII owner here, and *extremely* happy to hear that some others are getting clean HDMI output whilst recording RAW onto CF cards... the prospect of merging the official features of Canon's 1.2.3 with improved integration and stability of ML is incredibly exciting for me!
I'd love to ask those of you who have acheived simultaneous clean HDMI & RAW recording about the details of the video stream being recorded via HDMI. What device (if any) are you using to record the clean HDMI signal, and is the uncompressed data being encoded to a different format, such as ProRes, prior to saving?
I understand that the HDMI output, whilst "clean" and without any menus overlayed, is only YCbCr 4:2:2 with an 8-bit colour palette, which should make it inferior to the RAW video that ML enables with a full 14-bit colour palette. If the HDMI output at 4:2:2 is saved uncompressed (as it is sent via HDMI with Canon 1.2.3), then it should make for some very interesting comparisons if we can make the same shots with both 4:2:2 8-bit & RAW 14-bit uncompressed files saved concurrently!
Thank you all for your creatively intelligent hacking to port all existing functionality to 1.2.3, and even fixing previously broken features along the way!! Three thumbs up! ;D
An updated build:
https://dl.dropboxusercontent.com/u/34113196/ML/Builds/magiclantern-v2.3.NEXT.2014Feb19.5D3123.zip
Quote
Todo:
Fast zebras
Card format
Bump module API
Installer/uninstaller (bootflag)
?? (test it out and let me know what used to work in 113 and now doesn't)
This build also contains the updated module changes (https://bitbucket.org/hudson/magic-lantern/pull-request/407/module-tags-ratings-wip/diff).
And feedback for that should be left here (http://www.magiclantern.fm/forum/index.php?topic=10537.0).
@alMalsamo
Probably best to wait for the port to be completed before asking about compatibility with devices.
Quote from: a1ex on February 16, 2014, 12:18:41 PM
Try this:
hg clone https://bitbucket.org/hudson/magic-lantern/
cd magic-lantern/
hg update 5D3-123
hg merge unified
but you'll get merge conflicts in io_crypt...
thx, it works (without io_crypt)
merging modules/io_crypt/io_crypt.c
warning: conflicts during merge.
merging modules/io_crypt/io_crypt.c incomplete! (edit conflicts, then use 'hg resolve --mark')
merging src/raw.c
merging src/reboot.c
merging src/tweaks.c
81 files updated, 3 files merged, 43 files removed, 1 files unresolved
Cool. Most other experiments seem to merge cleanly here (right now I'm running 5D3-123 merged with unified, unified-fio and module-tags).
I'm on next training in Prague right now and I'm shooting some night timelapses and ML on 1.2.3 looks stable for me. I'm using only intervalometer and raw histobar in preview after shoots but no errors, hangs etc..
That's a good sign.
I still see the corrupted video frames every now and then (those reported by pompeiisneaks), but much less frequent than before implementing the pink frame fix. Still, if I were to record anything, I don't have confidence to do so without checking the raw preview first.
I've never seen this kind of frames on 1.1.3.
I've been running the 19th Feb build for a few days and used it on a shoot yesterday for product shots.
Camera: 5D mkiii, Cards: KB 64GB 1000x & 1050x.
I shot both raw_rec and mlv_rec both at 1920x1080 25fps (mlv_snd was disabled as no sound was required). I had no problems or pink frames appeared. I had both hacks enabled and got continuous recording mostly, occasionally debug reported recording would last 1000ish frames, but then increased until continuous was reported.
Next I will test mlv_rec with mlv_snd enabled and also card spanning when I get a free day/evening. Great work on the port to 1.2.3 so I can now have a clean HDMI feed to my ext monitor :)
Does that mean we are approaching a new unified that holds both 5D Mk2 and 5D Mk3?
Would be like x-mas, easter and birthday on one day......
Zebra running very slow with this build https://dl.dropboxusercontent.com/u/34113196/ML/Builds/magiclantern-v2.3.NEXT.2014Feb19.5D3123.zip
Canon 5d mark III firmware 1.2.3 tamron 24-70 f/2.8 di vc
Sample and previous versions, is also slowly.
:) I have use the my 550D with ML 1~2 years.
Now I have 5D Mk3 with FW 1.2.3.
I never setup the bootflag and how do I get start?
I want to try this build https://dl.dropboxusercontent.com/u/34113196/ML/Builds/magiclantern-v2.3.NEXT.2014Feb19.5D3123.zip
But seems there is no .flr file and I can't process FW update.
I saw many procedure is assume the bootflag is enabled but can't search out the procedure without bootflag enabled.
I have try using the bootflag http://a1ex.magiclantern.fm/bleeding-edge/5D3/5D3-113-bootflag.fir
Seems it does not work, the screen is block after I choose the FW update and the Card read/write LED is continue on/off with a low frequency.
on........................off..........................on...........................off
Currently the only way is to downgrade to 1.1.3 (Canon says you can't but flashing 1.1.3 over 1.2.3 works fine), then enable the bootflag, then flash back to 1.2.3.
:) Thanks, I will roll back my FW to 1.1.3 and use the build for 1.1.3.
I think I can't roll back FW in the beginning due to Cannon said I can't flash the FW back to 1.1.3
How hard is it for some one who know a bit of asp and java to help build the installer for 1.2.3
I own a 600d with ml and new 5d3 with 1.2.3 and following after this topic from day one.
Didn't installed ml because i don't want to downgrade and upgrade again.
cheers.
Quote from: chris_overseas on March 01, 2014, 06:37:47 PM
Currently the only way is to downgrade to 1.1.3 (Canon says you can't but flashing 1.1.3 over 1.2.3 works fine), then enable the bootflag, then flash back to 1.2.3.
I did this and have ML working...I'm currently on the 2/19 build that was posted a few response back...I'm new to all of this but liking the option to get the most out of the cameras features. Besides this thread is there another place to download current builds to test out as they are available...?
Has anyone had good or bad experiences with using the modules from the 5D3 1.1.3 nightly builds? Or is that a no-no?
Quote from: aliman84 on March 06, 2014, 04:36:09 PM
Has anyone had good or bad experiences with using the modules from the 5D3 1.1.3 nightly builds? Or is that a no-no?
1.1.3 modules don't work with 1.2.3.
Quote from: jpaana on March 06, 2014, 04:37:45 PM
1.1.3 modules don't work with 1.2.3.
Thanks, I won't be trying that today then :)
I just tested the Feb. 19 build cause I am preparing a short film that's supposed to be shot this weekend. I would like to record a backup to a recorder via HDMI to be extra save.
The whole plot takes place inside a car and we want to mount the camera outside the car and remotely trigger start stop with a wireless photo trigger. To monitor if the camera is actually recording or if it has stopped cause of skipped frames i wanted to put a long cable into the headphone jack and listen to the start stop beep with headphones because the cameras lcd is out of sight. Unfortunatly there is no beep anymore with the feb. 19 build that i tried. Can someone help me on this?
Quote from: Steven on March 06, 2014, 05:15:06 PM
Can someone help me on this?
RAW_REC still has the beep but no Audio.
I've got this up and running on my 5D mkIII with an Atomos Ninja 2 and I've had great success so far - thanks very much for all this.
The only thing that doesn't work for me is when I mirror the screen to HDMI so I have clean HDMI and overlays on the back of the 5D, global draw doesn't seem to work.
I cycle through all the options using the INFO button but whenever I go into ML and try to turn GD on I get the 'Press Info to get rid of Canon menus' message.
Quote from: alfo on March 08, 2014, 04:36:43 PM
I've got this up and running on my 5D mkIII with an Atomos Ninja 2 and I've had great success so far - thanks very much for all this.
The only thing that doesn't work for me is when I mirror the screen to HDMI so I have clean HDMI and overlays on the back of the 5D, global draw doesn't seem to work.
I cycle through all the options using the INFO button but whenever I go into ML and try to turn GD on I get the 'Press Info to get rid of Canon menus' message.
I'm testing 5D3 1.2.3 with lilliput external screen and I've got the same issue, something is blocking global draw. I think something should be corrected in zebra.c
#ifdef CONFIG_5D3
if (hdmi_code==5 && video_mode_resolution>0) // unusual VRAM parameters
MENU_SET_WARNING(MENU_WARN_NOT_WORKING, "Not compatible with HDMI 50p/60p.");
#endif
if (lv && lv_disp_mode && ZEBRAS_IN_LIVEVIEW)
MENU_SET_WARNING(MENU_WARN_NOT_WORKING, "Press " INFO_BTN_NAME " (outside ML menu) to turn Canon displays off.");
if (global_draw && lv && !ZEBRAS_IN_LIVEVIEW)
{
MENU_SET_ENABLED(0);
}
if (global_draw && !lv && !ZEBRAS_IN_QUICKREVIEW)
{
MENU_SET_ENABLED(0);
}
The issue is a little more complex: ML overlays were simply not designed for dual screen output.
At this stage, if you can document all the HDMI issues so I can get a bigger picture, would be helpful. Right now, I think a simple graceful fallback would be enough; anything more than that would likely need either ugly hacks or major redesign of the graphics backend.
Quote from: a1ex on March 12, 2014, 03:48:04 PM
The issue is a little more complex: ML overlays were simply not designed for dual screen output.
At this stage, if you can document all the HDMI issues so I can get a bigger picture, would be helpful. Right now, I think a simple graceful fallback would be enough; anything more than that would likely need either ugly hacks or major redesign of the graphics backend.
ok, we've got 2 possible scenarios:
1. HDMI mirroring (Canon LCD and external monitor turned on)
External monitor shows clean video display without any zebras, canon menus etc. Canon internal LCD works in standard mode (menus, options, live view etc). In this mode ML overlays should be visible only on Canon internal LCD so redesign is not required... but unfortunately global draw can't be enabled.
if (lv && lv_disp_mode && ZEBRAS_IN_LIVEVIEW)
MENU_SET_WARNING(MENU_WARN_NOT_WORKING, "Press " INFO_BTN_NAME " (outside ML menu) to turn Canon displays off.");
2. No mirroring.
Canon LCD is disabled.
External monitor works like a internal LCD.
External monitor has usually 16:9 display, internal - 3:2. ML overlays are centered on the screen because of design prepared for 3:2 display.
https://www.dropbox.com/s/nqkyf2afdnknp39/2014-03-12%2016.36.31.jpg
1. check lv_disp_mode in PROP_HOUTPUT_TYPE (propvalues.c); should be 0 when Canon overlays are disabled. You may also want to fake ext_monitor_hdmi so ML thinks there's no external monitor connected (which is not very nice if you ask me).
2. here, firmware 1.2.3 no longer behaves like all other Canon cameras.
I want to try 1.2.3, can someone provide me the last - or best - build?
any suggestion? :P
When mirroring is enabled LV_DISP_MODE is set to 2.
Major progress: 5D3 ML can now restore itself after formatting the card. Grab your compilers and test it out!
https://bitbucket.org/hudson/magic-lantern/commits/b1296f05fb56
The stub for this feature was quite different from the other cameras (besides the UI quirks on the dual slot, which were easy to sort out). Chris_overseas assisted me in finding cf_device, and we plan to do a writeup of the process as a small reverse engineering tutorial (that is, some ideas about what to do when stubs can no longer be found by pattern matching).
If you are wondering: this line of code took me 3 hours of digging in Canon firmware (times reconstructed from chat logs)
+NSTUB( 0x36184, cf_device_ptr) // cf_device is at MEM(MEM(0x36184) + 0x10)
(all the other code + hunting stupid typos + testing all the card combinations took 1.5 hours)
Any volunteers to try this while it's really hot? (PM me; 1.2.3 only)
(http://a1ex.magiclantern.fm/bleeding-edge/new-installer.png)
I have a wedding shoot tomorrow, otherwise I would be all over it.
Free to brake my camera Monday, if there are no other volunteers. :P
Quote from: a1ex on March 15, 2014, 04:25:55 PM
Any volunteers to try this while it's really hot? (PM me; 1.2.3 only)
(http://a1ex.magiclantern.fm/bleeding-edge/new-installer.png)
Looks promising,
does it mean we are closer to have ml install straight on the 1.2.3?
Yes, I've asked for volunteers to test exactly that (install+uninstall on 1.2.3).
Quote from: a1ex on March 15, 2014, 04:36:17 PM
Yes, I've asked for volunteers to test exactly that (install+uninstall on 1.2.3).
I have a brand new 5d3 1.2.3 clean without ml.
I cant compile on my mac
if you or some one else will upload a compiled version i will be happy to volunteer.
Check nightly builds.
If it works, I'll announce it today or tomorrow (with install details & stuff).
Quote from: a1ex on March 15, 2014, 06:24:49 PM
Check nightly builds.
If it works, I'll announce it today or tomorrow (with install details & stuff).
Just download and installed
working!
on the first startup it took some time and the led was allways on.
i shot it down, took the battery out and restarted, working!
it also did some sd card test.
installed again on some other card
again, working good.
on first run it does an sd check, works o.k
modules etter dual iso mlv rec file manager working o.k
mlv snd o.k
recording o.k
a1ext you are a king!
big thanks to chris!
format card restore ml :) working.
checked rushes on my mac include dual iso and ettr - looks good.
This is epic!
Thanks for all the hard work guys!!!!! 8)
Ooooooooo, My boot flag disabled.......
Nice work guys, wow. Amazing!
I got my MIII 2 weeks ago, and have been rolling along with this tread, using the 1.2.3 ONLY the entire time.
This is amazing work, thanks to you guys for what you do.
I have disabled boot-flag, and re-enabled it, and am using the current nightly build.
This build is however giving me problems in both RAW and MLV recording. I lose frame real early, was using the previous one (from dropbox above) since it was posted with no issues.
Any one else? Any thoughts? I'm too new to really know where to go first, this thing worked right from the start last time. ha
My quick speed test: raw_rec 1920x1080, 30fps, all hacks enabled, 103-104 MB/s, green icon (yellow for short periods), continuous recording estimated (I only recorded a few minutes).
=> there's nothing wrong with the build; double-check your settings.
Installed to/from CF, seems to work without any issues.
Didn't test RAW, though, my cards are all too slow.
But all the other features I've missed so badly for such a
long time with 1.2.3 are there.
FULL BLISS!
Think I need to go for a fast CF on Monday.
I'm already in heaven. Now a unified version for both
5D Mk2 *and* 5D Mk3 and I'll never need to worry
which card holds which version of ML again.
Thank you, thank you, thank you!
Edit: Installing with a 3rd party battery that asks for
permission works if you don't try to acknowledge using
the battery.
So, is it possible to disable the bootflag on all 5DIIIs now if you update to 1.2.3?
Quote from: Steven on March 16, 2014, 12:43:27 AM
So, is it possible to disable the bootflag on all 5DIIIs now if you update to 1.2.3?
yes it is
Quote from: a1ex on March 15, 2014, 09:55:36 PM
My quick speed test: raw_rec 1920x1080, 30fps, all hacks enabled, 103-104 MB/s, green icon (yellow for short periods), continuous recording estimated (I only recorded a few minutes).
=> there's nothing wrong with the build; double-check your settings.
I am using the 1000x KompBay card, I left that out.
And yes sir, I am positive it is me, not the build. Just don't know where to start fishing through the settings.
And with all the work you do, I feel bad that you replied. :)
Great work, and thanks man!
what i did...
coming from a 1.1.3 (mar 08 build)
Downloaded the 1.2.3 nightly from http://builds.magiclantern.fm/#/
copied all and pasted to sd card, the camera doesn't start
so i went to canon's website and downloaded the 1.2.3 firmware placed the .fir in the sd card with the old 1.1.3 ml.
camera starts and updated to 1.2.3.. camera won't start with sd card inside, works normally without sd card.
copied bleeding edge items over to sd card.
camera starts
update using the .fir provided (the 40kb one)
``````````````````````````````````````````````````````````````````````````````
for anyone who wants to try i guess this is some rough instructions. follow at own risk
1. download the canon 1.2.3 update fir from the official website http://www.usa.canon.com/cusa/professional/products/professional_cameras/digital_slr_cameras/eos_5d_mark_iii#DriversAndSoftware
2. place the 5D300123.fir in to the sd/card that still contains the 1.1.3 ml
3. use canon's menu to update from 1.1.3 to 1.2.3 - ensure u have enough battery. this takes about 2-3 mins
4. the camera won't start once done, remove battery and wipe card.
5. download the nightly (link above) and place them on the card.
6. the camera should start now and use canon's menu again to update using a1ex's 5D3_123.fir
7. you should get this screen
(http://a1ex.magiclantern.fm/bleeding-edge/new-installer.png)
8. you're done!
(http://snip.so/VtQB.png)
camera works perfectly now..gonna test the functions
while recording mlv, pressing canon's menu button brings up canon's menu (which is expected) but pressing the menu button again gives me a black screen and the camera just stays that way.. anyone has this too?
I am very new for ML of 5D3. just test the newest build, and it works. bootflag can be removed as what I did with 5D2.
Everything works fine. I can continuously record with RAW-REC module(almost). (but same as old 1.1.3 build, MLV can only record for ~1200 frames, ~4.0X GB only. I think this is my CF problem, I am using a Transcend 1000X 64GB CF.)
Happy to see this happen. I can switch different mode what I want to.
Thanks A1ex.
I was having some trouble getting this working coming from the older 1.2.3 ML. I format/uninstalled ML then loaded 1.2.3ML .fir but camera wouldn't recognise it. After going to 1.2.3 and back with no luck, finally i renamed from 5D3_123.fir to 5D300123.FIR and the camera recognises the new .fir and loads as it should. I'm 99% sure I didn't need to do all that other stuff, so for anyone already running 1.2.3 ML the update process SHOULD be as follows:
-format>remove ML
-wipe card
-load latest ml onto card and rename 5D3_123.fir to 5D300123.FIR
-firmware update
-wait for bootflag removal if you like
Apart from that all working well. Also I did not experience any camera boot issues that nigel did coming from 1.1.3.
Alex, sir, you are a scholar and a gentleman. :)
Just tested and working like a charm.
Thanks Alex!
Worked fine here no need to rename or mess with anything. Also no hanging or boot issues. Simple and clean.
Remove card with ML for 1.1.3
Format in computer to remove Bootdisk.
Use EOSCard to verify that the Bootdisk has been removed.
Load Canon 1.2.3 and update in camera when complete shutdown/restart to verify 1.2.3 has been loaded. Shut down and remove card.
In computer remove Canon firmware or format again.
Use EOSCard to set BootDisk and EOS-Develop.
Extract ML 1.2.3 and copy over to card.
Load card in camera and power on... now running ML 1.2.3.
Follow at your own risk.... but for me no renaming and no hangups or boot issues.
Thanks for early testing; please continue the discussion here:
Magic Lantern for 5D Mark III 1.2.3 (http://www.magiclantern.fm/forum/index.php?topic=11017)