Xiao Rp2040 pinout

image.png

Xiao ESP32 c3

Xiao ESP32 s3

ESP32 Wroom module (38 pin)

image.png

ATtiny 1614

image.png

Stepper motor Test code

#define STEP_PIN 9
#define DIR_PIN 8
#define ENABLE_PIN 3

const int stepsPerRevolution = 12000; // 200 * 32 microsteps (1/32 mode)
const int delayBetweenSteps = 100;   // Microseconds between steps

void setup() {
  pinMode(STEP_PIN, OUTPUT);
  pinMode(DIR_PIN, OUTPUT);
  pinMode(ENABLE_PIN, OUTPUT);

  digitalWrite(ENABLE_PIN, LOW); // Enable the driver
}

void loop() {
  // Move forward
  digitalWrite(DIR_PIN, HIGH);
  for (int i = 0; i < stepsPerRevolution; i++) {
    digitalWrite(STEP_PIN, HIGH);
    delayMicroseconds(delayBetweenSteps);
    digitalWrite(STEP_PIN, LOW);
    delayMicroseconds(delayBetweenSteps);
  }
  delay(1000); // Wait for a second

  // Move backward
  digitalWrite(DIR_PIN, LOW);
  for (int i = 0; i < stepsPerRevolution; i++) {
    digitalWrite(STEP_PIN, HIGH);
    delayMicroseconds(delayBetweenSteps);
    digitalWrite(STEP_PIN, LOW);
    delayMicroseconds(delayBetweenSteps);
  }
  delay(1000); // Wait for a second
}