I have discovered that the GPR-S main speedometer (not the CA) can be adjusted for accuracy by the owner. My speedometer was reading about 15 or 20% fast according to the two electronic speed check signs that are on my commute route of travel. Also, the trip meter and odometer were reading about 10% more miles than I had actually driven, based upon the mileage reading of my other motorcycles and my car's odometer. I wanted to fix this discrepancy.
It turns out that the speedometer has a small white plastic button located under the instrument panel. If you press this button and hold it, a four digit number will show. This number corresponds to a ratio of the wheel revolutions compared with time as interpreted by the speedometer computer. In my case the number was "1995". After some experimentation, I found that setting the number to 1760 by pressing first the left button on the dash to select a digit, then pressing the right button to change it, would cause the odometer and trip meter to read more accurately and would also lower the speed shown on the display to a mile or two faster than the actual speed of the motorcycle. I was not able to obtain both a completely accurate speed and also an accurate distance traveled, so I went for the correct distance and anyway a slightly fast speed indication is typical of most motorcycles. You can play with this number to achieve the level of accuracy that you want your speedometer to display.
If you push the left button after the last digit, you will get the gas fuel gauge, which you can set to "on" or "off". Obviously, this setting should be off. If you press the left button again, you get a series of "0"s and then some digits. This is the odometer reading, which can be changed to anything that you want, using first the left button and then the right button. :confused: Changing the odometer reading is probably illegal and I recommend that you keep pressing the left button until the time shows. The press it again and you will have exited the programming system.