Getting started with Nybble the robot cat

I made my own robot dog from a discarded remote controlled K9 (and I still need to write that up). Obviously, I needed a cat to balance things out. The trend seems to be for home robot campaigns on Indiegogo to not end well (looking at you Aido, Alpha2, Buddy, Jibo, Vector); however when I saw the campaign Nybble - World’s Cutest Open Source Robotic Kitten it looked much more grounded in reality. Also, unlike some of the robots I just mentioned it was quite affordable.

What a cute cat

I backed the campaign, read on to see what it delivered.

It’s not unusual for crowdfunded campaigns to face delays. This is especially true for electronics. The only campaigns that I’ve personally backed that delivered on time were Duckietown and now Nybble.

Another way in which Nybble stands out is that it’s made from wood. Laser-cut plywood to be exact.

Nybble's hello posture

Wood might seem an unusual choice for a robot, but Nybble’s created, Rongzhong Li , has succeeded in designing a robot that is very lightweight (important for a legged robot that needs power to support it’s own weight). The pieces fit together like a puzzle with no glue required. Screws are used only to hold the servos in place.

Box neatly packed Digging in All Nybble's pieces

Assembling Nybble is a bit like a puzzle as you need to fit the pieces in the right order. It’s quite enjoyable although I needed to read the assembly guide and watch some of the tutorial videos a couple of times in order to get some bits to work.

Originally the assembly guide was a google doc, but the website now appears to have been improved and the documentation is now just normal web pages and appears much improved.

So far so good, now for the less good…

Rongzhong Li made the decision not to include batteries with the kit in order to make shipping easier. The batteries chosen were 14500 Li-ion batteries (the number means 4mm in diameter and 50mm in length) which are the same size, but not voltage, as normal AA batteries. In theory these are available from multiple sources. However, there is a wrinkle: most batteries ship with protection circuitry, which:

  • increases the length to 52-54mm which means they do not fit in the supplied battery holder
  • the protection circuitry prevents Nybble from drawing enough current to move very many servos at once - this means the robot cannot actually walk and can create some very strange looking behaviour where the robot appears to be suffering some kind of fit.

This would not be so bad if suppliers made it clear which batteries contained protection circuitry and which did not. Unfortunately this is not the case. There is a forum thread “Report your batteries” dedicated to people indicating which batteries work and which do not. I first tried some Nitecore batteries which did not work before finding the forum thread and getting some Enerpower 14500 850mAh batteries from the Netherlands. Threads such as “Frustration level: very high” show both the bizarre behaviour that could occur if the wrong batteries are used and how frustrating this could be for people.

Even with the right batteries you are still not out of the woods as the current drawn by the servos is right on the edge of what the batteries can provide and code intended to check battery levels can cause motion to pause. This can be tuned somewhat. Another mitigation is adding another capacitor to the servo rail to provide a bit more transient power as can be seen in the thread “Partially Alive”.

Once Nybble has been assembled the next step is to calibrate it which took me a while as I managed to get to this stage before realising that the Nitecore batteries weren’t going to work.

My current state is that I have managed to calibrate Nybble, but have not got it to walk successfully. When I next find some time to work on this I plan to added a capacitor to the servo rail to see if this helps.