One of our core aims in creating the Cozmo SDK was to give users easy access to Cozmo’s advanced robotics hardware and software without requiring a high level of technical knowledge or experience. To do so, we wrote it in Python, a ubiquitous, readable language that’s used by creatives, educators, and researchers alike.

But as simple as the SDK is to use for those with some technical know-how, we knew a greater challenge was on the horizon: finding a way to give all users, regardless of age or experience, a way to access, learn, and engage with robotics in a compelling way. That’s why we introduced Cozmo Code Lab, a drag-and-drop programming interface based on the Scratch Blocks project, a collaboration between MIT Media Lab and Google.

With Code Lab, users gain instant access to sophisticated features including facial recognition and path planning, along with a repertoire of world-class animations created by a team of Hollywood veterans.

The response thus far has been humbling, with parents, students, and educators using Cozmo and Code Lab in after-school programs, workshops, and robotics clubs. iD Tech, the esteemed tech camp organization, is even offering two Cozmo-based courses next summer, one of which uses Code Lab to teach students about artificial intelligence, programming, and robotics. In many respects, Code Lab has already accomplished what it set out to do. That’s not to say Code Lab’s journey has come to an end—in fact, quite the contrary.

The current Code Lab experience uses an intuitive, icon-based interface that’s perfect for novices.

Arriving December 5 via a free app update, we’re greatly expanding Code Lab’s capabilities to include many user-requested features including if statements, math operators, variables, function calls, and more. Not only are the number and types of blocks increasing, we’re also introducing vertically-oriented block stacks that more closely mirror the way text-based code is structured.

Tiny Orchestra is one of the included Featured Projects, and allows users to create a symphony using Cozmo’s cubes.

The combination of increased functionality and enhanced presentation serves as the perfect middle ground between the streamlined, icon-based Code Lab that’s currently available, and the full Python-based SDK. As part of the revamped Code Lab experience, we’ll be calling the current interface Sandbox Mode, and the new one Constructor Mode.

With so many inspiring projects already created using Code Lab and the SDK, we know many of you will use the new Code Lab experience to surprise and delight the world in ways we can’t yet imagine. With that in mind, we’re also introducing user-created Featured Projects, making it easier than ever before to captivate and entertain Cozmo users around the world with your Code Lab experiences.

An early look at the revamped Code Lab user interface.

Expect to hear much more regarding Code Lab in the coming weeks. Until then, let us know what feature you’re most looking forward to in the comments below.

Posted by Kaiser

