Servo stops moving/pin not giving an output when using tone

I am new to this so i dont really know whats wrong

I've tried using different pins as well

board: ESP32 Plus Development Board from Keyestudio

#include <LiquidCrystal_I2C.h>
#include <ESP32_Servo.h>

#define L_SERVO 26
#define R_SERVO 25

#define LED_P 12
#define LED_E 13

#define BUZZER 14

#define BUTTON_P 16
#define BUTTON_E 18

Servo l_servo;
Servo r_servo;

void setup() {
  // put your setup code here, to run once:
  pinMode(L_SERVO, OUTPUT);
  pinMode(R_SERVO, OUTPUT);

  pinMode(LED_E, OUTPUT);
  pinMode(LED_P, OUTPUT);

  pinMode(BUZZER, OUTPUT);

  pinMode(BUTTON_P, INPUT);

  r_servo.attach(R_SERVO);
  l_servo.attach(L_SERVO);
  
}

void loop() {
  // THIS DOESNT WORK
  l_servo.write(0);
  r_servo.write(180);
  tone(BUZZER, 500, 500);
  l_servo.write(90);
  r_servo.write(90);
  tone(BUZZER, 200, 500);  

  // THIS WORKS
  // r_servo.write(180);
  // l_servo.write(0);
  // delay(500);
  // l_servo.write(90);
  // r_servo.write(90);
  // delay(500);

}

The problem might be found in the schematics You dudn't post.

A discussion of mega2560, tone, servo...

Does tone even work on an ESP32 ?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.