Sample Code for SQ3U + PS2 Controller

  • If this is posted in the wrong forum please move it for me. *
    I am building a quadruped walking robot. I went to the page for the
    “Symmetric Quadruped Kit (BotBoarduino)” I tried to download the
    Sample Code for SQ3U + PS2 Controller. The file named Hex_Cfg is ok.
    The file named QuadC_PS2_SSC32 is not ok. The file ends where #include
    <Phoenix_Code.h> is located. I assume that there is more to this file
    or am I missing something. The files are located on GitHub under
    Quadrupeds. I have downloaded other files from GitHub without
    I have the PS2 Robot Controller linked up with my
    BotBoarduino sending serial commands to the SSC-32 Servo Controller.
    I will have 4 robot legs each with 3 DOF. Just need code examples on
    how to control a 3 DOF leg with the PS2 Robot Controller.

Any help would be great.


You are correct - the file was missing. We have since uploaded all relevant libraries to the Github folder.
The code includes controlling the quad using the PS2.
Really curious to see an image of the finished robot - it looks like it will be massive - can your battery supply enough current for 12x 805BB servos?

Thank you for your reply. I will go get the files. And yes being the typical newbie I gave no thought to battery capacity until I started testing the leg I built. That was part of the reason I decided to only use 4 legs. I will keep you posted. You guys have an amazing site so keep it up.


Just an FYI - The code up in the Lynxmotion github Quadrupeds project ( a zip file made from my github code base: … ad-Support

With a round of edits from Jeroen Janssen [aka Xan], to make it work better with the Lynxmotion SQ3U body.

I will soon integrate his functionality changes into my code base, although I may choose to do the functional changes in a different way as to make them more general purpose for the other quads and the like. As I do not have one of these Quads (I have a Lynxmotion Quad using the old body and a different leg style), I will not be able to test the configuration out, but will hopefully preserve it properly.

Note: As the Lynxmotion project is now only holding a zip file, you will not be able to track the changes from build to build, but hopefully it should not be difficult.

Also the layout of their Zip file is probably not optimal as Many of the libraries that are included do not pertain to their Quad on a Botboarduino. Also other folders should either not be in the library or should be a sub directory under the Phoenix folder to make them an example. In case anyone is interested, the directories in the zip file and state/used by is as follows (alphabetical order):

I2CEEProm - Unchanged - probably not needed. Is used in some of my other platforms to read and write to an eeprom I put on my shields

Phoenix - Main code base. Note, there are several sub-folders which are examples for different robots, that are built using the code base. Note: not all of them may work with this Quad version of code base.

Phoenix_Driver_AX12 - Not needed for Lynxmotion Quad, used for driving Bioloid servos. In particular used with Trossen PhantomX robots. Not updated yet for Xan’s quad changes

Phoenix_Driver_ServoEx - Won’t work for Botboarduino (Needs Arduino Mega)

Phoenix_Driver_SSC32 - (Changed)Needed - Servo driver that uses Lynxmotion SSC-32 to drive the servos

Phoenix_Input_Commander - (Unchanged)Input code that works with the Arbotix Commander (XBee) that is sold by Trossen Robtics.

Phoenix_Input_DIYXbee - (Unchanged)Input code that works with our DIY XBee remote control, for the few of us that have them

Phoenix_Input_PS2 - (Unchanged)Needed for the This kit.

Phoenix_Input_RC - (Unchanged) - Input Code that tries to take inputs from an RC controller (Hitec)

Phoenix_Input_Serial - (unchanged) - Input code that works with the old Lynxmotion Powerpod Serial test program - Maybe used by the BT version???

PS2X-Lib - Needed for PS2 version - Not in my Parts - I assume another copy of the PS2X project, that Lynxmotion also has in Github which is forked from Bill Porters original.

QuadC_PS2_SSC32 - Needed - BUT not a library. This should either go in the users main sketch folder or should go as a sub-folder under the Phoenix directory. Also should be renamed (both directory and .INO file), as it is not using the C legs and was modified to the new quad. When I merge I will rename and put as example. When user opens and wishes to make changes they will then be prompted to put it in their sketch folder…

QuadC_XBee_SSC32 - Like the PS2 version - except setup to use our DIY XBee…

Again hopefully soon I will merge these changes into my main code base. May be getting a PhantomX quad to test them on soon. So will give me reason to do so.



Thank you very much for the info. I just started looking through some of the code I downloaded from you guys.


hello, i am building a SQ3U

i have the needed libraries included, i get an error with both the Phoenix titled libraries is it possibly because i am using the SSC-32U


Sorry, I have not looked at much of this in probably a decade. Which is also reflected in this thread, which the last posting was in May 2013.

And I no longer have the hardware for it, as I think I donated my quad to goodwill.

Probably your best chance to get started is to maybe look at my github project

KurtE/Arduino_Phoenix_Parts: Lynxmotion Phoenix Program for Arduino split into libraries (

You need the main Phoenix project included. There are examples there. Although it is not organized in the newer library formats.

But under the Phoenix directory is another directory LSQuadA_PS2_SSC32 which has at least a version that at one point was probably complete… No idea if it still builds… I keep meaning to archive these github projects.

Good luck


Did you select the right board type and COM port?

1 Like

Yeah i just unplugged the board before i took the screen shot

1 Like

Can you confirm you’re trying to upload the code to a Botboarduino, NOT an SSC-32U?

1 Like

Yes indeed to the BotBoarduino, i keep thinking maybe if i understood the errors i could figure it out

Normally you can look up errors in Google and there are discussions around them.
This could also be that your main folder does not have the same name as the file itself.

1 Like