Skip to content

v3.1.0 - Gripper + ESP32 Core v3.x

Choose a tag to compare

@Mukller Mukller released this 10 Jun 05:24

v3.1.0

New Features

  • Gripper with two servo motors (MG996R)
    • Servo Left: GPIO 13, Servo Right: GPIO 33
    • Web interface buttons: Open (180) / Close (90)
    • REST API: /api/command?cmd=gripper_open / gripper_close
    • Works independently in any robot state

ESP32 Arduino Core v3.x Compatibility

  • Servo control via native LEDC PWM (pin-based API: ledcAttach/ledcWrite)
  • Motor test rewritten for the new Timer API
  • No external Servo library needed

New Test Sketches

  • test_servo_gripper - both gripper servos: 0 -> 180 -> 0, open/close cycle
  • test_gyro - gyroscope/accelerometer with chip auto-detection (MPU6050/MPU6500/MPU9250 by WHO_AM_I)
  • test_line_pins - line sensor pin diagnostic (raw values, stuck-pin detection)
  • test_motor_simple - minimal TMC2209 stepper check (30 lines, no timers)

Fixes

  • Gyro test no longer hard-fails on MPU6500 (WHO_AM_I 0x70) - common on MPU6050-labeled modules
  • Correct temperature formula per chip
  • Motor test: speed now actually controls step frequency
  • defines.h pinout aligned with README
  • Test sketches moved to their own folders (Arduino IDE compatibility)

Hardware Notes

  • TMC2209: EN is active-LOW; VIO (3.3V) required; set Vref via potentiometer
  • GPIO 34-39 are input-only without internal pull-ups (line sensor wiring note)

Pinout (current)

Component GPIO
Motor1 DIR/STEP 27 / 14
Motor2 DIR/STEP 25 / 26
Motors ENABLE 12
Servo Left / Right 13 / 33
I2C SDA/SCL (MPU, VL53L0X) 21 / 22
Line sensors S1-S5 34 / 35 / 36 / 39 / 32

Full diff: v3.0.0...v3.1.0