Wie immer gilt, der Fehler steckt im Detail und dummerweise haben diese Hexas mindestens 18 Details. Die Frage nach dem verbundenen GND stell ich nur um sicher zu gehen, dass sowas triviales nicht übersehen wird. Selbst mir passiert es manchmal noch, dass ich bei all meinen hübschen Verdrahtungen irgendwas rudimentäres vergesse.

Die Ferritkerne kommen so nah es geht an die Servos dran. Kuckst du hier:
Bild hier  
Ganz rechts am Hüftservo sieht man den Ferritkern

Spielen wir das mal mit 21ms durch, dann kommt raus, dass sich bei jeder Signalvorgabe, das Signal selbst um 1ms verschiebt. Damit wandert der High-Impuls kontinuierlich durch den Signalbereich von 20ms, was erst mal kein Problem ist. Allerdings wird er irgendwann hinaus geschoben und dann wirds spannend, denn nun wird das Signal ein paar mal "zerschnitten" bis es wieder - durch die Verschiebung - im Signalbereich liegt.

Mal eben grafisch gezeigt
..........||||||.. Signal i.O
...........||||||. Signal i.O
............|||||| Signal i.O
.............||||| Signal n.i.O da zu kurz (nur 5 high)
|.............|||| Signal n.i.O da zu kurz
usw. bis das Signal wieder so aussieht:
||||||........... Signal i.O

Digitale in der Hüfte? Prüf mal bitte ob das SD21 überhaupt mit Digitalen so ohne Umstellen klar kommt, soweit ich mich erinnere und ich hatte das Board auch mal, ist es für analoge Servos ausgelegt. Könnte sein, dass du hier ein Problem hast.

Alles nur Ideen sicher kann ich es auch nicht sagen, aber ein Blick mit dem Oszi auf die Signale würde da schon weiter helfen. Klassisch prüft man erst mal ob saubere Signale aus dem µC kommen, dann aus dem SD21 und am Ende ob die auch am Servo noch so aussehen.
Danach kann man sich die Versorgungsspannung anschauen und wird hoffentlich den Fehler finden.