Sorry dude, all the normal force calculations were in one of the earlier attempts I made and didn't work. I decided to strip out a lot of code that I was writing in desperation and get back to basics. I just tried your code in case I had made a mistake but to no avail. The ball still does not bounce. Thanks for your help though, I think it may be something else in my code like the collision detection or something as I think the math is basically sound.