Author Topic: Canon 5D Mark IV  (Read 300289 times)

thekreative

  • New to the forum
  • *
  • Posts: 3
Re: Canon 5D Mark IV
« Reply #400 on: January 01, 2019, 04:25:11 AM »
a1ex thanks for all your work and have a happy New Year...... Time to get testing.

Danne

  • Contributor
  • Hero Member
  • *****
  • Posts: 6023
Re: Canon 5D Mark IV
« Reply #401 on: January 01, 2019, 04:42:31 AM »
Very nice indeed!

zerocool22

  • New to the forum
  • *
  • Posts: 29
Re: Canon 5D Mark IV
« Reply #402 on: January 02, 2019, 06:49:02 PM »
Thanks guys! Happy NY!!!

banertop

  • Freshman
  • **
  • Posts: 65
Re: Canon 5D Mark IV
« Reply #403 on: January 03, 2019, 12:47:47 AM »
good work guys! Again!

ThingsChange

  • New to the forum
  • *
  • Posts: 2
Re: Canon 5D Mark IV
« Reply #404 on: January 05, 2019, 08:17:53 AM »
Joined the forum just to thank a1ex and the other testers/coders for their great work.  Thanks everyone and happy new year!

The_Aussie_Photoguy

  • Just arrived
  • *
  • Posts: 1
Re: Canon 5D Mark IV
« Reply #405 on: January 11, 2019, 01:14:42 AM »
Just joined the forum officially after many years of use.

I was hoping the 5d Mkiv kit would be out, I already miss ML on it after my upgrade.

The features you guys are developing will really make this camera an absolute beast. I am looking forward to seeing it upon completion.
Unfortunately I don't have the paycheck to offer my Mkiv up. But once there is a semi stable build happy to provide as much feedback as possible.

Keep up the solid work team!

djfr971

  • Just arrived
  • *
  • Posts: 1
Re: Canon 5D Mark IV
« Reply #406 on: January 12, 2019, 12:28:32 AM »
Hello guys! Happy New year! Thanks for this wonderful news. I’ve already installed it on my 60D with the classic method but I would like to know if someone has successfully installed it on the 5D mack4. If someone did and it’s working properly. Sorry for those stupides questions!
Thank you .

Seanc

  • New to the forum
  • *
  • Posts: 8
Re: Canon 5D Mark IV
« Reply #407 on: January 19, 2019, 10:45:29 AM »
I’ve already installed it on my 60D with the classic method but I would like to know if someone has successfully installed it on the 5D mack4.
Not even close. This is only the first step on the path to being able to begin work, though a very important one.

Thanks A1ex!

a1ex

  • Administrator
  • Hero Member
  • *****
  • Posts: 12322
  • Emergencies only
Re: Canon 5D Mark IV
« Reply #408 on: January 27, 2019, 11:44:03 PM »
The latest 80D experiment can be also ran on 5D4 1.0.4, without any changes.

That was just FYI, as I don't have high hopes anyone is going to run the test on this camera. The previous tests were a lot easier to run, but nobody tried them yet, to my knowledge.

Edit: the experiment was successful on 80D.

robotron

  • Just arrived
  • *
  • Posts: 1
Re: Canon 5D Mark IV
« Reply #409 on: January 28, 2019, 02:03:28 PM »
Hi there,

this is my first post here, but I've been following both the 80D and the 5D IV threads for a little while now, since I just upgraded from an 80D to a 5D IV.
I'm a computer science student and am willing to spend some time on this, and think I could help a little bit. My 5D IV runs v1.1.2, so I'll start by updating the codebase to the new version.
However, I've got finals coming up in a few weeks and won't be able to work on this until late February.

Hope I'll be able to help!

rinski

  • New to the forum
  • *
  • Posts: 36
Re: Canon 5D Mark IV
« Reply #410 on: January 28, 2019, 03:41:05 PM »
Hello, for little more than 1000 dollars you can buy a 5d4 second hand for testing, should not disappear the hopes of a raw video better than the 5d3 has.
Thank you.

rinski

  • New to the forum
  • *
  • Posts: 36
Re: Canon 5D Mark IV
« Reply #411 on: January 28, 2019, 04:24:43 PM »
live magic latern free

zerocool22

  • New to the forum
  • *
  • Posts: 29
Re: Canon 5D Mark IV
« Reply #412 on: January 29, 2019, 02:50:44 PM »
Hello, for little more than 1000 dollars you can buy a 5d4 second hand for testing, should not disappear the hopes of a raw video better than the 5d3 has.
Thank you.
Over here they are still going around 1800€'s.

zerocool22

  • New to the forum
  • *
  • Posts: 29
Re: Canon 5D Mark IV
« Reply #413 on: January 29, 2019, 02:50:55 PM »
Hi there,

this is my first post here, but I've been following both the 80D and the 5D IV threads for a little while now, since I just upgraded from an 80D to a 5D IV.
I'm a computer science student and am willing to spend some time on this, and think I could help a little bit. My 5D IV runs v1.1.2, so I'll start by updating the codebase to the new version.
However, I've got finals coming up in a few weeks and won't be able to work on this until late February.

