Software Environment

PC/Mac Programming

In cooperation with Carnegie Mellon University's CREATE lab, we have developed an open-source library to allow control of Brainlink from a computer host. Programs written in this environment run on the computer and communicate with Brainlink to control devices and receive sensor feedback. Our library currently works in Java, with support for Jython and Processing planned. We may add other programming languages based on demand from the community.

Android Programming

We have developed an environment and API to write Android Apps for your Brainlink. You write the apps on a computer in Java, and then test them on any Bluetooth equipped Android device; because we use Bluetooth, you must have a physical phone to test your Apps. Your apps will run on the phone, and communicate with Brainlink to control devices and gather sensor data.

Firmware Programming

The Brainlink firmware is open source, and you are encouraged to hack it. In this way, you can create entirely stand-alone programs that use the Brainlink's special capabilities without requiring a connection to a computer or phone. Brainlink's firmware runs on an Atmel Xmega controller, and is written in C and compiled with the freely available AVR-GCC. Brainlink includes a bootloader that reprograms the main program over its Bluetooth connection - you do not need any special programming equipment to reprogram the firmware.

Utilities

We've provided a number of standalone utilities that you can use to test out your Brainlink or capture and record IR signals.

Full Source Code

The most recent source code is always available on Google Code. You can checkout both the computer-side software as well as a new Android App (in alpha).