Canon 760D / T6s

Started by SwaroopB, October 22, 2015, 02:48:25 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

SwaroopB

Hello, Everyone!

<Story>
This is my first post on Magic Lantern forums! I am using CHDK since early 2009 on my PowerShot cameras and as I knew my next camera would be an EOS, Magic Lantern had to The Place to go. After trying it on a friend's EOS M, I was speechless about how awesome ML really is! Hats off to all the devs!

But the camera of my choice was: brand new Canon EOS 760D / Rebel T6s. Knowingly, ML didn't exist for T6s. I was first reluctant to buy the camera for the same reason! Then after a long thought, I bought the camera just last week and really loving it! :)
</Story>

Coming to back to ML: I am interested in helping to port Magic Lantern to 760D / T6s. I don't have a previous experience of porting any firmware, but I bear decent knowledge of C, C++ and microcontroller programming. I work with Windows Graphics Drivers for my bread n' butter.

What I have been through so far:

  • Made an account on bitbucket.org and forked the ML repository
  • Downloaded the Linux VM with pre-built toolchain (thanks, nanomad!) for Magic Lantern development and able to boot in it via VirtualBox
  • Downloaded source code inside the VM
  • Tweaked (commented out, to be frank) the code that caused build-errors and built the .bin files for all individual models
  • I have PM'd a1ex asking for help in providing Firmware Dumping Utility for 760D/T6s. I am waiting for his reply. If anyone can ping him or get any other help here, that would be really great! (Pardon for being a bit immature here)

Posts that I am reading up for gaining relevant information:

My immediate next plans (please correct me if I am doing wrong):

  • Get the Firmware Dumper from senior devs and dump the firmware
  • Disassemble the dump
  • Analyse the disassembly to find function stubs
  • Read up ML source code in parallel
  • A lot more stuff unknown to me as of now! :D

I am yet to understand how much of a code change there will be for 760D (as a jump from 700D/T5i) since the DIGIC series has gone a step ahead. I will be open to discuss this from the Day 1.

Is there anything I could do with current code till the time I get the firmware dumped? Could any of you share other camera firmware dumps and I could try booting it on QEMU and put ML on it? (I am real newbie here and might be completely saying wrong things!)

I am hoping to drive this well as my first colaborative project and will be extremely thankful for any kind of help!

Cheers!

Warm Regards,
SwaroopB.

P.S. I was not able to create a thread under Camera-specific discussion board somehow, so creating a thread here. Admins may move the thread to the appropriate board.

SwaroopB

Reserving for future use and self-notes!

Walter Schulz

Kudos for jumping in and best wishes!

No offence, but please don't ask other people to ping a1ex on your behalf. If he has time to offer help he will be there, I'm pretty sure.

SwaroopB

Thanks for the response, Walter!
Sure, I will wait for him! :)

Pardon for being a bit immature there, I realise that now.

nikfreak

Welcome SwaroopB!

Time's rare these days but +1 on what Walter said: a1ex will be here to help once he finds some free time for this topic. You might also try to catch him on IRC.
I am looking forward to some DIGIC6 love.
[size=8pt]70D.112 & 100D.101[/size]

DeafEyeJedi

Welcome aboard @SwaroopB and trust me he'll come when he comes.

Keep it up and DIGIC6 deserves some ML love one way or another.

[emoji106]
5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109

SwaroopB

Thank you, @DeafEyeJedi and @nikfreak! Glad to read both of your responses!
I'll try to catch up with a1ex on IRC. Meanwhile, brushing up some assembly and reverse engineering skills and would plan to keep an eye on 7DMk2 development as well. DIGIC6 indeed needs ML-support to show what really it is capable of!

Walter Schulz

About ML's IRC on freenode: a1ex' account is always online and therefore no indication if he (as a person) is actually in or not.

SwaroopB

Thanks a lot for the heads-up, @Walter Schulz! I will update as I get more inputs. :)

PaulHarwood856

     Correct me if I'm wrong, but I believe Canon now makes firmware unhackable for the newer DSLRs such as the Rebel T6i, T6s, 7D Mark II, 5D Mark IV and 5DS R. I watched a video on Youtube by Art of the Image explaining this: https://www.youtube.com/watch?v=hf0unRdBTWc

     I hope i'm wrong!

Walter Schulz

