I've got the new file and can look at it,
it has 9 positive pulses of 0.5mS which is correct - 8 for the servos and a ninth for the gap.
View attachment 140472
However, the off time should be the servo time less 0.5mS.
The first one is correct at 500uS giving a total time of 1mS.
The second one is correct at 625uS giving a total time of 1.125mS.
After this they're all wrong, I don't know why.
Can you place a breakpoint just before the while 1 line and confirm that servoPos contains 2000,2250,2500 all the way up to 3750?
Thanks,
Mike.