Leica M8 Lens Codes

Last updated: 26.11.2007, 22.57

For the Leica M8, Leica devised a coding system for their lenses which could be used as a lookup index in the firmware, to make various corrections, such as vignetting, and as IR (infrared) problems were found, cyan corner alimination when using IR filters. This table lists the codes used by Leica. All readings were made by placing the lens with the pattern at 12 O'Clock, and reading clockwise. The "Other Lenses" column lists lenses which are known to benefit from the same coding as the Leica lens in the "Lens Name" column. Many thanks go to Sean Reid, for generously providing informative comparative test results for the "Other Lenses" column. Examples and further details available at Reid Reviews.


Product # BlackProduct # Chrome Lens NameLens CodeValue PictureOther Lenses
11134- Elmarit-M 21mm f/2.8 0000011 -
11804- Elmarit-M 28mm f/2.8 (III) 0000113 -
11800- Tele-Elmarit-M 90mm f/2.8 (II) 0001004 -
1186811856 Summilux-M 50mm f/1.4 (II) 0001015 -
1131011311 Summicron-M 35mm f/2 (IV) 0001106 Zeiss Biogon T* 2/35 ZM
1113611137 Summicron-M 90mm f/2 (II) 0001117 -
11829- Elmarit-M 135mm f/2.8 (I/II) 0010019 -
11626- Tri-Elmar-M 16-18-21mm f/4 ASPH. 01000016 -
11817- Summicron-M 50mm f/2 (III) (010111)(23) -
1113511897 Elmarit-M 21mm f/2.8 ASPH. 01100024 Voigtländer Color Skopar 21mm 1:4,0,
Zeiss Biogon T* 2,8/21 ZM,
Kobalux 21mm f/2.8
1187811898 Elmarit-M 24mm f/2.8 ASPH. 01100125 Voigtländer Snap Shot Skopar 25mm 1:4,0,
Zeiss Biogon T* 2,8/25 ZM (with mount fix)
11604- Summicron-M 28mm f/2 ASPH. 01101026 Voigtländer Ultron 28mm 1:1,9,
Voigtländer Color Skopar 28mm 1:3,5,
Zeiss Biogon T* 2,8/25 ZM
11809- Elmarit-M 28mm f/2.8 (IV) 01101127 -
11606- Elmarit-M 28mm f/2.8 ASPH. 01110028 Zeiss Biogon T* 2,8/28 ZM
1187411883 Summilux-M 35mm f/1.4 ASPH. 01110129 Voigtländer Nokton 40mm 1:1,4
1187911882 Summicron-M 35mm f/2 ASPH. 01111030 Voigtländer Color Skopar 35mm 1:2,5,
Voigtländer Ultron 35mm 1:1,7
11821,
11822
- Noctilux-M 50mm f/1 01111131 -
1189111892 Summilux-M 50mm f/1.4 ASPH. 10000032 Voigtländer Nokton 50mm 1:1,5,
Zeiss C Sonnar T* 1,5/50 ZM
11819,
11826
11825,
11816
Summicron-M 50mm f/2 (IV, V) 10000133 Zeiss Planar T* 2/50 ZM
11831,
(11824)
11823 Elmar-M 50mm f/2.8 10001034 -
11810,
11814,
11815
- Summilux-M 75mm f/1.4 10001135 -
11637- Apo-Summicron-M 75mm f/2 ASPH. 10010036 -
1188411885 Apo-Summicron-M 90mm f/2 ASPH. 10010137 -
1180711808 Elmarit-M 90mm f/2.8 10011038 -
1163311634 Macro-Elmar-M 90mm f/4 10011139 -
14409- Macro-Adaptor-M 10100040 -
11890, 1162511894 Tri-Elmar-M 28-35-50mm f/4 ASPH. 10101042 -
11643- Summarit-M 35mm f/2.5 10101143 -
11644- Summarit-M 50mm f/2.5 10110044 -
11645- Summarit-M 75mm f/2.5 10110145 -
11646- Summarit-M 90mm f/2.5 10111046 -

Many thanks to Popflash.Photo, Mark Norton, and many others, for the use of the code images.

The entries are listed in roughly the table in the same order which Leica listed them in their original 6-bit coding announcement. As confirmation comes in, I will enter the codes, but this should allow you to intelligently narrow down a code. If you have lenses to add or find mistakes, please mail me at carsten AT digital-leica DOT com. Ideal would be a photo of the lens with the code, focal length engraving and aperture ring all visible, as future proof of the code. Verifying wrong codes is no fun.

Mike Prevette on the Leica M8 Forum has found out that by marking lenses in the correct spot with a black marker, the M8 will actually read the above codes, and use the internal settings for the lens whose code was marked. This is handy not only for marking the above lenses without actually sending them in for coding, but also for marking "similar" lenses and getting some benefit of the coding even for older Leica or other non-Leica lenses. Experimentation is in order!

To help marking the lenses in the correct spot, Bob Blakley has released a template into the public domain with the Creative Commons Public Domain Dedication license, ie. it is free for use. Instructions from Bob: "Print it out; the gray surround should be exactly 2 inches by 2 inches. Cut out all the white parts. The cutout at lower left aligns with the little recessed slot in the lensmount; the holes then represent the code bit positions. It's easiest to get on if you cut the recessed-slot piece all the way through to the edge of the paper so you can just open the template up and slip it on. I've made it a nice shade of magenta :-) If you want a template you can use over and over again, I'd suggest a trip down to Office Depot to get some overhead transparencies to print the template on. That way your Sharpie won't damage the template." A Sharpie is a brand of permanent black marker.

Here is the original thread which got all this started.

Footnote:

It is important to read all the codes the same way, and it would be convenient if the codes matched what Leica uses internally. It seems that 0=white and 1=black, for two reasons, one minor and one very strong:

The small reason is that Leica always lists their lenses with the wide-angle lenses first, and so it seems likely that their numbering system reflects this, with the smaller numbers being wide angles, and the larger ones the teles.

The stronger reason is this: With white and no marking at all having the same effect, as proven with the sharpie technique, this means that black must be the 1. Why? Two reasons. Firstly, as several people have commented already, 64 different codes does not seem like a lot. Leica being the brilliant people they are have surely thought of this, and have made their system future-proof. To add more numbers, one must add leading digits, meaning that one could equally well read the current 6-bit codes as being the same numbers but in 7-bit, with a leading zero. Since there are no codes out front of the 6-bit code at the moment, this means that chrome/white must be zero. In future cameras, all Leica needs to do is to add an extra sensor out front, and have all the new lenses start with a black dot, and voila! 7-bits, and an extra 64 combinations. Future-proof. Brilliant.

There is also the nice side-effect that all-white is the same as all-chrome, and is what is displayed for non-coded lenses, and has a value of 0. When you add a 7th digit, another white/chrome space still leaves 0. If Black was 0, then all black would be 0, and adding a 7th digit would cause all existing lens numbers to increase by 64, which is very unlikely.

Reading counter-clockwise results in numbers which differ greatly for similar lenses, which is clearly wrong.