Searchable CRS

buildscc | 02 Feb 2013 | | projects


Congressional Research Services creates hundreds of very detailed documents each on a variety of topics for congressmen. The goal of the this project is allow these documents to be searchable by the general public.

General Info

our piratepad:

Local Eateries

buildscc | 02 Feb 2013 | | places


CityCo: A convenience store. Found at 725 Comm Ave, right next to Warren towers.

Espresso Royale Cafe: Hipster coffee shop with tasty sandwiches and a variety of bagels. 736 Comm Ave.


UGrill: 712 Comm Ave. Pizza, Burgers. Inexpensive.

Sal’s Pizza: Right next to UGrill. Also has pizza. No one can really tell which one is tastier.


Beijing Cafe: Cheap Chinese food. Greasy but tasty. 728 Comm Ave.

Nud Pob: Thai food. The best Pad Thai and Basil Fried Rice around. Next to Espresso Royal, 738 Comm Ave

Aaron Swartz Memorial Hackathon

buildscc | 02 Feb 2013 | | events


Aaron was a hacktivist and friend of many in our community. He helped create RSS 1.0; contributed to Creative Commons; was an early builder of Reddit, where he’s often acknowledged as a co-founder; created the framework; and more recently, became a data liberator, first with PACER and then with scholarly articles from JSTOR, both of which got him into trouble with the law.

Aaron’s Demand Progress project helped stop SOPA, the Stop Online Piracy Act in the US, which threatened to have far reaching unintended consequences.

Aaron Swartz committed suicide on Jan. 11, 2013, but his work on making the world a better place should not die with him. Join us for two days of understanding his work and contributing to keep his memory and projects alive.

(Intro courtesy of Bangalore hackathon.)


Room B26 in the Math and Computer Science building on 111 Cummington St, Boston MA 02215. (We are located in the basement)


Start: 12pm Feb 2

1pm: Hackathon Opening Meeting. Brainstorming, discussion of projects, organizing into groups.

8pm: Touch base meeting– talk about what everyone’s been working on.

Sometime during the day on Sunday we’ll have a closing meeting and sendoff where we discuss what’s been worked on over the weekend. We’ll decide when this is happening once everyone has a chance to get started on projects Saturday. We can’t stay in the rooms later than 8pm on Sunday, so the sendoff meeting will be before then, and we’ll update the schedule here as soon as a time has been decided.

Note this schedule will be updated as the week progresses.

Our space

We’re associated with Boston University, so I’ve gotta throw in a disclaimer asking everyone to be considerate of our affiliation and not do anything illegal. Alcohol isn’t condoned on school property.


