About project2891

Project2891 is a system of devices which can be collaborated with directly, without direct communication with original artist. The project is focused on developing a series of devices (called nodes) capable of communicating with each other via the net or other electronic means. These communications are processed by bits of software to trigger events in each node. The whole system is designed to be modular as possible, allowing others to play with as much or as little of the makeup of the project as they see fit. All design, software and media components of the project will be released under a GPL style license as they are produced, along with Wiki entries serving as a mini-manual for the system.

If you are not already familiar with project2891, you might want to take a look at some of the nodes before diving into the details below. Seeing examples of the actual work should help the following make more sense.

What it does

This project is intended to operate on a number of levels. Primarily, the intention to create a series of devices which are interesting as individual artworks. Complementary to this, each device functions as a node for the larger project, using a simple protocol to communicate with other nodes. In this sense the "real" work is the accumulation of nodes, and their effect on each other. This is my attempt at creating a body of work which is designed from the ground up to facilitate distributed collaboration.

The project can be broken into 5 elements

Nodes

In most cases, nodes are manifested as electro-mechanical devices, or are computer-generated. In the abstract, the physical devices are used to mechanically translate physical events into digital information, and / or vice versa. This data is then "transmitted" to a server, called the switchboard which acts as the central contact point for all of project2891's nodes. Similarly, computer-based nodes connect to the switchboard and provide a interface to the project without requiring any specailist hardware or other devices. Any of these inputs and outputs are components of the node, and can be directly controlled using protocol2891.

The makeup of the nodes I'm working on are all based on on a similar aesthetics of mechanistic movement and sound. Specifically, I'm interested in exploring the cumulative consequence of repeated action. Simple mechanisms seem to be a natural expression of this exploration. Therefore, most of the nodes consist of simple movements and events. Balanced arms, inflating and deflating bladders, metal clicking on metal are examples of this. When considered individually, each element of the device seems trivial. When taken as a whole, however, their presence is a bit more formidable.

protocol2891

The only thing required for a device to be part of project2891 is its use of protocol2891. At it's core, this is reliant on digital communication. At the moment, it is "transmitted" via the http "GET" method. This allows any device that is able to request a webpage to be a node in project2891. In the future, other Internet based methods such as email, instant messaging, and twitter will also be supported. Ultimately, the goal is not require a internet interface for all nodes, or a traditional computer for that matter. Any device capable of encoding or decoding International Morse Code or operating a mobile phones (via SMS) has the potential capacity to be node of project2891.

The protocol is used by sending a message comprised of a small string of ASCII characters with the following syntax: /nd101 /c1001 red up 2 /et. To find out the specifics of how this works, see the protocol2891 wiki page for examples.

The Switchboard

The switchboard is a script living on the project2891 webserver that processes and responds to messages using protocol2891.

To call the switchboard directly, send a http request using the GET method containing the message to correct URL. An example:
http://www.twentyeightninetyone.net/switchboard/switchtest.php?msg=%2Fnd001+%2Fc1001+this+is+my+message+%2Fet
For more information see the .

Software

There are two kinds of software used in project2891: software written specifically to control a node or parse protocol2891, and pre-existing software written for other purposes appropriated for project2891. Most of the software written specifically for the project is wrtten in Python, PureData, and Arduino. The tech section has all the gorey details. Please keep in mind that you don't have to be a programmer to collaborate with project2891. If you can work a web-browser, you can engage with the project. More techy involvement is more than welcome too.

Every attempt has been made to keep all aspects of project2891 free from dependence on proprietary software and hardware. Although the project is developed and tested primarily on Linux (Ubuntu in particular), users of other operating systems should have no trouble joining the party. The aim is to not require anyone to spend money (or infringe on copyright) to use the software implemented in project2891. A side benefit of this is that most nodes can be run or designed using older, recycled computers and other common electronic bits.

Creative Commons License
alt-w logo mediascotlogo Glasgow Culture and Sport Glasgow City Council
Something you should know:

This project is part of the research supporting Ben Dembroski's PhD candidacy at the Glasgow School of Art. As such, any information generated during the course of correspondence or collaboration regarding this work may wind up in my PhD thesis for all the world to read. Please read the fine print and research methodology before collaborating with this project for full details what information may be disclosed, and the manner it will be presented.