The idea is quite simple. What if you could run a slot car race using your brain?
We did a bit of research on this and it didn’t take long to realise we already have all we need to make these ideas come to life; we just needed to connect the dots and find an easier way to integrate different disciplines to make the magic happen.
These are the steps B-Reel went through:
- researched components and library we could have used
- procured a device that reads mind signals, a Scalextric, Arduino, some tools and electric components
- designed a small electronic circuit to connect Arduino to Scalextric
- wrote the Arduino script to control the Scalextric
- wrote a small Processing application to control the car with the computer mouse
- connected the brain reader device signal to the Scalextric
There are few commercial devices that claim to safely read your brain signals. We ended up choosing the Mindwave headset from Neurosky for this experiment because of its unobtrusive design and its affordable price. Then we got a basic version Scalextric and started to play around with it. Slot cars are awesome. Digital is already the past – tangible is the future. The principle is straightforward: there are two cars on separate tracks that you can control with a handset. The more current you let pass through the handset, the faster the cars go. You can design your track and challenge your friends. Many of us here at B-Reel have fond recollections of this childhood game, and it was good fun to return to it now as part of an incredible R&D project!
The next step was getting an old Arduino Diecimila and starting to figure out the easiest way to connect it to the Scalextric so that we could then write a small application to control the speed of the cars using the computer, for example moving the mouse. This involved a few steps, first of which was designing the electronic circuit to replace the typical Scalextric’s handset controller with a programmed Arduino device. The guys in the Arduino forum were extremely helpful in this case, making the process super easy.
The circuit is based on one component called MOSFET. A transistor is used to amplify or switching electronic signals. In this case Arduino sends a PWM output to the gate connector of the MOSFET which acts as variable resistor in place of the usual handset controller – which is in fact a potentiometer. The Arduino microcontroller was programmed initially to fade a value up and down to make the car start and stop after few seconds. Once this proved to be working, we used Processing to enable computer-to-Arduino interaction. An early test consisted of controlling the speed of the car moving your mouse cursor. The final exciting step has been connecting the Mindwave device output as input for our setup. Mindwave uses something called ThinkGear to let 3rd party applications read the mindset device data. Luckily Google showed us the path to a ThinkGear Java socket library that can be used with Processing to capture mind activity data from the Mindwave device.
At this point all the components are connected and working, opening the door to new ideas and exciting new developments!