Hope I'll be able to help!
Awesome news! Having big hopes on you robotron!

Walter Schulz

  • Contributor
  • Hero Member
  • *****
  • Posts: 6902
Re: Canon 5D Mark IV
« Reply #414 on: January 29, 2019, 02:58:24 PM »
Over here they are still going around 1800€'s.

Please do not feed the trolls.
Photogs and videographers: Assist in proof reading upcoming in-camera help!. Your input is wanted and needed!

KelvinK

  • Senior
  • ****
  • Posts: 267
  • Less words, more films
Re: Canon 5D Mark IV
« Reply #415 on: February 04, 2019, 02:49:13 PM »
Hi there,

this is my first post here, but I've been following both the 80D and the 5D IV threads for a little while now, since I just upgraded from an 80D to a 5D IV.
I'm a computer science student and am willing to spend some time on this, and think I could help a little bit. My 5D IV runs v1.1.2, so I'll start by updating the codebase to the new version.
However, I've got finals coming up in a few weeks and won't be able to work on this until late February.

Hope I'll be able to help!

Just do not fade out as previous ppl! Also take a look in 80D thread, there's an actual progress.
6D - 5D - NEX - M50!

legreve

  • New to the forum
  • *
  • Posts: 27
Re: Canon 5D Mark IV
« Reply #416 on: February 12, 2019, 08:33:56 AM »
How big of a chance is there to brick the camera if experimenting with the firmware and code?

a1ex

  • Administrator
  • Hero Member
  • *****
  • Posts: 12322
  • Emergencies only
Re: Canon 5D Mark IV
« Reply #417 on: February 12, 2019, 10:17:15 AM »
It very much depends on what you are trying to do.

The code sequences suggested in reply #397 should be quite safe. Logging code was already tested on 5D4 (an earlier version, not the latest codebase), so it should be OK, too. Other code sequences (e.g. found in 80D thread) should be OK as long as they don't use hardcoded pointers. If in doubt, ask.

