Understanding Exposure To The Right (ETTR)

I stumbled on the Automatic Exposure To The Right – ETTR when I wanted to have bulb ramping feature of Magic Lantern and could not find in my 7D build. Bulb ramping was replaced with the conjunction of those two to give even better result. How nice of them, tough if somebody would have explained how to use it in real life. I had to spend couple days in ML forums and had to do some tests to understand how those features actually work. and when you add the dual_iso to the mix it gets very complicated at first.

What is ETTR?

ETTR is a whey to get a cleaner picture, by intentionally exposing it as bright as possible while keeping highlights reasonably unclipped, and then lowering exposure and with it crushing the noise. It really works only if you use RAW. The idea is actually older than I am – it has been used in film photography for a long time and is called pull processing. You overexpose the negative and then under develop it, it makes the film grain smaller. There are limitations of it, it doesn’t relay work when dynamic range is challenged, or in scenes with a lot of bright items, and is not that easy top set up for sunset time lapse.

Pretty simple, isn’t it? not quite so – ML has this feature as module you can load in you camera, and there are many many settings with names and values that does not make sense for non techno geek. They did not make sense even for me. After some digging (ML forums of course, like here “User Guide thread for the latest nightlies“, “(Auto) ETTR (Exposure to the Right): — History & Beginners Guide” and here “ML wiki: Auto Exposure to the right”)


Trigger mode: Always ON, Auto Snap, Press SET & HalfS DblClick.

This setting gives you when the automatic ETTR adjustment is triggered. I tend to keep it on Press SET

  • Always ON would always adjust the exposure for the next picture, based on previous useful if external interferometer is used
  • Auto Snap would try to take pictures until it has found the right ETTR or ETTR limits are reached
  • Press SET works in Live View, this is the one I use for time lapses, because I would have the camera in live view anyway, to save the mirror motor and see what is going on.
  • HalfS DblClick explains it self half shutter double click triggers the ETTR, I don’t use it, because I have my interferometer being triggered by Half Shutter.

Slowest shutter: 1/60sec – 32sec  Here you can adjust the lowest shutter speed that the system can reach if required. But keep in mind that for time lapse purposes this should be shorter than your interval, meaning you can’t have 32″ exposure and 15″ interval. You even should leave some time for ETTR run, so 12″ not more for 15″ interval. For the most purposes this is enough, I prefer 15″ exposure for star lapses, not more anyway, so no need for longer ones imho.

Highlight Ignore: This number tells the system in how many bright (highlight) pixels to ignore when calculating ETTR, in essence how much clipped pixels is allowable. This setting might be you friend when shooting sunsets, otherwise camera would try to keep sun not blown out, and that is to dark.

Rest of the settings are a bit harder to explain and for the most of the situations are right, as they are.

Link to Dual ISO: this feature automatically enables or disables dual iso feature if the corresponding module is enabled in ML. I like it turned OFF for following reason – dual iso is already cumbersome workflow. It looses the vertical resolution and is not straight forward if you do time lapse and have the deflicker xmp files. So I can enable it when I need it my self, when necessary.

ML forums have a lot of good reading and comparison tests, it was not my goal to prove ETTR benefits, I just wanted to demystify ML implementation of it. I hope I did…

I have added a two images differing in 1 step exposure, one that cameras TTL sensor thought to be right, other one of the ML auto ETTL’s, you can do comparison and see does it work or not? The only thing I did was compensate ETTR’s exposure by -1EV and lens profile correction, that is it.

Exposed as ML ETTL suggests, -1EV exposure correction
Exposed as camera TTL suggests, no exposure correction