Canon EFS 17-85mm IS stuck/locked zoom repair/disassembly

It seems like this is a common problem with these lenses, the zoom gets stuck at 17mm with about 2mm of play (zoom movement). This problem is all due to a loose single screw on the inner lens assembly, sounds simple to fix, doesn’t it?

The challenge is trying to get to this single screw, which involves the separation of the lens into over 10 components, and the removal of about 20 small screws. Hopefully this guide will make the disassembly job a whole lot easier.

First, a reminder of what the lens looks like.

The stuck zoom lens

Turn the lens on its side with the connection contacts closest to you. There are 2 tiny Philips screws to remove.

Remove 2 screws holding the connection contacts

Balance the lens on its front with the metal lens screw lock ring visible. There are 4 small Philips screws to remove.

Metal lens screw lock

The metal ring can now be hinged apart. This next step is the most difficult. The inner black plastic ring is connected to the metal outer ring with 4 plastic clips in the inside. By pushing the clips towards the center, the black plastic ring can be removed from the top of the metal outer ring. Much care is needed due to the ribbon cable still being attached to the connection contacts allowing for a gap of roughly no more than 1cm.

Inner black ring and outer metal ring, clips visible

Once the inner black plastic ring is removed, the outer metal screw lock ring can be removed, exposing the PCB protected by a black plastic housing.

Both black and metal ring removed and PCB visible

Disconnect a single pressure ribbon cable attached to the inside of the black plastic housing which will then allow for its removal exposing the PCB.

Black plastic housing removed

Disconnect the 5 ribbon cables from the PCB. 2 are pressure connected, 2 with a hinged clip and 1 with a pressure clip. Unscrew a single Philips screw allowing the removal of the PCB.

Remove the 5 screws (circled in red) holding the outer black plastic ring allowing the remove of the black plastic ring. Then remove the 3 inner screws (circled in blue).

PCB removed

Turn the lens over and remove the rubber zoom grip. It can be removed by inserting a very thin screw driver under the rubber and working your way around.

Font of 17-85mm lens

Rubber zoom grip removed

With the rubber zoom grip removed, rotate the lens until you find a black rectangle sticker, peal this off to expose some contactors.

Black rectangle sticker removed exposing the contactors

With a Philip driver, unscrew the contactors. I actually performed this when reassembling the lens and slightly damaged them. It is better to remove them at the start to prevent this.

Contactors removed

There are 3 screws sitting on small metal tubes between a groove, finally remove these.

Screw in metal tubes within the groves

With these removed the inner lens portion can now be removed from the outer casing.

Outer casing removed from inner lens

You now have access to the problem screw(s) that need tightening. Once tightened, add some Loctite or nail-polish to stop the screws becoming loose again.

The final screws that need tightening

Some do’s and don’ts

  • don’t remove the front lens sticker or 3 screws behind it.
  • don’t remove the zoom sticker with m/ft increments.
  • don’t touch or disassemble any of the focusing ring!
  • do keep your UV filter on the lens, you can still remove the rubber grip with it on.
  • do make sure the focusing pin between the inner and outer len is in place.


thydzikGoogleMap v1.4.5 – an inline Google map plugin for WordPress

thydzikGoogleMap v1.4.5 is now available with significant improvements, including

  • The Google Maps Javascript and thydzikGoogleMap Javascript is downloaded only as needed, speeding up page loading of all pages without maps.
  • Removal of <head> code means thydzikGoogleMap will only be present when called.
  • Compressed thydzikGoogleMap code.
  • Multiple maps can now be created in a single post!
  • Map type can be changed from default by providing an additional ‘map type’ parameter.

thydzikGoogleMap produces valid XHTML and allows for easy creation of Google Maps in your WordPress posts from XML map data.

Grab the latest from the WordPress repository.

Examples of the newest functionality below:

Using either: Normal, G_NORMAL_MAP, N or left out; i.e. thydzikGoogleMap(example.xml), thydzikGoogleMap will produce a default styled map


Using either: SATELLITE, G_SATELLITE_MAP, S; i.e. thydzikgooglemap(example.xml, 4, S), thydzikGoogleMap will produce a satellite styled map. Note I have included a zoom of 4, and used the abreviation ‘S’.

thydzikgooglemap(example.xml, 4, S)

Using either: HYBRID, G_HYBRID_MAP, H; i.e. tHyDzIkGoOgLeMaP(example.xml,hYbRiD,450,225), thydzikGoolgeMap will produce a hybrid styled map. Note I have included a width and height, and proved that capitalisation is not of concern.

tHyDzIkGoOgLeMaP(example.xml, hYbRiD, 450,225)

Finally, using either: PHYSICAL, G_PHYSICAL_MAP, P, TERRAIN or T; i.e thydzikGoogleMap(example.xml,TERRAIN), thydzikGoogleMap will produce a terrain styled map.


As always, comments and suggestions welcome. In a future update I will try to incorporate rounded corners :)

thydzikGoogleMap v1.4

thydzikGoogleMap version 1.4 has been released with two major improvements.

  1. Manual zoom parameter added. Google uses an integer value from 0 to 17 (where 0 is the furthest away), to determine the map’s zoom level, this value can now be incorporated into thydzikGoogleMap as follows: thydzikGoogleMap(example.xml, 4). The zoom is an optional parameter and if left out the automatic zoom calculation will be used as before. The width and height of the map can still be added if desired as thydzikGoogleMap(example.xml, 4, 480, 640) or thydzikGoogleMap(example.xml, 480, 640, 4).
  2. The thydzikGoogleMap code is disabled if the site is viewed from a proxy, i.e. Google cache. Before a user viewing the blog would receive ‘The Google Maps API key used on this web site was registered for a different web site. You can generate a new key for this web site at’ thydzikGoogleMap now detects this and disables the maps.

Example with the new zoom functionality

thydzikGoogleMap(example.xml, 4)

Future improvements will include

  • Option of choosing Map, Satellite or Terrain
  • Disabling all code if no thydzikGoogleMap are present
  • Creating multiple maps in a single blog post

Grab the latest from the WordPress repository.