In particular, stay away from EraseSectorOfRom and similar (I'm pretty sure you will), don't attempt to change properties yet (the proof of concept code doesn't include any backend for that) and try not to overwrite Canon's data structures (double-check any pointers you use for writing). Canon firmware saves some of their settings at shutdown by reflashing the main ROM, so you'll want to be extra careful not to overwrite their data structures.

If something goes really wrong, you have the boot flag enabled, so you will still be able to run diagnostic code on the camera (unless you somehow manage to erase the bootloader... extremely unlikely). From there, I can inspect the (non-booting) ROM, debug it in QEMU, reflash it with a good copy and so on. I did that on some other models (recently on 5D3 and 70D), but... let's hope we'll never get there. Worst case: JTAG and UART (I've never tried these on physical hardware).

A while ago I wrote a short guide on safety, that I should update.

On 80D, I have used some hardcoded pointers (such as 0x30000000, 0x28000000 and so on). Do not use them; they are not valid on any other camera. Rather, follow the source code comments and run the test code to find out what memory areas appear to be free on your camera, and use those instead. In any case, these pointers are well above DryOS and general-purpose memory buffers; these are managed by RscMgr and used for things like image capture, processing, LiveView and others. I highly doubt writing into these by mistake could result in permanent camera damage, but I still prefer to triple-check before using them.

Writing into the display buffer is safe (and hopefully that's all you need for a Hello World), but first you need to know its address. It's not going to be the same as on 80D (or other models). This can be found either from a RAM dump (there are tutorials around the 'net), or from diagnostic logs. The MMIO registers are also different, so what worked on 80D is going to require some (hopefully minor) changes.

To summarize, the next steps are:
- try the code sequences from reply #397 [easy]
- get a RAM dump and identify the image buffers [easy]
- you can attempt to print things on the screen at this stage, but I prefer to know what I'm doing, so...
- run this experiment to find possibly unused memory areas (this was linked in reply #408)
- update log-d6.c and io_trace.c with the hardcoded memory buffers found at previous step
- enable LOG_EARLY_STARTUP in log-d6.h
- also enable io_trace (see 80D Makefile)
- this will give you a fairly complete startup log (debug messages + interrupts + MPU messages + MMIO activity)
- from this log, we will be able to see how the display buffer is configured (for Hello World) and many other details that will be useful later.
- Hello World!
- afterwards, getting an initial ML port (with basic functionality) should be relatively straightforward.

Ford1080

  • Just arrived
  • *
  • Posts: 1
Re: Canon 5D Mark IV
« Reply #418 on: February 15, 2019, 07:34:53 AM »
I used ML on 7D, now have 5Div.  I would love to help but I have no idea what I’m doing with any of the coding stuff - and have no time right now.

I’ll be watching this thread tho and I if find the time to figure out various tasks, I’ll do whatever.

Thank you guys!!!!!   Especially A1ex and g3ggo.  Thanks for your work on 7D!!

chris_overseas

  • Moderators
  • Member
  • *****
  • Posts: 222
Re: Canon 5D Mark IV
« Reply #419 on: February 17, 2019, 12:12:37 PM »
I finally found some time to update the rest of the stubs for 1.1.2. I've hit a problem getting further though.

Please find the FIR to enable the boot flag on the 5D Mark IV:

BOOTF5D4.FIR (works on any*) firmware version; source code).

The above doesn't work on 1.1.2. When I try to run it I get "Firmware older than Ver 1.1.2 is on memory card. Delete old file and update using a later verison". a1ex, could you please create a BOOTF5D4.FIR with a higher version number for me to try?
5D Mark IV 1.1.2 | 5D Mark III v1.2.3 | Canon 16-35mm f4.0L | Tamron SP 24-70mm f/2.8 Di VC USD G2 | Canon 70-200mm f2.8L IS II | Canon 100-400mm f4.5-5.6L II | Canon 800mm f5.6L | Canon 100mm f2.8L macro | Sigma 14mm f/1.8 DG HSM Art | Yongnuo YN600EX-RT II

a1ex

  • Administrator
  • Hero Member
  • *****
  • Posts: 12322
  • Emergencies only
Re: Canon 5D Mark IV
« Reply #420 on: February 17, 2019, 01:21:01 PM »
Done. I don't get this error in QEMU, so it's very easy to overlook it. Also updated the portable ROM dumper.

Size of autoexec.bin is OK; it won't load any modules. Just copy it on the card; it doesn't require any data files either.

My advice is to copy it on the virtual card first, in QEMU, as that will give you a way to debug it. To cross-check, if you compile the current code from digic6-dumper (on 1.0.4) and run it in QEMU, it will save a log on the virtual card.

chris_overseas

  • Moderators
  • Member
  • *****
  • Posts: 222
Re: Canon 5D Mark IV
« Reply #421 on: February 17, 2019, 01:43:36 PM »
Thanks a1ex, the updated BOOTF5D4.FIR and ROM dumper are both now working fine on 1.1.2. I'm happy to report that the bootflag being enabled on the 5D4 doesn't seem to introduce nearly as much lag as it does on the 5D3.

Logging on the physical camera with 1.1.2 works using the code from my 5d4-112 branch, as does the intervalometer. I'll generate more/better logs and chip away at the various other outstanding tasks (as per replies #397, #417, 80D thread #468) when I can, but my spare time is sadly very limited so anyone else willing to join in is most welcome to do so.
5D Mark IV 1.1.2 | 5D Mark III v1.2.3 | Canon 16-35mm f4.0L | Tamron SP 24-70mm f/2.8 Di VC USD G2 | Canon 70-200mm f2.8L IS II | Canon 100-400mm f4.5-5.6L II | Canon 800mm f5.6L | Canon 100mm f2.8L macro | Sigma 14mm f/1.8 DG HSM Art | Yongnuo YN600EX-RT II

KelvinK

  • Senior
  • ****
  • Posts: 267
  • Less words, more films
Re: Canon 5D Mark IV
« Reply #422 on: February 18, 2019, 11:55:58 AM »
@chris_overseas what's going to be next?
6D - 5D - NEX - M50!

chris_overseas

  • Moderators
  • Member
  • *****
  • Posts: 222
Re: Canon 5D Mark IV
« Reply #423 on: February 20, 2019, 01:46:41 AM »
I scanned for free memory regions (as per the 80D). The log file fills up extremely quickly on the 5D4 even with filtering, so I hacked the logging code a bit so the memory results overwrite the start of the log file instead of disappear off the end. Across 4 attempts I found these common unused areas:

Code: [Select]
42600000-42FFFFFF = 10MB
4B100000-4BCFFFFF = 12MB
5D100000-5D6FFFFF = 6MB
60B00000-614FFFFF = 10MB
7C500000-7D0FFFFF = 12MB

The areas aren't as big as the 80D unfortunately, nevertheless I managed to capture a few 12MB logs here using 0x7C500000: http://www.redyeti.net/test/5d4-112-logs-4.7z

I tried to get an MMIO log but my first/only attempt came up empty, will hopefully have time to try that again in a couple of days.
5D Mark IV 1.1.2 | 5D Mark III v1.2.3 | Canon 16-35mm f4.0L | Tamron SP 24-70mm f/2.8 Di VC USD G2 | Canon 70-200mm f2.8L IS II | Canon 100-400mm f4.5-5.6L II | Canon 800mm f5.6L | Canon 100mm f2.8L macro | Sigma 14mm f/1.8 DG HSM Art | Yongnuo YN600EX-RT II

a1ex

  • Administrator
  • Hero Member
  • *****
  • Posts: 12322
  • Emergencies only
Re: Canon 5D Mark IV
« Reply #424 on: February 21, 2019, 11:01:23 PM »
Stubs verified (actually I've programmed a robot to do that) and included in the main repository. Nice job!

Expecting MMIO log to work as well (tested in QEMU)... as long as one doesn't use the camera in burst mode. These hardcoded buffers are not guaranteed to be always available, but I believe the risk is low - these are used for image data, so if there's any collision, either the images or the logs will be affected.