Wednesday, August 19, 2009

Introducing the Illuminato X Machina

The Santa Fe Project is a crazy one, and over 6 months ago, David Ackley and I originally talked down at the Santa Fe Institute about what we would need as far as tools were concerned in the software and hardware domain in order to really get a “feel” for what we were about to try to solve. We sketched a few ideas on the back of scrap pieces of paper (we didn’t have any napkins lying around), and came up with a list of humble and meager features we’d want in a hardware platform: infinite scalability, ad hoc interconnectivity, dynamic boot load and code flashing, physical manifestation of software code, physical computing, compatible with Open Source language work in physical computing like the Arduino platform, a very fast core processor, a more powerful chip than an 8 bit Atmel, yet an approachable basic set of functionality that would allow us to expand on it easily, and a large community of heavy duty, hardcore software and hardware hackers.

Simple! Errrrr…

Then I jumped on a plane and headed back to New York and rode my motorcycle as quickly as I could to Connecticut, and met with Chris and Mike, and said, there’s got to be a way to build this thing… right? Mike laughed at me, but Chris said bring it on.

(6 months later)

And so, it’s with that same kind of pride that you get when you fix a bug and a 1000 line program compiles on the very next try that I proudly introduce the Illuminato X Machina.

The Illuminato X Machina is the result of an Open Source collaboration between David Ackley from the University of New Mexico, Liquidware, and Illuminato Labs. It’s what you’d expect if Complex Adaptive Systems met Open Source Hardware at a bar, drank too much and had a love child that was raised on Physical Computing child support in the suburbs of Modular Electronics. Then one day that child spontaneously cloned itself hundreds of times, and decided to hold hands with all of its clone siblings so that it could play a crazy N^2 O*log(O) game of telephone. Or something like that.

It’s a small “motherboard cell” that can interchangeably link and connect up to other cells, either rightside up or upside down, to adaptively route packets and power to its neighbors, like a grid of biologic cells, passing nutrients and resources to their neighbors. Also, each board can program its neighbors using a dynamic bucket-passing bootloader that allows any given cell in the grid to over-ride or re-program neighbors.

Each cell runs a 72 MHz ARM processor with 56 digital I/O pins, and the ability to accept power from any one of its 4 edges. This means that the cellular grid can expand in any direction, and the reversible interconnections mean it can grow like a crystal in any orientation. I've uploaded more pictures to my page on Flickr too.

The Illuminato X Machina boards will be available in a limited quantity run that's ready 2 months, so I've put them up for pre-order here. Basically, it is like the Borg of open source, DIY physical computing… it’s crazy, and 7 guys and gals will be hacking it like mad over the next couple of months :-)

23 comments:

Matt said...

wow... my inbox is getting flooded with emails :-) the project is on wired blog, which is kind of insane!

Dave Baldwin said...

WOW I just saw you guys on WIRED!!!
http://www.wired.com/gadgetlab/2009/08/modular-motherboard/

Craig said...

You might enjoy this video of a similar project http://www.youtube.com/watch?v=fYhWXB9aud0

abloom said...

This is an amazing looking project. I might just have to pre-order and start hacking with the Arduino again. All I need is a project...

Matt said...

@Dave - that probably explains the emails... that's pretty nuts. wow!

@Craig - that's a pretty cool video - what's the interconnection mechanism? i've been noticing that parallelism is really making a huge comeback in projects... wow, this was only a few days ago too...

@andrew - thanks :) yeah, i've been getting lots of emails over the past few months from guys that wnated to keep using arduino, but do more advanced hacking stuff, and that was a big part of the motivation too... it uses the same ide, programming interface, etc. but because it's modular, it's more than IO and physical computing projects (though it can also still do that stuff too)

Matt said...

ok i just got a couple of emails from tz and mike about the crazy leds on the board... there are leds on the *sides* of the pcb, as in they're etched into little notches on the edges, not on the top or backside... i've been joking that this is the "military grade" version of the board, because it makes it look like a ufo... and that basically makes it look insanely cool when the boards are syncing and blinkying in the dark...

dano said...

A highly related project, also recently developed is the LumiNet: An organic illumination network --- see here:

http://hci.rwth-aachen.de/luminet

Anonymous said...

great stuff guys... congratulations to this wondeful project ! ...

you make us hardware hackers proud :D

Anonymous said...

