Interstacks is a system of snap-together, modular electronic blocks and visual authoring tool (Stackbuilder), that enables anyone to rapidly build new electronic devices. First choose the electronic hardware blocks you want to use for a project. Snap them together into a stack. Download and install the Stackbuilder authoring tool. Connect the included USB cable between your stack and computer. Then use the Stackbuilder software to create a stack blueprint that tells your stack what you want it to do. Press the “Send to Stack” button in Stackbuilder to send your blueprint to your connected stack and save it. After your blueprint is working correctly, you can disconnect the stack from your computer. Every time your stack is connected to power, it will load the blueprint you sent to it.
The Stackbuilder authoring tool allows you to create a stack blueprint (“program a stack”) by simply dragging and dropping hardware and software blocks into the blueprint area, and then drawing lines (channels) between the input and output terminals of those blocks. Each block has input and output terminals that send or receive messages. Messages can be numbers, characters, strings, binary data, or other data structures like lists (e.g. [ 2, 4, 6, 8] ) and Python dictionaries. The channels you draw define where messages sent from output terminals are delivered. You can draw as many channels in to, or out of, a terminal as you want. In this way, you are defining the asynchronous message flow that will run inside your stack. By allowing multiple stacks to communicate with each other and/or the internet, you can build sophisticated, large scale distributed systems.
You can mix hardware and software blocks in your blueprint. The hardware blocks correspond to the Interstacks hardware modules you purchased. Software blocks can be found in the built-in “Library” tab in Stackbuilder or you can create your own, in the “My Blocks” tab of Stackbuilder, by typing text using the Python programming language.