I had the same problem with my sons TZR50. I tested the speedo by disconnecting the cable loom going to the wheel and by using a short piece of wire shorting out terminal 1 and 3 on the loom going to the speedo. The speedo should register a few mph (ignition on!) this means the speedo is working. I then took off the front wheel and looked at the speedo drive. the ring tht engages in the wheel to read rotation was stuffed. I had to replace the whole wheel unit and cable loom as it is sold by Yamaha as one part at £47.50 + VAT The only issue my son has now is that since we de-restricted the air box and put a pipe on, the bike spends most of the time with the speedo reading its max of 50mph. Does anyone know how to de-restrict the speedo???