Arc32 Biped walking issue (zenta / Phoenix code)

Hey guys,

I’ve been working on this for days (I had several issues), but haven’t been able to figure out this last issue.

I’m using the following:
Zenta’s Code: post-p68955?hilit=Biped_6DOF_ARC32_XBee_PS2#p68955
Controller: PS2 Lynxmotion
Servos: Turnigy TGY-S9010D Digital Servos
Board: Basic Micro ARC32

Here’s a video demonstrating the issues:
youtube.com/watch?v=dzuc_rwLEFc

The symptoms / clues:

  1. When I press the Start button on the controller to turn the biped on, it goes to a tiptoe position (see photos below).
  2. After that, each time I press the DPad UP button, the biped lowers towards the correct stance (this is backwards I believe).
  3. When it attempts to walk, the active leg straightens out (towards the tiptoe position) instead of lifting up. (See video)
  4. When I switch to Single Leg Mode, pressing the LEFT stick UP, raises the leg up (this seems to be correct??).
  5. While in Single Leg Mode, pressing the RIGHT stick UP, results in the weird tiptoe step sequence.
  6. See photo below of biped stance with servo’s zeroed, it appears to be correct.
  7. Configuration is set for UseReversedKnee con 1

In general, it seems like almost all of the servos are reversed from what they should be… but clue number 4 above (Single Leg mode) kinda blew that for me. I’ve put tons of debug code in looking at the servo positions / trying to figure it out but I feel like it’s something simple I’m missing… that or the TGY-S9010D are doing something weird.

Thank you in advance for your help!

Initial tiptoe position:

Servos all set to zero with arc32:

A quick update. As usual, when you decide to ask for help is about the same time you figure it out :slight_smile:

Since there was some apparent “correct” movement in single leg mode, I incorrectly assumed it may not be a servo reversal issue and started looking elsewhere. I had also already tried my own method at reversing the servos that was … misguided :slight_smile:

So, I’ve since verified with a hitec servo that the TGY-S901D servos are reversed… so I made another attempt at reversing the angles (instead of trying to reverse the servo by their position). This seems to have greatly improved the situation. There are still issues, but they appear to be configuration related and I might have the tibia and femur switched.

Hopefully I’m on the right track, I’ll update the thread once I’m successful .

Looking forward to seeing your progress!