from machine import Pin, PWM
import time
# Define the servo pin (change GPIO if needed)
servo_pin = 17 # GPIO 17
servo = PWM(Pin(servo_pin), freq=50) # Servo runs at 50Hz
# Function to set servo angle
def set_servo_angle(angle):
# Convert angle (0-180) to duty cycle (for ESP32, duty is 0-1023)
duty = int((angle / 180) * 1023 * (2.5 / 100) + 1023 * (5 / 100)) # Maps angle to duty cycle
servo.duty(duty)
# Continuous servo movement loop
while True:
set_servo_angle(0) # Move to 0 degrees
time.sleep(1) # Wait 1 second
set_servo_angle(180) # Move to 180 degrees
time.sleep(1) # Wait 1 second