Valvebounce said:
Hi weixing.
My understanding is that Sigma (and other 3rd party manufacturers?) use a code for a lens (not necessarily in the same focal length range?) that has similar drive requirements for the AF and IS systems so that the camera drives these systems at the desired rates?
Using an unallocated number might result in the body identifying the lens as "no lens attached" or even worse, driving the focus system in to the end of the travel at full speed due to not having any parameters set?
I'm not certain of any of this hence marking them as questions so that hopefully one or more of the knowledgeable members will correct or verify my understanding of the situation.
Cheers, Graham.
I think you've got that wrong. If the camera had to know something about the lens so as not to drive the AF at full speed into the end (and if that was actually potentially damaging for the lens), we would be warned about having to upgrade firmware in cameras before mounting new lenses on old cameras. How many of the lenses in my signature do you think would be harmed if I mounted them to my old announced-1990 EOS 1000 (original Rebel in the US)? My guess is zero. Of all the lenses I own, only the 50/1.8 II is old enough to have been announced the same year as or earlier than the EOS 1000.
Lens aberration correction is using data stored in the body, most probably looked up by lens code. The lens codes used by Sigma/Tamron/Cosina/... are only some times values for similar Canon lenses. For example, the 35Art uses a 17-35/2.8 code and the 18-35Art uses the 85/1.2L code: https://sno.phy.queensu.ca/~phil/exiftool/TagNames/Canon.html#LensType
Modern cameras are delivered with profiles for a bizarre number of lenses. My 5DmkIV was delivered with all profiles known to the canon lens registration utility installed.
Somewhere I once found a page with detailed protocol information written by someone who had painstakingly reverse-engineered quite a bit of the EF lens protocol as a hobby project. The lens has to be surprisingly smart for a late 1980s protocol. The camera body tells the lens to refocus a number of steps in a direction and can then query the new distance (for some newer lenses, list current as of ETTL-II introduction in 2008 here: http://www.bobatkins.com/photography/eosfaq/ettl2.html )