# Servo "zuckt"/macht Geräusche im Leerlauf

**URL:** <https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699>\
**Category:** Deutsch\
**Created:** [August 30, 2026, 6:07pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699 "2026-08-30T18:07:26Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![christian\_ffm](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/christian_ffm/32/1126491_2.png) [@christian\_ffm](https://forum.arduino.cc/u/christian_ffm)\
**Post date:** [August 30, 2026, 6:07pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/1 "2026-08-30T18:07:26Z")

</div>

Hallo,

ich habe an einem Arduino Mega 4 Servos vom Typ AZDelivery MG996R hängen, wobei die 5 V am + Pol von einem separatem Netzteil kommen und nur der Steuer-IO vom Arduino kommt. GND ist vom Arduino und 5V Netzteil zusammengeschaltet.

Mein Problem ist aktuell, dass die Servos relatif oft im Leerlauf "mahlende" Geräusche machen und das obwohl sie laut Code ja eigentlich gar nichts machen sollten, außer auf den nächsten Steuerbefehl zu warten. Die Steuerung funktioniert soweit auch, aber mich stören diese Geräusche, da ich vermute, dass die auf Dauer auch nicht gut für die Servos sind.

Ich habe mal 3 Videos hier hochgeladen:

> **[temp\_forum](https://magentacloud.de/s/8QMSwi9getScHen)**
>
> MagentaCLOUD - Alle Dateien sicher an einem Ort

Das dritte Video mit dem Zucken ab 0:14 kommt, wenn ich am Steuerpin des Arduino für den Servo das Kabel bewege.

Hat jemand einen Tipp woran das liegen könnte ich wie ich das abstellen kann?

Hier auch noch mein Code:

```arduino
#include <Servo.h>
#include <RCSwitch.h>
RCSwitch receiver = RCSwitch();
RCSwitch sender = RCSwitch();

// ===== Servo =====
// create servo object to control a servo
Servo servoA;
Servo servoB;
Servo servoC;
Servo servoD;
Servo servoF;

// variable to store the servo position
int start_position = 0;
int end_position = 180;

int posA = start_position;
int posB = start_position;
int posC = start_position;
int posD = start_position;
int posF = start_position;

// =====================================================
// Servo öffnen
// =====================================================
void openServo(Servo &servoOpen, int &posOpen)
{
  while (posOpen < end_position)
  {

    posOpen++;
    servoOpen.write(posOpen);

    Serial.print("Servo öffnet:");
    Serial.println(posOpen);
    
    //delay(100);
  }

}

// =====================================================
// Servo schließen
// =====================================================
void closeServo(Servo &servo, int &posClose)
{
  while (posClose > start_position)
  {

    posClose--;
    servo.write(posClose);

    Serial.print("Servo schließt:");
    Serial.println(posClose);

    //delay(100);
  }
    
}

// =====================================================
// Setup
// =====================================================
void setup()
{
  Serial.begin(9600);
  
  servoA.attach(4);
  servoB.attach(6);
  servoC.attach(11);
  servoD.attach(12);
  servoF.attach(13);

  servoA.write(start_position);
  servoB.write(start_position);
  servoC.write(start_position);
  servoD.write(start_position);
  servoF.write(start_position);

  //Funk Empfänger initialisieren
  receiver.enableReceive(0); // Receiver on interrupt 0 => that is pin #2
  receiver.setProtocol(2);
  receiver.setPulseLength(690);

  //Funk Transmitter initialisieren
  sender.enableTransmit(10); // An Pin 10
  sender.setProtocol(1);
  sender.setPulseLength(416);
  sender.setRepeatTransmit(15);

  //integrierte LED auf Arduino initialisieren
  pinMode(LED_BUILTIN, OUTPUT);

}

// =====================================================
// Loop
// =====================================================
void loop()
{
  
  unsigned long value = receiver.getReceivedValue();
  
  if (receiver.available()) {
    
    if (value == 2288270336){ //Button A ON
      Serial.println("A_AN");

      //kleine Pause, damit längeres Drücken nicht als mehrere Betätigungen interpretiert werden
      delay(200);

      //Funkdose aktivieren und integrierte LED anschalten
      digitalWrite(LED_BUILTIN, HIGH);
      sender.send("100100001001010010011001");
      Serial.println("Signal EIN gesendet");

      //Servo öffnen
      openServo(servoA, posA);

      //Alle anderen Servos schließen (falls überhaupt offen)
      closeServo(servoB, posB);
      closeServo(servoC, posC);
      closeServo(servoD, posD);

      

      
    }

    if (value == 2221161472){ //Button A OFF
      Serial.println("A_AUS");
      
      //kleine Pause, damit längeres Drücken nicht als mehrere Betätigungen interpretiert werden
      delay(200);
    

      digitalWrite(LED_BUILTIN, LOW);
      //Funkdose aktivieren und integrierte LED ausschalten
      sender.send("100100001001010010010001");
      Serial.println("Signal AUS gesendet"); 
      
    }
    
    if (value == 2281776640){ //Button B ON
      Serial.println("B_AN");

      //kleine Pause, damit längeres Drücken nicht als mehrere Betätigungen interpretiert werden
      delay(200);

      //Funkdose aktivieren und integrierte LED anschalten
      digitalWrite(LED_BUILTIN, HIGH);
      sender.send("100100001001010010011001");
      Serial.println("Signal EIN gesendet");

      //Servo öffnen
      openServo(servoB, posB);

      //Alle anderen Servos schließen (falls überhaupt offen)
      closeServo(servoA, posA);
      closeServo(servoC, posC);
      closeServo(servoD, posD);

      

      
    }

    if (value == 2214667776){ //Button B OFF
      Serial.println("B_AUS");
      
      //kleine Pause, damit längeres Drücken nicht als mehrere Betätigungen interpretiert werden
      delay(200);

      digitalWrite(LED_BUILTIN, LOW);
      //Funkdose aktivieren und integrierte LED ausschalten
      sender.send("100100001001010010010001");
      Serial.println("Signal AUS gesendet"); 

    }

    if (value == 2287266816){ //Button C ON
      Serial.println("C_AN");

      //kleine Pause, damit längeres Drücken nicht als mehrere Betätigungen interpretiert werden
      delay(200);

      //Funkdose aktivieren und integrierte LED anschalten
      digitalWrite(LED_BUILTIN, HIGH);
      sender.send("100100001001010010011001");
      Serial.println("Signal EIN gesendet");

      //Servo öffnen
      openServo(servoC, posC);

      //Alle anderen Servos schließen (falls überhaupt offen)
      closeServo(servoA, posA);
      closeServo(servoB, posB);
      closeServo(servoD, posD);

      

      
    }

    if (value == 2220157952){ //Button C OFF
      Serial.println("C_AUS");
      
      //kleine Pause, damit längeres Drücken nicht als mehrere Betätigungen interpretiert werden
      delay(200);

      digitalWrite(LED_BUILTIN, LOW);
      //Funkdose aktivieren und integrierte LED ausschalten
      sender.send("100100001001010010010001");
      Serial.println("Signal AUS gesendet"); 

    }

    if (value == 2284645376){ //Button D ON
      Serial.println("D_AN");

      //kleine Pause, damit längeres Drücken nicht als mehrere Betätigungen interpretiert werden
      delay(200);

      //Funkdose aktivieren und integrierte LED anschalten
      digitalWrite(LED_BUILTIN, HIGH);
      sender.send("100100001001010010011001");
      Serial.println("Signal EIN gesendet");

      //Servo öffnen
      openServo(servoD, posD);

      //Alle anderen Servos schließen (falls überhaupt offen)
      closeServo(servoA, posA);
      closeServo(servoB, posB);
      closeServo(servoC, posC);
      

      

      
    }

    if (value == 2217536512){ //Button D OFF
      Serial.println("D_AUS");
      
      //kleine Pause, damit längeres Drücken nicht als mehrere Betätigungen interpretiert werden
      delay(200);

      digitalWrite(LED_BUILTIN, LOW);
      //Funkdose aktivieren und integrierte LED ausschalten
      sender.send("100100001001010010010001");
      Serial.println("Signal AUS gesendet"); 

    }

    receiver.resetAvailable();
  }

}

```

---

<div class="post-metadata">

**Author:** ![fony](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/fony/32/936882_2.png) [@fony](https://forum.arduino.cc/u/fony)\
**Post date:** [August 30, 2026, 7:25pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/2 "2026-08-30T19:25:19Z")

</div>

Ganz einfach, wo anders neues Serwo kaufen, AZ ist bekant dafür das so manche Sachen Schrott sind.  
Vor langer Zeit war das sehr serioser Händler.

---

<div class="post-metadata">

**Author:** ![MicroBahner](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/microbahner/32/238923_2.png) [@MicroBahner](https://forum.arduino.cc/u/MicroBahner)\
**Post date:** [August 30, 2026, 8:07pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/3 "2026-08-30T20:07:36Z")

</div>

> [@christian\_ffm](#):
>
> Das dritte Video mit dem Zucken ab 0:14 kommt, wenn ich am Steuerpin des Arduino für den Servo das Kabel bewege.

Sieht dann wohl nach Kontaktproblemen aus.

---

<div class="post-metadata">

**Author:** ![uwefed](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/uwefed/32/213736_2.png) [@uwefed](https://forum.arduino.cc/u/uwefed)\
**Post date:** [August 30, 2026, 8:27pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/4 "2026-08-30T20:27:56Z")

</div>

> [@christian\_ffm](#):
>
> wenn ich am Steuerpin des Arduino für den Servo das Kabel bewege.

Das läßt an Kontaktprobleme denken. Stecken die Kabel fest in den Buchsen oder sind sie ziemlich locker?

Daß diese Servos nicht leise und ruhig in der Zielposition stehen bleiben ist fisiologisch.

Grüße Uwe

---

<div class="post-metadata">

**Author:** ![Rintin](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/rintin/32/1013044_2.png) [@Rintin](https://forum.arduino.cc/u/Rintin)\
**Post date:** [August 31, 2026, 4:18am UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/5 "2026-08-31T04:18:52Z")

</div>

Kannst du testweise RCSwitch rausnehmen?

---

<div class="post-metadata">

**Author:** ![christian\_ffm](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/christian_ffm/32/1126491_2.png) [@christian\_ffm](https://forum.arduino.cc/u/christian_ffm)\
**Post date:** [August 31, 2026, 5:49am UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/6 "2026-08-31T05:49:40Z")

</div>

Guten Morgen,

@fony & @uwefed habt ihr denn Empfehlungen welche Servos ich nehmen soll? Sie müssen 180 Grad drehen können.

Die Kontaktprobleme hätte ich (als Laie) eigentlich ausgeschlossen, da ich bei dem Mega so ein Breakout Board ( [GeeekPi Terminal Block Breakout Board Hat with Reset Button and LED Indicator, GPIO Expansion Board Breakout Module for Arduino Mega 2560 R3: Amazon.de: Business, Industry & Science](https://www.amazon.de/dp/B0BPH1MMGX?ref%5C_=ppx_hzsearch_conn_dt_b_fed_asin_title_1) ) oben drauf installiert habe und die Kabel mit Aderendhülsen fest verschraubt habe. Das Zucken im Video 3 kommt dann sobald ich mit dem Schraubendreher nur an den Kontakt komme bzw. die Schraube rausdrehe, was ich ja im Betrieb nicht mache, aber diese mahlenden Geräusche aus Video 1 und 2 macht er fast die ganze Zeit.  
Zu Hause mit dem Arduino Uno ohne ein solches Breakout Board hatte ich die Probleme in ganz leichter Form aber auch schon mal.

Aber ja @Rintin da ich die Funktion mit RCSwitch zuletzt eingebaut habe und davor keine Probleme hatte, versuche ich das mal zu deaktivieren. Für die komplette Funktionalität brauche ich das aber ;)

---

<div class="post-metadata">

**Author:** ![Rintin](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/rintin/32/1013044_2.png) [@Rintin](https://forum.arduino.cc/u/Rintin)\
**Post date:** [August 31, 2026, 10:16am UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/7 "2026-08-31T10:16:13Z")

</div>

Ich vermute dass dein RF-Empfänger zu sehr rauscht und die Interrupts daher das Timing von den Servos stört.

Ein paar Ideen:

- Für den Empfang das RMT Modul eines ESP32 verwenden
- Servos über Hardware PWM Steuern (Uno/Nano R4 sollte genug Timer dafür haben)
- Externer PWM Chip per I2c anschließen (PCA9685)

---

<div class="post-metadata">

**Author:** ![christian\_ffm](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/christian_ffm/32/1126491_2.png) [@christian\_ffm](https://forum.arduino.cc/u/christian_ffm)\
**Post date:** [August 31, 2026, 5:32pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/8 "2026-08-31T17:32:15Z")

</div>

Was genau meinst du mit dem Punkt?

_Servos über Hardware PWM Steuern (Uno/Nano R4 sollte genug Timer dafür haben)_

Also soll ich die PWM Kanäle meines Arduino Mega nutzen und drauf achten, dass ich immer einen port mit einem anderen Timer nutze? (bzw. wieso soll ich noch einen extra Uno/Nano nehmen?)

---

<div class="post-metadata">

**Author:** ![combie](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/combie/32/217369_2.png) [@combie](https://forum.arduino.cc/u/combie)\
**Post date:** [August 31, 2026, 5:38pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/9 "2026-08-31T17:38:04Z")

</div>

Das Problem dürfte sein, dass die Servo Lib auf Interrupts basiert.  
Eigentlich nicht schlimm....  
Nur, dass dein FunkDingen ebenfalls Interrupts nuzt.

Die Servos zucken, weil deren Interrupts leider von den Funkinterrupts verzögert werden.

Einzige mir bekannte Möglichkeit/Abhilfe:  
Deligieren!

z.B.:

> [@Rintin](#):
>
> PCA9685

---

<div class="post-metadata">

**Author:** ![Rintin](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/rintin/32/1013044_2.png) [@Rintin](https://forum.arduino.cc/u/Rintin)\
**Post date:** [August 31, 2026, 7:04pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/10 "2026-08-31T19:04:59Z")

</div>

> [@christian\_ffm](#):
>
> Also soll ich die PWM Kanäle meines Arduino Mega nutzen

Ja genau. Und scheinbar hat das schon wer in eine Library gegossen.

> **[GitHub - dadul96/Arduino-Servo-Hardware-PWM-Library: This library allows Arduino/Genuino Mega boards to...](https://github.com/dadul96/Arduino-Servo-Hardware-PWM-Library)**
>
> This library allows Arduino/Genuino Mega boards to control up to 9 servos with the integrated 16-bit hardware PWM timer/counter.

> [@christian\_ffm](#):
>
> und drauf achten, dass ich immer einen port mit einem anderen Timer nutze?

Nein, Der Mega2560 kommt mit 4 (16-Bit) Timern mit je 3 PWM Ausgängen. Da die Servos alle die selbe Wiederholrate des Signals benötigen, kannst du mit einem der Timer 3 Servos steuern.

> [@christian\_ffm](#):
>
> (bzw. wieso soll ich noch einen extra Uno/Nano nehmen?)

Gedanklich bin ich bei Antworten meist beim Uno R3 der nicht genug PWM Kanäle für dich hat.  
Der R4 war da nur ein Beispiel. Mit dem Mega sollte das auch gehen.

---

<div class="post-metadata">

**Author:** ![uwefed](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/uwefed/32/213736_2.png) [@uwefed](https://forum.arduino.cc/u/uwefed)\
**Post date:** [September 1, 2026, 6:41pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/11 "2026-09-01T18:41:48Z")

</div>

> [@Rintin](#):
>
> - (Uno/Nano R4

ich was übersehen? gibt es jetzt einen NANO R4?

---

<div class="post-metadata">

**Author:** ![Rintin](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/rintin/32/1013044_2.png) [@Rintin](https://forum.arduino.cc/u/Rintin)\
**Post date:** [September 1, 2026, 6:45pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/12 "2026-09-01T18:45:55Z")

</div>

[https://docs.arduino.cc/hardware/nano-r4/](https://docs.arduino.cc/hardware/nano-r4/)

---

<div class="post-metadata">

**Author:** ![Tommy56](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/tommy56/32/232943_2.png) [@Tommy56](https://forum.arduino.cc/u/Tommy56)\
**Post date:** [September 1, 2026, 6:49pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/13 "2026-09-01T18:49:40Z")

</div>

Das ist ja das Problem, dass alles auf Krampf UNO und NANO heißen soll, obwohl das nur die grundlegenden mechanischen Werte widerspiegelt.

Gruß Tommy

---

<div class="post-metadata">

**Author:** ![uwefed](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/uwefed/32/213736_2.png) [@uwefed](https://forum.arduino.cc/u/uwefed)\
**Post date:** [September 1, 2026, 6:56pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/14 "2026-09-01T18:56:06Z")

</div>

ups

---

<div class="post-metadata">

**Author:** ![uwefed](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/uwefed/32/213736_2.png) [@uwefed](https://forum.arduino.cc/u/uwefed)\
**Post date:** [September 1, 2026, 7:05pm UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/15 "2026-09-01T19:05:14Z")

</div>

> [@christian\_ffm](#):
>
> Das Zucken im Video 3 kommt dann sobald ich mit dem Schraubendreher nur an den Kontakt komme

Das Shield sollte die Kabel sicher verbinden. Also auf dieser Seite alles OK.  
Daß ein Schraubenzieher am Servo Signal Kabel solche Störungen einstreut läßt mich denken daß die Masseverbindung zwischen Servo und Arduino fehlt.  
Grüße Uwe

---

<div class="post-metadata">

**Author:** ![michael\_x](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/michael_x/32/628623_2.png) [@michael\_x](https://forum.arduino.cc/u/michael_x)\
**Post date:** [September 2, 2026, 9:37am UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/16 "2026-09-02T09:37:24Z")

</div>

> [@Tommy56](#):
>
> obwohl das nur die grundlegenden mechanischen Werte widerspiegelt.

Wieso "obwohl" ?  
_ **Uno** _ ist der Formfaktor, und gibt einen Hinweis darauf, dass die entsprechenden Shields draufgesteckt werden können.  
_ **Nano** _ entsprechend die Steckbrett-Variante.

Dass wir Veteranen bei diesen Stichworten noch die AVR atmega328 Varianten im Kopf haben, die "Arduino" vor langer Zeit mal zum Erfolg gemacht haben, ist unser Problem.

---

<div class="post-metadata">

**Author:** ![wwerner](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/wwerner/32/1001727_2.png) [@wwerner](https://forum.arduino.cc/u/wwerner)\
**Post date:** [September 2, 2026, 9:51am UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/17 "2026-09-02T09:51:54Z")

</div>

> [@michael\_x](#):
>
> _ **Uno** _ ist der Formfaktor, und gibt einen Hinweis darauf, dass die entsprechenden Shields draufgesteckt werden können.

Und was ist mit 5V und 3.3V? Passt das immer bei den Shields?

---

<div class="post-metadata">

**Author:** ![Tommy56](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/tommy56/32/232943_2.png) [@Tommy56](https://forum.arduino.cc/u/Tommy56)\
**Post date:** [September 2, 2026, 9:52am UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/18 "2026-09-02T09:52:33Z")

</div>

Zusätzlich sehe ich evtl. noch Probleme mit 5V und 3,3V, die das einfache Aufstecken der Shields zunichte machen können.

Gruß Tommy

---

<div class="post-metadata">

**Author:** ![Rintin](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/rintin/32/1013044_2.png) [@Rintin](https://forum.arduino.cc/u/Rintin)\
**Post date:** [September 2, 2026, 10:14am UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/19 "2026-09-02T10:14:29Z")

</div>

> [@wwerner](#):
>
> Und was ist mit 5V und 3.3V?

Uno ist 5v und Zero ist 3v.

Deshalb finde ich den Uno Q eine totale Katastrophe.

Die Shields müssen für 3v oder 5v geeignet sein.

Edit: Sind wir schon OT genug das wir den Thread splitten sollten?

---

<div class="post-metadata">

**Author:** ![combie](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/combie/32/217369_2.png) [@combie](https://forum.arduino.cc/u/combie)\
**Post date:** [September 2, 2026, 11:23am UTC](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699/20 "2026-09-02T11:23:56Z")

</div>

Seit R3 ist IOREF verpflichtend, sowohl für Boards als auch für Shields.

[Next page](https://forum.arduino.cc/t/servo-zuckt-macht-gerausche-im-leerlauf/1457699.md?page=2)
