Another thing - when I turn on the ignition the speedo needle does the self test but the tachometer needle sits there until the bike starts - is this normal?
No it's not.
hearing this i'm surprised that the tach works.
Diagnosing electrical problems is IMO one of the hardest trouble shooting issues there is. Fortunately the actual problem is usually rather simple, finding it is whats tough.
You need a way to measure how much current is being drained from the battery. The best way is with a quality meter with a clamp on type amp meter. This clamps on around a wire and measures the current running through it.
Start with the key off and the clamp sensor on either the negative or the positive wire from the battery, it really doesn't matter because current just makes a loop from one side to the other.
Key off the current should be zero or very near that. If it's not there is a problem. Your tach not sweeping is a problem.
When you turn on the key you will get a current reading. I don't know what a good base line reading should be. Sorry but I don't have this issue so I haven't had to invest in the tooling to investigate this. Hopefully someone will add to this.
Connect a tender or low amp battery charger to the bike. This could take some time.
Even without this information you can still get clues to what he problem could be. Pull the head light fuse this should be the biggest current draw. I would next remove the little light blubs in the head lights. Remove the fuse for the tail lights.
After the head lights were there any big current drops?
Continue to remove non-essential fuses and check for large changes in current.
Couple of other things. Are there any non-stock wire connected to the battery? If so check these first.
It's hard for me to give good advise over the internet. I'm more of a hands on guy. But I'll try.
Good luck.