wiki:ArduinoHackingWithPuzzleboxBrainstorms

Arduino Hacking with Puzzlebox Brainstorms

As of version 0.4.5, Puzzlebox Brainstorms provides support for using an Arduino to operate a hardware device based on detections from an EEG headset such as the NeuroSky MindWave or NeuroSky MindSet.

This functionality was added as part of a project to build a Brain-Controlled Wheelchair as documented on Instructables.com.

Arduino UNO

Outline of Operation

  • Puzzlebox Brainstorms receives EEG data packets in JSON format from a ThinkGear Connect compatible socket server, such as Puzzlebox Synapse. Data packets for levels of Attention and Meditation are measured until a certain pre-set threshold is reached (for example an Attention level of 60% or higher) at which point the wheelchair control code to drive the motors forward is triggered.
  • The electric wheelchair was originally controlled via a parallel port interface which was no longer available on modern computer systems. The Arduino was introduced in order to replicate the function of this interface. Very simply put, each of the digital output pins 2 through 10 were wired to a parallel port head and switched "on" (by writing "1" to the digital output) or "off" (by writing "0" to the digital output) as appropriate for the given control command to be sent to the wheelchair.
  • This arrangement would work for any hardware system in which the Arduino is effectively being used as a software-controlled "switch" to power an electrical circuit with a 5V current.

http://www.instructables.com/files/deriv/F6R/Q6W7/GHADGXI6/F6RQ6W7GHADGXI6.MEDIUM.jpg

GUI and Console Software

  • The relevant portion of code which received wheelchair control commands either from the QT Framework-based GUI (or via the console if executed directly) is released as Open Source under the GPLv2 and is available from the Puzzlebox Brainstorms subversion repository (SVN) here:

http://brainstorms.puzzlebox.info/tracker/browser/trunk/Puzzlebox/Brainstorms/Wheelchair_Control.py

Arduino Sketch

  • The relevant portion of code which was loaded onto the Arduino prototyping board is also released as Open Source under the GPLv2 and is available from the Puzzlebox Brainstorms SVN here:

http://brainstorms.puzzlebox.info/tracker/browser/trunk/brainstorms/arduino/puzzlebox_brainstorms_wheelchair_noisebridge/puzzlebox_brainstorms_wheelchair_noisebridge.pde

http://brainstorms.puzzlebox.info/images/screenshot_brainstorms_preview-Wheelchair.jpg

Last modified 8 years ago Last modified on 03/29/11 10:41:37