Don't listen to BS. I stopped viewing after 0:58.
I made a remark about the 5D3 1.3.3 issue some time ago and saw BS comments going wild all over the internet after.

nikfreak

Topic: Asked Pelican a while ago if we could see an update to ARMu regarding armv6 support as digic6 dumps would require it for porting but it looks like we won't see an update any time soon. ARMu was and still is very helpful for porting.

So @SwaroopB you should familarize yourself with some disassemblers and if one of you knows a similar lightweight visual disassembler / debugger supporting armv6(+) lemme know about it.
[size=8pt]70D.112 & 100D.101[/size]

SwaroopB

@PaulHarwood856, I had seen this video quite some time ago (when I was first searching for ML+T6s) and it didn't seem highly reliable to me (he didn't give any proper and technical references of why he was so sure about "Canon blocking ML"). Just a rumour IMO. @Walter Schulz, I too had stopped watching it within a minute back then!

@nikfreak, I was just going through ARMu and Decompiling info by a1ex until I just realised about armv6 compatibility! :(

I will search for a visual debugger with armv6+ support. Currently, I don't know any.

Just dumping a couple of links from a quick blatant Google Search for anyone interested:

I will certainly investigate further about this and update during weekend or so.

Walter Schulz

If I my memory doesn't trick me there was some kind of crowdfunding (inside this forum) to purchase one or more IDA license/s in summer/autumn 2012. G3gg0 knows the details for sure.
EDIT: Found it -> http://www.magiclantern.fm/forum/index.php?topic=3974.msg21748#msg21748

SwaroopB

You guys bought IDA licenses with crowdfunding? That is simply amazing to hear! The community is just awesome!
Sorry, I have never used IDA so far (and am pretty much a newbie in actual Reverse Engineering) but my today's research does tell me that IDA is a pretty big of a deal (and very expensive as well).

I will throw my hands on some basic disassemblers and get familiarized as suggested by nikfreak. Let's see how we can drive this. :)

PaulHarwood856

Ok I understand. Yeah I hope it's not true, but I had been wondering this regardless of the video posted by Art of the Image. I know with the new Canon 1D series Canon threatened to sue Magic Lantern, and Magic Lantern respected why Canon was being protective of their sails and said they won't touch the camera. This just made me wonder about Canon and if they were going to try to block Magic Lantern being paranoid or something. This whole concept has been boggling my mind for quite a bit, glad to hear some answers. There's still hope!

Walter Schulz

Please try to tell what you might heared, your interpretion of that and facts.
Fact: Devs decided some time ago not to touch Canon's pro gear.
Something I heard/read: Canon gave some hints they won't tolerate messing up with their pro gear software.
I'm completely unable to put that in order in respect of time scale and even less able to determine cause and effect (if any).
I'm completely unable to find a source where Canon (or an employee) threatened ML team directly.
Fact: Canon never made any official comment on ML. There are some comments on ML by employees but they don't "say" anything. Very diplomatic.

AFAIK (= personal opinion) devs are convinced there are technical ways to make development much more difficult and it might be quite easy for Canon to do that. Didn't happen. And of course there are lawyers. And letting them loose will have serious consequences. Didn't happen.

And we're completely off-topic.

axelcine

Hi, SwaroopB -

ML seems to stem from a bunch of very fine people - A1ex for his good, sincere and honest advice (and I'm sure he'll see this thread and react as soon as he gets a chance), Walter who keeps me in stitches with his dry humor, and he's always spot on!... I could go on. Fine people, all of you devs, testers and users. Welcome SwaroopB.

I got my T6s this summer as a supplement to my T5i (with ML), but after reading Felipe's assessment of T6s
http://www.magiclantern.fm/forum/index.php?topic=14866.msg144180#msg144180
http://www.magiclantern.fm/forum/index.php?topic=14866.msg149458#msg149458
I had sort of given up on the T6s. Logic dictates, that the devs work only on cameras, that can deliver the output, that makes ML worthwhile. And T6s  has the same issues with audio as it's predecessors.

I'm - slowly - working on a documentation of ML/T5i (and probably the rest of the Rebel series; they seem to mostly look alike but differ somewhat from 5d/6d/7d/50/60 etc. Please correct me if I'm wrong.) Documenting ML/T6s is going to be interesting.