Check out this page for ongoing projects/ideas happening in BUILDS!(also listed are projects that were worked on at the hackathon at Noisebridge (in SF)

Original noisebridge/global idea page here (projects tab)

Bring whatever you’d like to work on; we have a lot of power outlets. Our hackerspace has more of a computer science/electrical engineering slant, so if you’re planning on doing physical work, we don’t have a lot of space/equipment to offer in the way of that but we’ll try and accomodate. Let us know beforehand if you have something particular in mind!


BUILDS number: (617) 353-2070 Email:

DIY tDCS Device

buildscc | 13 Dec 2012 | | projects


The goal of the project is to build a functioning transcranial direct current stimulation device, and to study its effects on the brain.

Later stages of research might include developing and testing interactive “brain training” programs that utilize a combination of tDCS and the user’s willpower to effect long-term changes in neural activity…



Brain-Device Interface

A brain to device interface is achieved via electrodes placed on the user’s scalp. The two electrodes, the cathode and the anode, function as positive and negatives terminals to the device respectively. Studies have shown that areas under the effect of the cathode show decreased firing rates of neurons, while an opposite effect was achieved by areas under affect of the anode.

One standardized method of categorizing locations on the scalp in reference to experimental procedure is the 10-20 System.

The Device


Data Collection

Proposed flow of information between components of experimental apparatus:

    Subject-->Electrodes-->EEG board/similar "processing" (fpga/dsp?)-->DAQ board-->computer-->software---> raw data
      ^   |                                                                ^             |         \------> visualization
      |   \---------------other inputs (switches, cameras, etc)------------|             |          \-----> "quantitiative data"
      |                                                                                  |
      |                                                                                  V
      \----------------------------------------actuators/stimulators/lights/etc<----DAC Board

Data Processing

Python pyEEG sciPy MNE (In Python and C)

C bwtool (loading eeg data) FFT

Java Apache Common Math Lib Parallel Colt scientific library Jsci Jtransform Java EEG Tools

Dummy EEG Data

Python Environments

Biofeedback libraries

EEGLAB suffices for a large component of the data visualization, training, and analysis we will perform in the course of this project, but it does not have much support for biofeedback and actually serving as a scriptable BCI interface.

So, I’ve identified two programs/libraries that would be suitable for triggering computer events/input/output based on biofeedback:\


Brainbay is a windows application with a LABVIEW-like interface for signal input, processing, and I/O driving. Possible behaviors include:

  • driving mouse cursors
  • causing keyboard pressesses
  • causing parallel port I/O
  • playing sounds or MIDI tones
  • displaying images or videos

in response to certain desired EEG signals that can be found through experimentation and analysis via EEGLAB or a similar library.



However, maybe the pre-packaged capabilities of BrainBay might not be enough. Maybe we want to make a full featured video game using 3D graphics for training. Maybe we want more complex logic than what BrainBay can provide.

In this case, a combination of python/pygame, and some python-based biofeedback library might be useful. Candidates include:

Running Experiments

If scripting dialogues/testing procedures in EEGLAB proves too difficult, psychopy seems to be a wonderful scripting engine for doing just that… (runnign scripted as oppsoed to human driven experiments, of course, eliminates certain sources of experimental error, blah blah blah)


OpenVibe, developed at INRIA, is another training/control alternative that also looks like it might be able to supplant EEGLAB too….

Component devices, costs, etc


Two types: passive, active Per wikipedia/openeeg: passive = less circuitry/amplification/shittier signal quality active = more driving circuitry/higher signal quality/


PEBL: The Psychology Experiment Building Language


tDCS Overview

Linux Computers

buildscc | 02 Nov 2012 | | about

We have a few machines here that are running Debian Stable. To make it easier to maintain and fix them, here are the specific things that we are doing. The last time that the machines were updated is Friday, 2 November 2012.

—- They all have static IP addresses. This is configured in /etc/network/interfaces, by adding a stanza like the following. The ‘address’ line will depend on the actual static IP being used.

allow-hotplug eth0 iface eth0 inet static address gateway netmask

—- The admin account [which is ‘george’ on the main four linux machines] should be added to the ‘sudo’ group, by running gpasswd -a [username] sudo

—- Syntax highlighting in vim, which is disabled globally by default, is enabled in /etc/vim/vimrc: syntax on

—- They all have multiple aptitude sources, as configured in /etc/aptitude/sources.list

deb squeeze main deb-src squeeze main deb squeeze/updates main deb-src squeeze/updates main deb squeeze-updates main deb-src squeeze-updates main deb squeeze-backports main deb-src squeeze-backports main

—- The programs running backported are: xorg [with all dependencies— very specifically, we need the intel drivers] linux-image-3.2.0-0.bpo.2-amd64 iceweasel

—- We run the display manager ‘slim’: aptitude install slim

—- We used to be running a version of Iceweasel not in the main repo, to get an updated version. However, now that Iceweasel 10 has been backported, we’re running that.

—- We are running a more modern version of Chromium, because the one in Squeeze is 12 versions behind. So, this line was added to /etc/apt/sources.list. deb lucid main To trust that repo, we added its key manually. sudo apt-key adv –keyserver –recv-keys 4E5E17B5 This provides us with Chromium 18, and updated libvpx [vp8 support!], and one or two other minor things.

—- To make the Intel drivers dual-screen in the correct manner, the following line was added to /etc/X11/Xsession.d/95BUILDSDUALMONITOR . Obviously, this line will need to be altered based on the relative location of the monitors. #!/bin/sh xrandr –output HDMI1 –right-of VGA1

—- Printing is hard and no one understands. First, install these packages: cups system-config-printer xfprint4 Now, as root, run system-config-printer, and use “find network printer”, and add a printer at builds-clunky. Then, run xfprint4, and switch the printing selection to CUPS. Name the printer BuildsClunky, the description HP LaserJet 4350, and the location BUILDS.

—- Here is a specific list of development-related packages. Some of these require updates that will be tricky. blender [This definitely needs an update to be usable.] kicad [Version seems fine] freecad [Version seems fine] gimp [Version seems fine] netbeans [Not in the repos. Must be compiled.]

—- xscreensaver has been configured like this: It is set to “only one screensaver”, and the screensaver is always BRIGHTLY COLORED. It is set to start automatically by setting an autostart with the command xscreensaver -no-splash

—- xfce4-terminal has been configured with MY SPECIAL COLOR CONFIG, which I have tyrannically imposed on everyone. Due to its length it is on a separate page, xfce4-terminal configuration. It belongs at ~/.config/Terminal/terminalrc

—- The configuration for xfwm is on xfwm4 configuration. It belongs at ~/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml . Simply clobbering the old file seems not to work, but I don’t understand why.

—- Here is a list of packages that we’ve explicitly installed, that haven’t been mentioned here. Ones that are STARRED** are backported.

mesa-utils xfce4 xfce4-terminal texlive-latex-base texlive-latex-recommended texlive-latex-extra pgf gedit emacs23-nox vim nethack gimp gdb chromium-browser browser-plugin-gnash

** sl cowsay screen nethack-console tmux xscreensaver xscreensaver-data xscreensaver-data-extra xscreensaver-gl xscreensaver-gl-extra xscreensaver-screensaver-bsod xscreensaver-screensaver-webcollage evince-gtk gedit openjdk-6-jre openjdk-6-jdk

Meeting Minutes for 2012-10-10

buildscc | 10 Oct 2012 | | meeting-minutes


  • CSAW - We ended up qualifying!
  • MIT LL CTF Lecture tonight
  • Evernote CEO gave a talk in BUILDS
  • BUILDSBOT met over the weekend to discuss chasis designs. Will meet again this weekend to discuss batteries
  • Mini Makerfaire is happening soon in summerville
  • VR Bike meeting this sunday at 1