The problem is probably the same as what i had a few years ago with my ps3 controller.

Its quitte simple: its dirty :P ... on the inside grease and cookie crumbs

Really, thats my answer
Probably doesn't help