MakerBot Print is our newest print-prepration software, which supports native CAD files and STL assemblies,
allows you to interact with all your printers via the Cloud, and many other exciting new features.

Download Now


Kame: 8DOF small quadruped robot

by bq3D Jan 13, 2016
Download All Files

Thing Apps Enabled

Please Login to Comment

Can you tell me which Android apk is used to control?

How to you wire and program this? i have all the part just stuck on those 2 things

Need help!
'D1' was not declared in this scope

Could somebody please post a picture of electronics board inside Kame, and the electrical schematics?
I am just a beginner and I am struggling to understand github and how to install firmware and program the robot
I would appreciate any help anybody could give me

Hello, I recently did one and with the help of a friend I was able to implement the firmware. I modified the PCB and used a model airplane.
Follow the link:
If you need anything, I'm at your disposal.
good luck.

Poor Mini Kame - 8 DOF Quadruped Robot

Are there oscillators connected to each servos?

Greetings! I have printed out one of the brackets for testing and measuring. I am seeing about .010 larger diameter hole than the bearing size diameter recommended. On average are you folks seeing the bearing hole oversized? My scaling is correct and my printer is on average very accurate. I would like to see a light thumb press at the least. My bearing hole is .325 / .328 The 8mm bearing should come in at .31496. I can drop down the scaling but I want to confirm with others first on the fit.

Thanks so much!!


where might you get the electrical parts?

for arduino, you may like this remix http://www.thingiverse.com/thing:2317065

Ez Arduino 8 DOF Quadruped Robot - MiniKame

Hello !

Can you open miniKame to see all the electronics plz ? I can't understand how the 8 servo are connected to the board..


Could you make a mini guide how to upload the code to nodemcu with arduino?

i like this guy,but how should i control it ,with software?

Just out of curiosity, how are you printing the brackets without support? What orientation on the bed? Any help would be appreciated. Thank you!

Is there a free library for programming quadrupeds and such?

What kind of servos do you use? 9g-Servos?


is it possble to have photos about the inside of kame , how you have organized servo battery..Etc


thank you

Thanks Nice project any link for printed bearing with good size ??? Looking for it Time for chine ses to send me the right One in métal ... Thanks

Maybe I'm just being blind but I can't find assembly instructions anywhere aside from that picture in the gallery. Nothing on GitHub either. Is there a detailed list of instructions somewhere...? O.O

I used the fourth image to get the gist of assembly, which went pretty quick. Hope that helps!

Glad to hear it's going well for you! I'm a newbie and have zero experience with coding or control boards. Can you recommend any specific items and software?

How is your own Arduino coding coming along? I know you were getting an error.

Haven't got it yet. I was going to reach out to adafruit and see if they have any advice or forums to get pointed in the right direction.

Right on, I'd be interested in staying in touch! Putting it together is no challenge but I have no coding experience and you're the first person to ever response to any of my comments on here.

Let me know if you hear from Adafruit.


Need a little newbie help here... trying to compile the Arduino code for an Adafruit Huzzah ESP8266, but getting the following error in minikame.cpp:

minikame.cpp:9:21: error: 'D1' was not declared in this scope
board_pins[0] = D1;

This repeats for each of the other pins (D2, D3, D4, etc).

This is my first project using any ESP8266 board, let alone the Adafruit Huzzah. Any advice is appreciated!

Hey javierIH I have installed all software drivers to the arduino ide, but I cannot figure out how to upload files to the board itself(which of all files do I upload and how)

Hi. You have to upload the file named main.cpp. Other files are libraries (octosnake and minikame) and if you are using the Arduino IDE, you'll have to put them in the libraries folder.

could someone guide me to a replacement printable model for the F693ZZ?

I've printed most of the parts but those bearings are impossible to get in my country and getting them online + customs., taxes, courier fees and other forms of taxpayer thievery would lighten me of a sum that I could probably spend on an off-the-shelf hexapod, servos included! Not to mention they'll probably be here by fall. 2017's fall, that is.

many thanks!!!!

Would someone be so kind as to explain what OctoSnake is and where it comes from? It is located in the kame.py class within the given code for this project. I am struggling to understand where this class is coming from and what all it entails.

Any help would be highly appreciated. Thank you in advance.



OctoSnake is a little library to implement oscillatory movements on robots.
I think you aren't looking in the correct repository. The actual repository with the code (and parts) needed for this robot is: https://github.com/JavierIH/miniKame
There you can find, in code/arduino/src directory, all code and libraries needed for program the robot with an ESP8266 board.

