Thanks for your reply. I will try various settings in sys.txt to see what happens.
Am I correct in thinking that the warn distance is triggered by (in my case) the warning distance and speed before the speedcam category entries, and the repeat distance is set by the approach beep distances? Because if so my first mistake was to set the latter figure lower, I thought this would cause a repeat at that distance, not every time that distance was passed from the warn point. I hope I have explained properly.

It seems a good idea to make the sys.txt as simple as possible, so I will try removing lines completely to see what difference it makes. I hope that I am right in thinking that I have entries that only apply to a non TTS set up?
Lastly I have no idea what the "skin" entries are for, something like this:
skin_first_sound="Accident_Zone"
skin_speed_sound_delay=140
skin_repeat_sound="Accident_Zone"
skin_repeat_distance=150
skin_off_sound="speedcam_off"

An explanation of this would be really helpful if anyone knows.