Canon cameras contain information about all the EF lenses and the commands to send to them. Third party lenses tell the camera that they are a Canon lens and then translate the command they receive to their lens. This can cause even another step that adds to inaccuracy, but it can be adjusted by AFMA as well.
Its a lot more complex that a person might think.
Again, all of that would be solved by closing the loop. Then all you'd need is a correction for sensor/vs AF array, which would be body specific and programmed by Canon at the factory.
It is sounding like the whole phase detect AF system is fully open loop, which really surprised me. Is Nikon like this too? Do they also have an AFMA type feature on their bodies?
Wish there were a Canon engineer I could speak to this about, would be a fascinating discussion!
Its not totally open loop, there is checking going on. There is information about how it works, but the fine details are not disclosed.
There are two possible types of errors.
1. The Camera tells the lens to move to 8.2 ft, but due to errors in the camera, it should actually be in focus at 8.1 ft.
2. The lens receives a command from the camera to move to 8.2 ft but due to internal tolerances and errors, it moves to 8.3 ft. It does tell the camera when it has moved, which closes the loop.
When both of these happen, there is a significant focus error. AFMA Adjusts the camera command to compensate for this. Sometimes a lens or body error compensate and the errors cancel out. In the example above, the lens could have actually been in focus at 8.1 ft even though it told the camera that it had moved to 8.2 ft as commanded. The image would have been in perfect focus and the owner boasting that his lens was perfect and needed no AFMA!
If you send your camera and lens to Canon, they check each separately and write new parameters in the internal firmware so that both are more accurate.