Skip to main content

Drum Motor

image.png

 

1.  Add These Pin Definitions at the Top:


const int drumPwmPin = 6;   // PWM pin (connect to Blue wire)
const int drumDirPin = 7;   // Direction pin (connect to White wire

2.  Add These to setup():Make sure these lines are inside your setup() function

pinMode(drumPwmPin, OUTPUT);
pinMode(drumDirPin, OUTPUT);

3. Replace Your handleDRUM() With This Version:



void handleDRUM(uint8_t value) {
  if (value > 100) value = 100;  // Clamp value to 100
  int pwmValue = map(value, 0, 100, 0, 255);  // Scale 0-100 to 0-255

  if (value != 0) {
    digitalWrite(drumDirPin, HIGH);         // Set motor direction (HIGH = CW)
    analogWrite(drumPwmPin, pwmValue);      // Apply PWM speed
    setValue(&sendBuffer[drumByte], value); // Update protocol buffer
  } else {
    analogWrite(drumPwmPin, 0);             // Stop motor
    setValue(&sendBuffer[drumByte], 0);
  }

  lastEventTime = micros();
}