[SOLVED] Shutdown problem when removing CF cards (5D Mark II, 50D...)

Started by a1ex, July 18, 2012, 05:19:01 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

a1ex

Some users still experience shutdown problems on 5D Mark II when removing or swapping CF cards (they have to remove the battery to start the camera again). Problem fully understood, see fix below.

Short answer: after opening CF card door, wait for at least 5 seconds before removing the card.


I've never had this problems with the RC versions, and thought this to be fully solved on May 7.

If you have a 5D Mark II with firmware 2.1.2, please try this binary:
http://a1ex.magiclantern.fm/debug/5D2/dummy/autoexec.bin

It does nothing else other than starting Canon firmware. If you don't have the shutdown problem with this binary, but you have it with ML in a consistent way, please let me know via PM.

Since I can't reproduce this on my camera, the only way to fix it is with the help of a tester who has this problem.

a1ex

This changeset seems to blink the LED when it's safe to remove the card:
https://bitbucket.org/hudson/magic-lantern/changeset/1fc1cfa04951

Thanks @ToS_Maverick :)

a1ex

Okay, I think it's fully understood. Here's what's going on:

5D Mark II:

* If you turn off from power switch, and then open card door: A moment later, Canon firmware reads autoexec.bin without card LED activity (funny, no?). If you remove the card during this period, camera freezes without any LED blinking or other sign. Wait for at least 5 seconds before removing the card!

* If you turn off just by opening the card door, and leaving main switch ON: Canon firmware does not read autoexec.bin again, so it's perfectly safe to remove the card right away.

60D:

The 60D always turns on the SD card LED when there is SD card activity, so you already know when it's safe to remove the card. The behavior is almost identical to 5D Mark II, except that 60D has correct LED activity.

I'm trying to enable these LED blinks on all cameras.

550D:

There are no issues on this camera - it never reads autoexec.bin with main switch turned off.

50D:

Same as 5D Mark II (problem is present).

500D:

Same as 5D Mark II (problem is present).

600D:

Similar to 5D Mark II, but the card access is done right in the moment of opening the door. Therefore, it's hard to remove the card fast enough to cause issues, but the problem might happen on slow cards or fragmented filesystems.

1100D:
There are no issues on this camera - it does not try read autoexec.bin after you open the card door.

============
Side note: the cameras having this potential problem will also read autoexec.bin from the card (and execute it) when you change the lens with main power switch off.

Leigho

For 5D MKII: So if you have already freaked out/not paid attention in that 5 second period and removed your card, and it now is unreadable on any device or reader: does that imply that your expensive CF card is dead?

a1ex

@Leigho: the only side effect is having to take the battery out to restart the camera (and if you don't, the battery will drain overnight). You are removing the card when camera is reading from it, so no filesystem corruption will occur.

Normally, formatting the card will fix it. Some cards do fail from normal usage (not related to ML in any way), and in this case you have to buy another card.

a1ex

For testers: here's how to check on the other cameras:

With this changeset or binary any nightly build, do the following tests:
1) with main switch OFF, open and close the SD card door. Does the LED blink?
2) with main switch OFF, open and close the battery door. Does the LED blink?
3) with main switch OFF, change Canon lens (unscrew it and put it back on). Does the LED blink?

If above answers were yes:
4) Shutdown the camera (turn main switch off), open SD card door and wait for a few seconds (leave the card there, don't remove it). Does the LED blink?
5) Shutdown the camera by opening SD card door (leave main switch ON) and wait for a few seconds (leave the card there, don't remove it). Does the LED blink?

nanomad

Canon 1100D test results
1) YES
2) N/A (No battery door, there's just one for card + battery
3) YES

4) NO
5) NO

Note: This camera has one slot only
EOS 1100D | EOS 650 (No, I didn't forget the D) | Ye Olde Canon EF Lenses ('87): 50 f/1.8 - 28 f/2.8 - 70-210 f/4 | EF-S 18-55 f/3.5-5.6 | Metz 36 AF-5

Adam Sneddon

500d tests