Good luck. Understanding the innards of a modern camera and getting it to work with some terrific and magic software must be totally fascinating.

I haven't heard anyone from Canon express disrespect of ML. In Denmark the cam vendors I have met feel, that ML helps them sell more cams. :)
EOS RP, 5dIII.113/Batt.grip, 5dIII.123, 700d/Batt.Grip/VF4 viewfinder + a truckload of new and older Canon L, Sigma and Tamron glass

Walter Schulz

Thanks, learned 2 ideoms unknown to me before.

Quote from: axelcine on October 23, 2015, 08:53:34 PM
Logic dictates, that the devs work only on cameras, that can deliver the output, that makes ML worthwhile.

And according to http://www.cameramemoryspeed.com/canon-t6s-t6i/sd-card-comparison/ they are the first Canon consumer cams able to take full advantage of UHS-I cards.
Twice the data rate delivered by predecessors with SD-card interface. About on par with 50D/7D write performance to CF.

Seems to be quite able to deliver decent resolution/frame rates in RAW/MLV crop mode. Sound is always under dispute. In the left corner: Sound-in-cam-is-just-worth-crap vs. right corner ...

To put it together: Could be fun worth taking the effort. IMO.


SwaroopB

@axelcine, Thanks for the warm welcome! :)
I had read that post long back and I was, to be frank, very disappointed. I regularly Googled "T6s + ML" to see if anything good comes up. It never did. :( ...
...until now, I'll say! I am hopeful that we should be able to bring ML on T6s with proper time and efforts put together!

@Walter Schulz, knowing about the Read/Write speeds of T6s was a good input.
Completely haphazard statement: People are cursing the current video codec of T6s for outputting lower bitrate of data. But if tweaked properly in ML and accompanied by the good R/W speeds of the hardware, it could possibly be a boon! Kindly correct me, if I am horribly wrong.

Topic: I am currently going through IDA basics and planning for other disassemblers as well. I have got dumps of some PowerShot (P&S) cameras including SX60 HS and my own A1200 (SX60 has DIGIC6). Disassembling and analyzing those should give me some pointers on how to proceed. CHDK is yet to be ported to SX60 and their SX280-specific and general DIGIC6-related thread seems kind of active. But it overall appears that DIGIC6 is an unexplored territory yet and would need quite a decent amount of work!

donjames150

To add my 2 cents to this thread, I've had ML on a T4i and on a 7D, both of which I've sold and now have a T6S/760D which I am finding superior to both cameras. I'm not finding the video degradation that some expect with it's lowered bitrate. And to me, it seems like the dynamic range is definitely improved. The HDR video mode is a nice add, but is only really noticeable outdoors. It is non-adjustable and this is one place where having ML would really help so that the ISOs could be adjusted. I definitely pitched in to help with the development (to my abilities) of the T4i ML and will do what I can to write code and/or test and document development of ML for the t6s. Keep up the good work, all you ML contributors  :)
EOS 760D + 55-250mm + Tokina 11-16mm

Mwil

Hey, I just picked up a T6s, I wanted to pick up a t5i so i could use ML such as filming with 2.31 guide box on it, and zebra focus, but i got a great black friday deal and some of the advantages were great enough.

Any way, I don't code, though i did start on a computer science degree and took 2 classes of C++ before switching majors, but I am up to help ANYWAY i can including testing if you can ever get that far. if you need anything I could help with being just a techy guy with a camera and no dev knowledge just ping me and i'll help.

kevinswan007

I would love if ML were to be developed for this camera.
If there is anything I can do to help with this, please let me know (I have the 760D)

This camera is fantastic, but having ML would just take it to the next level.

nambuco

I am also a T6s owner and will support ML development for this camera whatever I can.

I use to work with firmware for automotive parts and have programing experience in other areas.

Canon T6s / Sony NEX 5T

Walter Schulz

Sounds good!
Each port needs someone called a maintainer who will take lead in supporting this cam. Long time support, that is. And it will cost (est.) some hundred hours to port it.
If you're still with us take a look into http://www.magiclantern.fm/forum/index.php?board=25.0 first (most of them sticky threads) and try to take initial steps. Still there?

If so it might be about time to contact dev team. You don't have to do all the work alone. Most of it, yes. But there are some steps you (most likely) can't do without their support and assistance.