Thursday, 12 April 2018

lens - Why do 3rd party lenses have compatibility issues?


I actually have 3 questions, related to this topic:


1) Do third party manufacturers like Sigma/Tamron/Tokina license the right to develop for Nikon/Canon mounts? I've heard people say they do, and others say that they reverse engineer compatibility.


2) If the latter is true (reverse engineered compatibility), then what makes 3rd party lenses legal? It seems like if Nikon/Canon is purposely trying to block development on their mounts, then they should be able to go after these companies for something...


3) Why do third party lenses have compatibility problems with some newer bodies? (e.g. Sigma with Nikon D5300/Df) I am confused, because this situation doesn't make sense. If Nikon/Canon has some secret encrypted firmware code which still allows old 1st party lenses to work, then why don't they just completely block 3rd party lenses from working at all? If they don't have some mechanism like this, then logically the mounts are probably standardized (since very old lenses still work). Am I missing something?



Answer



I don't have references, other than what I've read in forums, but I believe




  • Canon do not licence/provide data on their EF/EF-S mounts to anyone

  • Sigma do not purchase licences (they reverse engineer all mounts)

  • Tamron/Tokina licence Nikon, not sure about others (obviously not Canon)


There is nothing illegal about reverse engineering, per se. In some cases it might be illegal to replicate, for example if there was a patent in place, but there is no patent that blocks the 3rd party manufacturers making compatible lenses. There are patents on various lens (optics) designs, which is why you don't see them making exact copies of Canon lenses.


Compatibility problems are always possible when you reverse engineer an interface. This can be by design, e.g. if Canon were to put a few hidden messages into their protocol, which they would only start using after some years. Or it could just be that Canon's definition of the protocol allows for unexpected message variations, which, without documentation or an example of the variation, it would be impossible to design a compatible lens. I'm not sure there's much point speculating on exactly how/why, given Canon are very tight-lipped about the protocol and the manufacturers who reverse engineer it are hardly going to share their hard work (for competitors to take advantage of).


An example of this kind of thing might be ASCII and UTF-8. Any text in ASCII encoding will be equally compatible with UTF-8, but a UTF-8 string can also encode many more characters than ASCII. Now this was done for backwards compatibility, and was well documented. If you had never seen a UTF-8 string, you may not guess that certain ASCII bytes (over 127) indicate the following byte(s) are actually a continued encoding of a single character.


No comments:

Post a Comment

Why is the front element of a telephoto lens larger than a wide angle lens?

A wide angle lens has a wide angle of view, therefore it would make sense that the front of the lens would also be wide. A telephoto lens ha...