Replaced ESP32 In SR6, Twist Stopped Working

Hi Everyone,

A year ago I successfully printed and built my own SR6, which I’m quite proud of. Recently, the USB port on the ESP32 board detached, so I ordered the same board as a replacement. I flashed the new board just as I did originally and swapped it out with the old board, ensuring I attached the servo wires to the correct pins.

Everything is working correctly except for the Twist movement, and I’m having trouble figuring it out. I confirmed I have the servo wire on the correct pin, the other wires are correctly mounted in the power bus, and from what I can see all the other connection points are solid.

What’s strange is it seems to partially work. When I test it with a video, it either produces tiny, jerky movements or stops working altogether. Occasionally it jumps back to life and the full twist movement works, but then it goes back to small jerky movements pretty quickly.

I’ve tried unmounting and remounting the servo wire on the ESP32 board, remounting the power bus wires, and checking all the other connections but nothing is working. Has anyone else dealt with this and found a solution? I can’t understand why it was working perfectly on the old board but won’t work on the new one. Any help is appreciated.

Thank you.

If the twist servo is moving at all when directly called - via a twist script, or through adjustment in MFP, or through firmware tools - then it’s likely that you may have a bad servo.

I would TRIPLE check your twist servo’s ground and if you’re still having issues, get another servo, wire it in, and see if it moves as expected. If so, go ahead and unbolt the bad one and replace it.

Sometimes boards are faulty or are sub-par irrespective of the fact you bought the same one.

Try these troubleshoots (board related):

  1. Flash all servos at 50hz first (to make sure there’s no conflict with the boards timers)
  2. Swap the Twist PIN to something else that is GPIO compatible (preferable with some distance)
  3. Use a different USB cable
  4. Try a different ESP32 board

– To check 2. first you can plug your Twist PWM wire into a working IO line such as one of the left/right motors. If it works as expected then you know the red/brown wires are placed properly & have narrowed it to a faulty board IO line (the PIN for Twist). If it still doesn’t work, then it’s either cabling, servo or frequency.

Hopefully this helps!

Thank you both for jumping into help out! After troubleshooting it looks like it was a bad pin. I mapped it to a different pin and now it works.

2 Likes