I think the code you were talking about is part of another robot, which is a bigger version and its located here: https://github.com/JavierIH/kame , in this case, it has another implementation of the OctoSnake library in Python which is available here: https://github.com/JavierIH/pybotics

I'm going to write this info in the readme of the projects, because at now sure is a bit confusing. Thank you for your feedback hackerkat.

Thank you again, JavierIH! This is incredibly helpful. I was really struggling to figure out OctoSnake.

And no problem! I am glad to be of help!

Hi all,

I am really excited to build this little guy, however I have a question as far as the screws.

What sizes are all of the screws and tiny parts? How many of them are necessary for this project?

Thank you in advance for your help.



Hi, here you can find the BOM with all the screws and nuts: https://github.com/JavierIH/miniKame/wiki/BOM

Thank you so much JavierIH! This is very useful!

hey guys!
I was having trouble coding this for vanilla arduino, so I made some code for it(pins 9-12)
/* Sweep
by BARRAGAN http://barraganstudio.com
This example code is in the public domain.

modified 8 Nov 2013
by Scott Fitzgerald


Servo myservo1;
Servo myservo2;
Servo myservo3;
Servo myservo4; // create servo object to control a servo
// twelve servo objects can be created on most boards

int pos = 0; // variable to store the servo position

void setup() {
myservo4.attach(12);// attaches the servo on pin 9 to the servo object

void loop() {
for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
// in steps of 1 degree
for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees

Love the design and will build one that fits my generic 12g Metalgearservos. I had a quick look at the ESP8266, wow that thing is so capable.

What are you guys using to control the Kame? I have played around with the main.cpp in the repository and made a really bad webserver out of it, so that one connects with a phone-browser and then just have a page served by the bot that does Ajax-calls to the Kame. Still have to see if that works in a realized bot.
Are there any plans to make it a bit autonomous, like with a ultrasound sensor for eyes?
And last questions, is there an explanation available for the oscillator controls, this is wicked and I have no experience at all with it :-)

ditto for @anttho's question. I'm almost done mine and am having trouble with this. Can you show us which servo on the bot maps to the code please.

Did you two figure it out? I am hoping that the combination of the servo numbers from the repository of the full size Kame together with the servo to port mapping in the miniKame code will work. Looks something like this:



|(2)__)(0) (1)(__(3)|

|| | KAME | ||

| |

| |

| |

| |


|| ||



USBs |

board_pins[0] = D1;
board_pins[1] = D4,
board_pins[2] = D8;
board_pins[3] = D6;
board_pins[4] = D7;
board_pins[5] = D5;
board_pins[6] = D2;
board_pins[7] = D3;

Nothing from my side yet. Still waiting for parts to arrive before I can do real testing. Thx for posting your findings. Can you clarify what you are referencing pls? Is the front of Kame to the left? Which is the upper (servo inside body) and which is the leg servo?

As a FYI - I 'm using an Adafruit Huzzah (w/ESP8266) and have modified the code to work with it and Blynk. So far so good from the standpoint of having 8 PWM pins and being able to control it from a phone with Blynk. When I'm done, I'll post my results with code to my blog @ www.PlastiBots.com.

Sure, I am referencing the minikame.cpp from https://github.com/JavierIH/miniKame/blob/develop/code/arduino/src/minikame.cpp together with the code for the large Kame https://github.com/bqlabs/kame/blob/develop/code/kame.py . Looks like 0,1, 4 and 5 are the inner servos - and 2, 0, 1, 3 are the front.
I got all of the hardware here, except for a battery. Will try to somehow fit an Upstepper, USB-Loader circuit and a 1s-Battery in there, so have to modify a bit and therefore it will probably take me longer to have a finished bot.

Thx @Bloomdoft. The second link clarified the layout . Will try it and report back in a week or so.

which servo goes to what pin(header) I cant seen to find that info

any help would be appreciated

how to open file in electronics folder.

I believe you have to download and install KiCad

its free

thanks, I am confused about this application. I've tried before but get an error library message. but somehow now I can open it.

the only thing I can say about your library error then working is that it's a free program

the only thing you can do is get the latest build

Have you considered this project with 9g servos? (sg90 as well)
I'm wondering if that would be a good choice due to it's very low price (even with its lower speed and torque).
I'm totally learning freecad to change the project so it might fit theses 9g servos.
Any sugestions?

compare sizes of servo, they do not fit in height.
also you need to use BEC (voltage step-down), TGY-306 is a HighVolt servo for direct power from 2S LiPo. most 9g servo use 4.8- 6.0 vols. don`t forget about current, one servo has 1-3 Amper current consumption. youre BEC may burn out.


My first reaction was too: what a cool robot but what a pity that I need about 160-200euros of servos. I am confused... You say dont forget about current and mention 1-3A current per servo and we have 8 of them. Your Lipo is listed only 460mAh so that does then not last more then 10min or less or the current in real is not so high?

Anyway I am going to look for ones with same size and if required I bring down the voltage to 6V, use 4x NiMh which are cheap and can be charged in a normal charger. Tnx for sharing the design!

Yes, I've seen that the size is not exactly compatible, I'm considering a design modification.
The goal here is to make it more cost effective, especially for those like me who lives in countries where everything becomes much more expensive due to importation fees and so on. In this case we need to be more economic in our projects.
Anyway, I still haven't laid many thoughts about the desired circuit, however I'm planning to use an arduino nano along with more severe modifications.

I really like the little robot and will build one ASAP. But first I would like to know how you control it? I assume that you connect to it over WiFi, but through what? Please explain this. Also a version that uses Bluetooth would be nice so you can use a PlayStation controller or like wise.

I'm planning on making this in a STEM unit at our school with nine 6th graders. I can handle the 3D printing and assembly but need a little more clarification on the controller. Is the Arduino code on GitHub good for say a UNO? Is a motor shield necessary? Any info would be greatly appreciated!

NodeMCU is based on ESP8266 which is basically a Wifi module with some GPIOS; the module can be programmed using the Arduino IDE by installing a plugin (https://github.com/esp8266/Arduino).

Servos do not require a H-Bridge (they are driven by pulse width), they can be directly connected to an Arduino digital output pin, just keep in mind that the VCC (5V) for the servo must not be an IO pin as each servo can draw a lot of current.

You can use one of the standard Arduino libraries to drive servos, have a look at the tutorial (https://www.arduino.cc/en/Tutorial/Sweep).

Nevertheless bq provided their code (https://github.com/bqlabs/miniKame/tree/develop/code).

You should buy this one (HiLetgo Eleduino), more user friendly with the USB connection; the other module is just a breakout board with a builtin antenna, some bootstrapping maybe required (http://bit.ly/23wwBy7).

Thanks so much for your help. About to order all the parts!

can you send all scheme for build it?
connections and code fpr arduino

Maybe I am not looking right but I cannot find anywhere the schematic?
And the link you gave here says Kame is powered by a RPi not an ESP8266...
Confusing, I want to build this robot but how...Only thing I see are pictures, the CADfiles and some code but if I dont know how to wire it I cannot build...

I'd like to see some video of this little guy working.

bellissimo , quale scheda usa per pilotare i servocomandi ?

Hi guys! Excellent design! What servos are you using?

Hi! We are using Turnigy TGY-306G-HV. The full BOM is available here: https://github.com/bqlabs/miniKame/wiki/BOM

22€ each servo.. could you please explain why were those coreless servos chosen ?
Can you also provide an schematic how the wiring is done ? Thanks.

Hi, we have chosen this servos because its speed makes Kame able to jump. Also, they work at 7,4V, and this allows us to plug them to the LiPo battery without any converter. At this time, I haven't a schematic, but the circuit its simple. The board used is a NodeMCU. Signal wires of the servos are just connected to its PWM pins. At this time, we are developing a simple PCB for making all the connections easy (It will be published on GitHub too).

Anyways, we have published all the sources of the mechanical parts on GitHub, it would be nice to receive a pull request modifying the printable parts for allow different servos :)

I'll give it a shot, if successful I'll submit the changes but I'm planning to change the dev board to an Arduino Mini/Nano and the servos to something cheaper to start.

[ TGY-306G-HV: 23x20x12 50ms 21g ]

I found two candidates:

  • DS238MG: 29x19x13 140ms 22g
  • HK15158A: 36x19x15 70ms 25g

I like the idea of using an arduino nano to simplify the project, especially using cheaper servos.
I'm considering the 9G's due to it's very cheap cost (1~2 dolars per unit), and I already have them =D
Let's talk about these modifications.

warning about plastic gear.

I love the Kame design and I am also considering to adapt it for using 9g servo's.