1:Yes
2: NO (but I have a battery grip installed) so switch will be always on .
3: Yes (both lense off and lens back on\
4: Yes but only on door open and again on close
5:Yes blue and red at same time and camera turns off. Shut door red flash and camera turns on.

Adam

ilguercio

My response.
1) Yes
2) Yes
3) Yes
The LED blinks on both operations (open-close, unscrew-screw) .
Canon EOS 6D, 60D, 50D.
Sigma 70-200 EX OS HSM, Sigma 70-200 Apo EX HSM, Samyang 14 2.8, Samyang 35 1.4, Samyang 85 1.4.
Proud supporter of Magic Lantern.

a1ex

Conclusion: the 550D and 1100D are the only lucky exceptions, all other cameras have this bug.

ilguercio

Go get some pesticide :P
Do you know how to solve this thing already?
Canon EOS 6D, 60D, 50D.
Sigma 70-200 EX OS HSM, Sigma 70-200 Apo EX HSM, Samyang 14 2.8, Samyang 35 1.4, Samyang 85 1.4.
Proud supporter of Magic Lantern.

a1ex

Well... the solutions are hard:
1) reflash bootloader with a modified one (that doesn't access the card with door open!).
2) use a minimal autoexec and load the rest of code dynamically (which reduces, but does not eliminate, the probability of failure).
3) just warn the users to wait for the confirmation blink before removing the card.

I prefer to go for 3.

I've tested on 5D2 with a minimal autoexec, and it's loaded after two seconds AFTER opening the card door. The crash happens BEFORE autoexec.bin has a chance to run, so it's almost impossible to fix without changing Canon bootloader code (which is extremely dangerous).

ilguercio

Canon EOS 6D, 60D, 50D.
Sigma 70-200 EX OS HSM, Sigma 70-200 Apo EX HSM, Samyang 14 2.8, Samyang 35 1.4, Samyang 85 1.4.
Proud supporter of Magic Lantern.

nanomad

It is the same with ANY removable media.... as long as the led is ON don't touch it
Voted for #3 too
EOS 1100D | EOS 650 (No, I didn't forget the D) | Ye Olde Canon EF Lenses ('87): 50 f/1.8 - 28 f/2.8 - 70-210 f/4 | EF-S 18-55 f/3.5-5.6 | Metz 36 AF-5

a1ex

The main problem is that there is card activity with the LED off - so you don't know what's going on.

You have to be patient and wait for the blink that tells "done - safe to remove". It's not possible to turn on the LED earlier.

scrax

I've started my 600D with all open and lens detached.
Adde battery, closed slot. No led
closed lens, no led
closed card without card, no led
camera on without card, no led
added card, close slot led blink once
camera ON with SET pressed, led blinks more times until all loaded
if open slot (camera on), led blinks once and after half sec blinks again
or if
switch off camera no led
then open card slot, one blink only

camera ON with ML loaded, led blinks more times until all loaded
if open slot (camera on), led blinks once and after half sec blinks again
or if
switch off camera, led blinks once and after half sec blinks again
then open card slot, one blink only
I'm using ML2.3 for photography with:
EOS 600DML | EOS 400Dplus | EOS 5D MLbeta5- EF 100mm f/2.8 USM Macro  - EF-S 17-85mm f4-5.6 IS USM - EF 70-200mm f/4 L USM - 580EXII - OsX, PS, LR, RawTherapee, LightZone -no video experience-

uvasonar

I turned off automatic sensor cleaning and now I can take out the card much faster. Seems to speed up the shutdown process. I have never experienced a shutdown failure since I changed this.

a1ex

Can't confirm, just tried. The only fixes are:

1) do not turn off the camera from main switch
2) OR wait until LED blinks

uvasonar

OK, you seem to be right. Must have been some kind of hallucination or a random thing. Battery just drained again. So regardless whether sensor cleaning is being executed or not, the waiting time stays the same? Or sensor cleaning + safety time?

a1ex


uvasonar

Right. I was confusing power-off and "door-open-wait" times. It didn't make any sense, I am sorry. 

Magic 7D

I've just experienced this with my 7D, slightly different though..
Charged the batteries fully yesterday, did some shooting, turned camera off from main switch left the camera (without opening the card door) this morning no battery.

Just thought I'd let you know.

Usually I never turn the camera off, I just leave it to go off after 2min by it self and I've never experienced this b4 until now when I did turn it off..
A MAGIC 7D and 5D III + Lenses in the range of 15 - 400mm. Man it's shining.. it's a Lantern oh it's Magic, Aha it's Magic Lantern! ;)