Not sure if an error will get generated and if it did how much it would help. And I guess it depends what the cause is anyhow.
But I would certainly always stick INPA on it to check.
Never done a speedo fix before. But I would certainly check the connector as Sean says. It's easy to remove the cluster. If it's ever been out before it's possible someone didn't put the connectors back properly. They're a bit fiddly if you're not used to them.
If no luck there the speed sensor lives on the rear diff. You could check the connection there (pull it off and check for corrosion inside) and consider swapping the sensor which is only £30 from BMW. Can't say I've ever heard of it going wrong mind you. I'd probably only swap it as a last resort. But check the connector.
Somewhere in the middle will be some circuity managing the signal and sending it to the speedo head. That lives on the back of the instrument cluster. From the electrical diagrams it looks like there's a direct cable path between the sensor and instrument cluster. So I'd summarise possible issues I can think of as being:
- Instrument cluster
- Signal conversion circuity
- Speedo head itself
- Either way it's replacement cluster or repair by specialist. I'd prefer latter due to issues with syncing mileage back up.
- Loom connector to instrument cluster
- Speed sensor on diff
- Loom connector to speed sensor
- Physical wiring damage between diff and instrument cluster. The cabling runs inside the car until it comes through the rear bulkhead and is then feed down through the floor pan. So most exposed areas likely to get damaged are within boot or underside of car after leaving boot to diff.
I'm struggling to think where else a fault may lay. Not likely to be earth connection as that's shared by the rest of cluster and I presume that's all working.