The speedometer needle sticking on 45MPH while the odometer still tallied up the miles was a puzzler. I got hasty and bought another speedo, but when I pulled the one already on the bike off, the needle returned to zero. I chucked my old cable in a hand drill and hooked up the new speedo to the other end, locked the drill's trigger, and let it spin up the 24 miles I already had on the "old" new one.
When you're not having the fun of riding it, that takes forever.
I figured the "old" new one was dead but when I hooked it up to the drill for a test it still worked too! In fact, it ran slightly faster. The "new" new one had a tag on it that read:
"1:1 1000RPM=60MPH"
The 1/2" drill I was using maxed out at a little over 800 RPM and the "old" new speedometer read around 45MPH at full speed. The "new" new one read around 40MPH. I still had the original MoCo speedo that I replaced because the face had faded from the sun. I ran the test on it and it read in the neighborhood of 50MPH. So let it be known that aftermarket speedometers are inaccurate.
Anyway, I put the "new' new speedo on the bike and took it down the road.
And the needle stuck on 40MPH.
Now this is with a brand new Barnett cable since the old one was just an ugly steel thing, the Barnett has a neato black vinyl cover on it and looks so much better. I DID have to force the Barnett's core into the drive gear and speedo head since it fit rather snugly, but since the odometer worked that couldn't be it, huh?
I pulled the new core out of the Barnett cable housing and replaced it with the old HD core coated with new grease, which slid into the square hole in the drive gear and speedo head easily. I cranked up the bike and took it down the road.
And it worked.
But I know I'm going faster than it says I am and I figure it's around 10MPH off. I think I'll hook the "old" new one up to the drill and run it up to the same mileage as the "new" new one and use it, since it's only 5MPH off.
The toggle switch breaking off in the handlebar control turned out to be because I hadn't milled out enough area for the switch to set level and the resulting force of tightening it bent the threaded shaft at an angle away from the switch body. I used the Dremel tool to remove enough meat for a new switch to sit straight and so far it seems fine.