Top Comments

  1. cyke says:

    Great !
    Now I’m waiting impatiently the Cozmo app update from 5 December 2017 :sunglasses:
    Code Labs “Constructor mode” !

  2. cyke says:

    Could you list all available blocks by grouping by color ? I didn’t see some block categories like sensor block in your " tiny orchestra " example :cry: !
    Thank you

  3. kaiser says:

    There is a blue “sensors” category on the left side of the screenshot. :slight_smile:

    We’re still finishing up a few things but we’ll definitely post all of the blocks and categories as we get closer to release. You can see an early version of the update being used in this video:

  4. cyke says:

    Thanks @kaiser
    I found another youtube video from Tech Advisor with a better view from this new Constructor Mode :sunglasses:

    No Spoilers :grin:
    You are going to discover six featured projects made with constructor mode code labs you can remix (like in scratch !) :grinning:
    And also you find all blocks from the following categories : Actions , Animations , Events and Sensors !
    Very interesting !

  5. This upgrade looks like it will be a big step in gaining access to all of Cozmo’s functionality. Will it include data readouts from all the sensors (camera, accelerometer, gyro, edge detecting light sensor, cube sensors etc). Also, will we able to print sensor data to the OLED screen? And how about lower level camera data such as the x and y coordinates of objects in the frame?

    Thanks for all your hard work in making Cozmo even better.

  6. Just thought of another feature hope will be in the update: individual speed/direction control of each of Cozmo’s treads.

  7. You’ll be able to control mm per second and ° turned per second, as seen in the second video.

  8. ztirf says:

    Can`t wait for the improvements,love programming with scratch because its easy to understand and complex enough to create great projects!Thanks a lot Greetings Fritz

  9. Super excited for the update. It’s like a brand new Cozmo next month.

    @kaiser I have two questions hopefully you can help:

    (1) What will be the difference with the “Sandbox” and “Constructor” tabs I see in the above image? From reading your article (it’s great) I understand Sandbox is the old and Constructor is the new. So would that let you toggle between the current interface of the original Code Lab (Sandbox) and the new vertical interface of the 12/5 updated Code Lab (Constructor)?
    (2) The featured projects tab. This is really exciting and I think it parallels along with other STEM products like Sphero. My assumption is you will be vetting out some of the very best user projects to share with all Cozmo owners but how will you obtain the projects? Will there be a feature within the app that gives you access? Are you planning weekly features and highlights?

    Any feedback will be great. We are recording a “coming soon” video later today/tonight about the pending update.

    So much future content to create! So excited for this!!!

  10. kaiser says:

    HI @SJGamingBoys!

    1. Yes, the current Code Lab experience will be renamed Sandbox in the new update, and the vertical interface will be called Constructor. You will be able to use either depending on your needs. Of course, you won’t be able to switch interfaces in real time while creating / remixing a program as Sandbox only has a subset of Constructor’s blocks.
    2. There will be a user submission feature / process. We’ll have more details on this soon!

    Looking forward to your new video! :slight_smile:

  11. I guess super excited jumping up and down would be my response but I’m not going to record myself doing that.

    We started tinkering with some other STEM products on our channel over the past several months just to get a baseline comparison on what else is out there. First, nothing can touch Cozmo - he is by far the superior STEM product/robot on the market. It is interesting to see how others (Osmo & Sphero) have enable creation sharing with other owners. Can’t wait to see it implemented for Cozmo. It’s going to be awesome!

    Can’t wait for the “official” release!

  12. Hello.
    The zoom-reduction function for small-sized (5-inch) phone screens will be?
    P.s. I’m sorry I did not notice on the right on the screen :slight_smile:

  13. cyke says:

    I believe that now you can post as you very close to release :grinning:

    Could you now give us more details about the user submission ?

  14. Jazmo says:

    I can’t wait! :dark_sunglasses:


  15. Looks really nice.
    Will there be a feature to get my hands on the actual code behind the blocks?
    This would make life much easier if you’re coding yourself with the SDK.

    And if so, what language would that be? Python? C?

  16. cyke says:

    Please @michelle include " Laser smile !" game in the new Code Labs :grinning:

  17. Hi @cyke,

    Yes! In the upcoming Cozmo app release, you will find “Laser Smile!” under the Code Lab Constructor sample projects.


  18. Hi @Phillsen,

    Unfortunately this release will not have a way to transform the blocks into SDK code, but it’s a great idea.


  19. cyke says:

    Thank you , @michelle.
    It was very nice to see you in Anki headquarter thanks to Mayim video. :grin:

  20. cyke says:

    Hello ,

    I have discovered in this interesting video the green block category : DISPLAY

    display on Cozmo’s face
    clear all pixels
    draw text at
    set text scale to %
    set text alignment
    draw line
    draw rectangle
    fill rectangle
    draw circle
    fill circle

    Great ! :sunglasses:

    Could you now to show all blocks categories in detail as we are very near from the new Code labs release ? :star_struck: @michelle

  21. I have been watching videos, and demos of Cozmo for a few days now, and I must say I am very impressed by its evolution. It has come a long way since October 2016. I am very excited to see how much people have evolved this cute little robot. In 2016, it did seem a little lacking in games, and things it can do. But today, we will have even more fun with Cozmo when the new launch of the constructor mode, and hope to get more people interested.

    I myself do not currently own a Cozmo, but seeing its extreme cuteness everywhere, I am hoping to obtain one in the near future.

    Thank you everyone (Anki, & the people of the SDK community) for all your hard work on this little robot! I will be sure to follow the ever growing community to see what people have done to make Cozmo do many different things .

  22. kaiser says:


  23. Shabaz says:

    This really looks great! I can’t wait to start coding as a beginner :grinning:

    Some things may sometimes look hard at first but I hope to become a good coder by using the code lab with Cozmo.

  24. TheYLF says:

    hohohho, sure a possibility to swap between SDK code and Codelab would be a kinda holly thing.

  25. TheYLF says:

    I’m running Codelab Constructor on my Echo phone (cheap phone, ECHO_MAX_V07), using Android 6.0. I must declare Codelab Constructor make the phone lag way too much (more than 1 s between the screen touch and the block effective move, it’s very annoying, more and more when the program become big.
    When my program become big, I’ve to send my program to my son’s Iphone, then I can remix my own program without any lag on Iphone, then, resend the prog to my Echo when finished (and let my crying son, for whom I bought this Cozmo (!) plays stupid things again, on his precious and beloved Iphone ))…
    Sacrifices are usual for fathers, but if Codelab constructor can be more optimized for Android, this would be family-appreciated :robot:

Continue the discussion in the Anki Developer Forums