Now, Let’s Speculate
We know from the above that the Err99 code has existed since the D60, but most of the current Err99 online discussion and speculation started around 2003-2004. A large part of this is for obvious reasons: the number of Canon SLRs in service exploded around 2003 and 2004 with the introduction of the Digital Rebel and the 20D cameras. There are some other factors that may have contributed to the marked increase in Err99 reports around this time. Several changes that occurred, but probably did not have much to do with the Err99 increase include:
- The EF-S lens mount was introduced in 2003 with the Digital Rebel.
- Canon flash systems changed to E-TTL II in 2004. E-TTL-II largely incorporates a change in the flash calculations done in the camera body and communicated to the flash unit through the hot shoe. (Some people state Err99 problems involving flashes have only occurred since this change, but these are rare at any rate.)
- In 2003 Canon increased the number of autofocus points in prosumer cameras from 3 to 7 (10D) and again to 9 in 2004 (20D).
- The Digic image processing chip was introduced in prosumer cameras in 2003, and the more powerful Digic II in 2004 with the 20D and Rebel XT.
There are a few changes, however, that logic suggests might have had some causative effect on Err99 messages.
Lens-to-Camera Electronic Communication
Although Canon hasn’t said so specifically, pretty strong circumstantial evidence indicates that the electronic connections between lens and camera were changed at least once and probably twice since 1998. The first change is probably better documented and seems to have occurred first with the EOS 3 and EOS 1V film cameras, which introduced the 45-point autofocus system later used on the 1D series digital SLRs. A number of third party lenses (mostly Sigma) would not communicate autofocus information with these cameras, and required re-chipping by the manufacturer to regain compatibility. The same problem occurred with the introduction of the 10D digital camera, which increased prosumer autofocus points from 3 to 7 and introduced the Digic processor. Of note, those incompatible third party lenses gave an Err99 message, not Err01, when used with the 10D. As best I can find, the first widespread Err99 reports occurred when third party lenses couldn’t communicate electronically with the new 10D camera, and the soon-to-follow Rebel and 20D. This is the source of many people’s partially incorrect belief that Err99 always means a miscommunication between camera and lens.
Lens Current Draw
The second change is less clearly established. Some sources state that lenses with IS systems have higher electric current transmitted from the camera than other lenses do, which makes sense, considering that they have more work to do. In-lens image stabilization first appeared in 1995 with slight improvements in 1997 and 1999. A major improvement was made in 2001 with the faster IS system used in the 70-200 f/2.8L IS and again in 2006 with the new four-stop system in the 70-200 f/4L IS. The newest IS systems are more powerful and stabilize more quickly (0.5 seconds as opposed to 1 second with older systems), so it’s logical to assume they draw more current across the connections, although this is not documented anywhere that I can find.
Several lenses with newer IS, including the 70-300mm f/4-5.6 IS (2005), EF-S 17-55mm f/2.8 IS (2006), and 70-200mm f/4L IS (2006) became very popular with photographers shooting EF-S mount cameras. We know that malfunctions in some of these lenses, most commonly reported with the 17-55 f/2.8 IS, cause Err99 (and not Err01) on EF-S mount cameras. Cleaning the electronic contacts on the camera and lens will often fix, or at least improve the problem. There are a few reports that the problem is more common with original Digital Rebel and 20D cameras, and less common with newer cameras; our data supports this too. Some knowledgeable people have speculated that there was a change in contact alloy, a thinner layer of gold plating, or other electrical contact issues with the XT and 20D cameras that make it more difficult for these cameras to deliver the required current to the newer IS lenses. On the other hand, the problem may simply be more common with older cameras because the lens contacts are more likely to be worn.
In-Camera Voltage Drops
Another theory that has some factual basis was reported several years ago on DPReview. A tester found that Canon 20D cameras would display Err99 if the camera voltage fell below 7.3 volts. The BP511 battery used in all prosumer cameras prior to the 5DMkII should deliver a bit over 8 volts in fully charged state, but will fail to deliver sufficient voltage in certain conditions: dirty contacts, failure of a cell within the battery, age, rapid power consumption, or some combination of the above. This certainly would explain the Err99 problems occurring with bad batteries or bad battery contacts. Again, just speculating, but I would suggest that a fall in voltage across just part of the camera circuitry would also cause Err99—for example, across dirty or corroded electrical contacts, across a cracked ribbon cable, or perhaps a slightly corroded circuit board connector. I’ll come back to this idea later.