Hi there, This is Rongzhong from Pittsburgh. Eight months after my first post on OpenCat, I have quite a lot to update. Most importantly, I’m going to launch my first kitten on Indiegogo on Monday, Oct 22nd! The kitten’s name is Nybble. Links will be posted here, on my Twitter @PetoiCamp, or on Petoi.com.
Indiegogo demo, edited by Wei Ying
I will need your support to keep working on it full-time. Subscribe and share to your friends who may like it. You awesome makers can also teach it new tricks and bring more fun to people around the world!
Nybble doing exercises
I’m having an excellent marketing team helping me on the Indiegogo side, so I can keep this post more technical. The following figures should be quite self-explanatory. I’ll very briefly introduce Nybble’s features, the OpenCat framework, timeline, and what I learned during the efforts in pushing the project forward. Feel free to ask questions so that I can make a more comprehensive documentation for the project. I have an invitation-only Slack group. Contact [email protected] if you wish to join the community-wise discussion on the project. For general technical discussions, you can open issues on https://github.com/PetoiCamp/OpenCat. Please allow me more time to polish the codes though.
Before going into every details, I wanted to ask the following questions:
- How much information does a machine need to walk?
- How much shall we invest to implement such a machine?
- How much does a cat eat?
I don’t have answers to the first two questions corresponding to software and hardware. But I do know that a cat doesn’t eat much to be an acrobat. Kitten, cat, Simba, they all move in a similar way. There should be some shared secret among Feloidea, and maybe across all walking mammals. I even tried baby crawling to remind myself of those secrets. It helped.
Nybble is probably the lightest and fastest robotic cat in the world that really walks. Its motion is driven by an Arduino compatible micro-controller. It stores instinctive “muscle memory” to move around. An optional AI chip, such as Raspberry Pi can be mounted on top of Nybble’s back, to help Nybble with perception and decision. You can program in your favorite language, and direct Nybble walk around simply by sending short commands, such as “walk” or “turn left”!
Nybble is a kitten. Though lightweight in both hardware and software, Nybble is an optimized version from the grown-up OpenCat. And it doesn’t eat as much.
Nybble is based on the OpenCat framework to be covered in later paragraphs. The wooden frame is a retro design in honor of its popstick framed ancestor.
A brief history of Nybble
I also borrowed the wisdom from traditional Chinese woodwork (in honor of my ancestors), to make the major frame screw-free. You may also figure out the puzzles by yourselves.
A series of animations will be available once we start shipping, in case you need some hints to solve it.
Head Group Assembly
Instruction for assembling head group
Torso Group Assembly
Instruction for assembling torso group
Nybble is Soft!
This clip shows how Nybble’s springs work during collision. Again, don’t try it at home!
Shock absorption joints
The circuit is a quite conventional master-slave structure. The following block diagram works for a DIY version that I’m going to release after this busy season. All the adaptive movements you see are achieved on an ATmega328P chip, the same one as Arduino Uno. Of course there are faster chips at quite affordable prices. I’m just challenging myself on the question “How much information does a machine need to walk?” By limiting the power of the motion controller, it helps to clarify the duties of the hierarchical control layers. People with different expertise can contribute and optimize their part. It also helps to keep the rhythm of walking without disturbance from other threads.
Communication with Pi or Other Chips
Even without a Raspberry Pi in the kit, the codes on Nybble is always listening to higher level commands. You can send those commands either through Arduino IDE, Bluetooth UART, or serial connection to Raspberry Pi and other chips.
For example, if you want to move Nybble’s leg, just type or encode the String “m8 30”, it will rotate Nybble’s 8th joint to 30 degree. Or you may try “kwkL”, that means call Nybble’s skill “walk Left”, and Nybble will walk left, without you controlling every detailed limb movements.
My friend, Jian Yu, helped to design the all-in-one NyBoard V0, to ease the wiring and future development. It has on board power management with tunable output, various communication and controlling ports, and an optimized layout. We also used the highest frequency (20MHz) that ATmega328P supports, and added an external 8KB I2C EEPROM to store more skills or so-called instincts. I really appreciate Jian’s skill and patience when I pushed the design precision to 0.25mm, to fit the geometry not only for Nybble, but also for the full OpenCat, Raspberry Pi, and leave room for your favorite extension boards.
NyBoard was designed to avoid all the tall components on Pi that may conflict with installation. Its 2×5 communication socket accepts the pins on Pi. It powers Pi, listens to Pi, and there’s a jumper switch for changing I2C master. If you have another preferred chip to ATmega328P, just take full control of the board! The onboard chip can still watch the battery level for you. You do need to design a mount if the optional screw holes don’t match your board. By attaching a Pi or other AI chips, you will be able to add more talents to Nybble, make it listen, see, and think. In some joke conversations, we even wanted to market Nybble as “The most expensive Raspberry Pi case that walks”.
Nybble’s is adorable, but it’s still a precise instrument. Only people with careful and patient mind can make it walk. To help you through the challenges, we also include a nice gadget, the “L” tuner for calibrating your Nybble at times. Just turn Nybble to calibration mode and align the observation windows, type in proper calibrations and Nybble will remember them at once.
Below is a snapshot of Nybble kit. Nothing special, right? Note some parts may subject to change as I finalize every bit, such as color, length, and number of screws.
As you may find out, there’s a FTDI to usb converter used for uploading and communicating with NyBoard, just as for an Arduino Pro Mini. I think it would resolve your concern that whether OpenCat will be open source. You WILL have the Arduino code to be uploaded, otherwise you can’t play with it.
Parts not included are mini usb to USB cable (make sure you google mini usb and micro usb and understand their difference), 2 x 14500 3.7 V Li-ion batteries and a smart charger. Be careful with fake batteries that claim more than 850mAh capacity. I’ve been using EBL 800mAh batteries and they work well.
More batteries will allow you play longer with Nybble. I usually keep programming all night with one pair of batteries, but they would die out quickly if you just play with Nybble as a remote controlled toy.
I would say OpenCat is more open source on the software at this moment. Hardware takes serious investments. It’s only possible to open once we pay off our bills.
Programmable Gaits and Behaviors
After assembling Nybble, some entry level computer skills is needed to upload the code and tune Nybble to walking order. You will need higher level skills (or at least the willing to learn) to enjoy the tech behind Nybble and teach it new tricks. I used a lot of high school math!
I’m very bad at version control even with the help of Git. So I tried really hard to keep the code compatible with all my walking models. You may find some none existing shoulder joints “#defined” in the code. Just ignore it, wait for my new models, or start to build your own.
During the 2.5 years’ evolution of OpenCat, a rough framework is becoming clearer. It started from a Raspberry Pi kit, introduced an Arduino as the central pattern generator, and is open to any extensions/upgrade when needed. If the following figure appears confusing, just think about how you walk without thinking, and how you plan a jump across a gap.
Legged motion is challenging in both software and hardware. Now you have a cheaper platform besides simulation to study dynamic balancing and motion planning. Later when some precise and powerful actuator is ready, you can scale Nybble up to a dog, a horse, or even an elephant!
Nybble is a small step that an individual maker takes to overcome obstacles and bring his creation to the world. Nybble is also a bridge to fuse cool technologies, and connect the developers around it. Your support will define its future!
For the past eight months, I’ve been dealing with many life changes and hard decisions. There were some good offers, but I just got tired with endless talking. I wanted to keep working till I have a product, rather than a good story or market research to attract investors. So it’s all up to your feedback whether I can continue on the project.
In June, I quit my job and moved to Pittsburgh, all-in my short unemployment gaps allowed on visa. Even until last month, I could not make large orders because of the possibilities to move again.
I was lucky to find Factory Unlocked (https://factoryunlocked.com/), a product commercialization center where I can have a working and manufacturing space. Unlike those investors who care more on profitability and sales strategy, they really care for what I want to create. I also won their free membership during their bootcamp to save budget for the project. I learned laser cutting from their training programs, watched Fusion360 tutorials, and started to design Nybble.
Read More info….