The threads are knackered allowing the sprocket to loosen. I have temp fixed by using the old nut and cleaning up the taper which was a little tired. I had a belt but since I converted to 12 volt dynamo I have gone back to the chain as it puts less strain on the bearings(and there is no need to speed it up) but I still have it as a back up.