Sign in:

Hooray! And Programming.

It’s been a fun few days!  We launched MOSS on Kickstarter on Thursday and hit the $100k goal in less than 12 hours.  The pledges continue to roll in.  We’ve been celebrating and a fair number of us are committed to a round of Car Bombs at every hundred thousand dollars.

We’re psyched, but not surprised.  We picked $100k as a goal because we thought that we could hit it on the first day and that that success would be a whole story in itself.  The whole point of launching on kickstarter was to make a broad impact.  I’ll write about our decision to launch on kickstarter and the results later, though.  Now I’d like to address software.  Some people have asked about reprogramming MOSS modules.  Please forgive my long-form answer.

There are a few “levels of play” with MOSS.  Out of the box, people can snap modules and spheres together to build all sorts of reactive robots: robots that react to their environment by sensing and actuating.

With an iOS or Android device handy, kids can pair with a Bluetooth Module in a MOSS robot and control and communicate with their robot.  By February, we’ll have the three first apps (all free) ready to use.  MOSS Control is a panel of sliders that allows you to remote control (or remotely read data) on any of the 8 faces on the Bluetooth Module.  MOSS Log can graph (and export) sensor values over time, and MOSS Etch is a drawing program that can use Knobs, Distance sensors, and other various modules as inputs.

Advanced users and older kids will hopefully want to reprogram their MOSS modules.  And they will be able to!  But we haven’t decided exactly how.  At modbot, we all reprogram our MOSS Bluetooth modules by digging deep into C source code and sticking a little ISP header made from pogo pins onto an exposed PCB.  But this is not the way to encourage kids to program.

For Cubelets, we exposed an API to enable people to reprogram in C, but on the level of “neighbors” and “sensors” instead of pin change interrupts and all of the nasty little bits that go along with microcontroller programming.  We built Cubelets Code to reprogram from a browser window and Cubelets Studio as a standalone mac program.  We’ve learned a lot from these experiments.

Yes, you will be able to reprogram MOSS modules by writing C code.  But we haven’t decided what’s next from there.  We’re thinking about the API and at what level people can best interact with MOSS.  We’re playing with boxes and arrows languages like Max/MSP and block languages like Scratch.  We’ve discussed open sourcing everything.  We have a crazy idea about using Finite State Machines to program MOSS.  We’ve thought about using Arduino.  Should we virtual machine it?  It’s super fun testing out all of the options as part of our design process for a programming system, but right now we don’t know exactly where it’s going to end up!

Oh, did you make it all the way to the end and get a little disappointed because there aren’t any robots here?  I did too.  How about this card conveying robot?  It was Neville’s idea, Jon built it, and I get to show it off.