Have you looked at the XMOS processors? They're fast multicore microcontrollers with a built-in communications fabric that's designed for doing exactly this kind of thing -- you could (more-or-less) just hook up the chip's communication links to your side-facing connectors and it'll do all the routing for you.

You might also find occam-pi of interest -- it's a parallel programming language based on the Transputer's occam that works well on small devices like this. (Disclaimer: it's one of the projects I work on, so I'm biased here...)

SYS64738 said...

You guys should check out XMOS! ( www.xmos.com )

4 xcores per chip
1600 mips
8 threads per core
built-in communication between cores ( both in- and external )

It's a great platform and VERY easy to work with. Includes language constructs for parallel programming.

Matt said...

@dano - i love the jacket! holy crap... i could use that when i ride my bike around boston...

@tom - thanks a lot.. hardware hackers unite! no seriously, the really nice thing is that the concept and term of "hardware hacker" is definitely gaining momentum. it doesn't have the negative connotations of software hackers who do illegal things, but rather it feels more nerdy, which i like :)

@atsampson - xmos looks pretty cool... i'm definitely going to look into it. i was looking around at all kinds of chips back in the day, and most of them were just a little too limited, or didn't have the right toolchain. open source was pretty important, but it looks like they're at least partly. ok seriously i was going to write a minilanguage like parallel basic or parallel forth. in fact i'm working on that now... could there be like an occam-pi-lite maybe that runs on these chips?

Matt said...

@SYS64738 - cheers! definitely... do you use the chip yourself? hit me up at inthebitz at gmail? this current version is definitely arm based, but i'm curious about xmos

a LOT of projects are coming out of the woodwork, especially all the emails i'm getting :) i'm going to have to write a blog about all the parallel projects out there...

Unknown said...

I really like the idea. Do you have any documentatiopn/datasheets anywhere? I looked around your site a bit, but didn't find anything.

I'm curious about how much power each module uses. How many modules "deep" can you go before you run into power issues?

Even though each module can accept power from all four sides, at some point the modules in the center will be too far from the power supplies at the edge.

Duff said...

Just finished the video...

Sketches were mentioned in the video, which suggests Arduino programmable?

That would be sweet.

Matt said...

@natmartin - thanks! yeah, it's not on the site just yet because dave is cleaning it up as we speak, to get ready for his class at UNM. it'll all be up at www.illuminatolabs.com eventually... and the grid depth all depends on the power. right now, you can run it off of usb and I've tested to a grid about of 3x3. mike's building a dedicated power board too to support everything, and that's getting speced out to support a grid of around 15x15 boards... before the "center" starts to fade... but technically you could power cycle the fring to redirect power anyway you'd like. i need to write a bigger blog post about the power management...

@duff - yep, through a branched version of arduino, called the antipasto arduino ardvark edition... the Illuminato X Machina runs code compatibly with the Arduino boards, yep

Shiprat said...

Looks really interesting, this was like seeing something out of my dreams, right here on the internets..

Anyways, when and where will i be able to follow the progress and find tips for programming and so on?

//Shiprat

catblade said...

Umm... at least 1 girl. Don't assume all of us are guys. =P

Matt said...

@shiprat - yeah, at least that's dreams not nightmares... :) i'm going to be writing everything up with the other guys on antipasto.blogspot.com, so right here... with code and schematics and stuff all in a git repository...

@catblade - um oh yeah... sorry! i edited the blog so it reads correctly now... *cough* guys and gals. ps hello!

Matthew said...

Woo! You guys made MAKE:Blog too, which is where I found out about this awesome project :)
http://blog.makezine.com/archive/2009/08/scalable_open_source_computing_plat.html?CMP=OTC-0D6B48984890

Unknown said...

MASSPRODUCE
i think you have just started a monster

Unknown said...

ARGH you've gone and done it! You've created the terminators chip!!

Seriously this is Brilliant. This sort of platform is the future of AI.

Matt said...

@Matthew - thanks a lot, Make is one of the first blogs I ever added to my RSS feeds, so it's sortof symbolic every time they cover a project of mine, it makes me quite happy

@eric - haha... for now, it's limited production until I finish coding up an operating system for these guys...

@lance - terminator 2 was an awesome movie. i used to watch it as a kid in repeat. the part where they break into the lab, and grab the chips that used to run the old terminator arm... ridiculously cool. i wish life were as cool as terminator 2 more often

keen101 said...

You guy's should make a wireless shield for one next. That way they can get updates over wireless.