If you haven’t heard the news, Cozmo is the smartest toy robot on the market right now. He’s super intelligent and emotive, about the closest thing to a real-life WALL-E. The company behind the lovable robot, Anki, has made available an SDK for anyone wanting to program his or her own robot pal.
What is the Cozmo SDK?
For starters, SDK is short for “software development kit”. It’s essentially a set of tools used to develop software for a specific platform. Developers use these kits for creating mobile apps, video games, computer programs, etc. The Cozmo SDK (still in beta) by Anki lets you program the robot with just a few lines of code, rather than writing everything from scratch. It gives you access to Cozmo’s core features such as motor movement, facial recognition, and emotional responses. The SDK lets you program in Python, and if you’re not familiar with this programming language, Anki has you covered with easy-to-follow documentation.
How do I get started programming Cozmo?
Grab a computer, a smartphone, a micro-USB cable, a Cozmo charging dock, and a Cozmo unit. Make sure you’re connected to the Internet because you’ll need to download some files from Anki’s website.
From Anki’s website, follow the SDK “getting started” guide. It’s pretty straightforward and can be completed in about five to ten minutes depending on your device (Android and Windows require a few extra steps). For this review, I’m running the SDK on Mac OS with iOS on my Cozmo-connected device. Please see the instructions for Android here.
Example programs are available for download and include everything from basic movement to face tracking to animations.
What can I code?
Getting started in robotics can be a daunting task for beginners. A wide range of kits are available on the market but each differs in flexibility, usability, affordability. The advantage with Cozmo is the balance between these aspects; the robot is relatively affordable (it’s cheaper than these expensive kits) and packs of a ton of features that can easily be manipulated by the user. In a just a few lines of code, Cozmo can recognize faces, detect obstacles, and speak English. A few lines of code go a long way.
For this review, I cooked up a simple program where Cozmo would ask for his purpose, only to be disappointed and respond with “oh my god” by bobbing his head and forklift. This program used ready-made snippets of code to alter Cozmo’s voice and motor movements. Though, with enough time and energy, you can tap into the Cozmo “emotion engine” and create so much more.
Cozmo is capable of connecting to third-party applications such as Twitter and IFTTT (If This Then That). For example, you can program him to read your latest Tweets or notify you of stock prices. The setup for connecting Cozmo to these apps, Twitter, for example, is pretty straightforward. You add a few API keys to the code and run the program via your computer’s command line (terminal on Mac). The SDK takes it from there and gives life to Cozmo!
Where do I get a Cozmo?
The Cozmo SDK is compatible with multiple platforms and devices. It's easy to setup and use with little programming know-how. In addition, thorough documentation is available from Anki to help budding coders. On the downside, the SDK requires a tethered smartphone with the Cozmo app running in the foreground.