Converting a Mindflex to a MindWaveMobile Headset
This basically involves adding a Bluetooth serial transmitter (and configuring it) to the Mindflex Headset and changing some components on the TGAM1 board (the board that acquires the EEG data).
This ended up being a bit of an adventure – even after a good deal of research (reading datasheet's very carefully) and reviewing other peoples tutorials of similar hacks. In the end, it took about a week of part time research on components, Bluetooth (profiles, module boards, communication protocols), TGAM1 board (communication protocols, identifying board connection points, hardware settings etc.). Presently, I have a fully functional headset that is recognized by Neurosky's MindWaveMobile software as a MindWave Mobile Headset.
- Mindflex Headset ($10-20 on ebay)
- these are between $5-10 on Amazon or Ebay (cheaper in quantity, or if you are willing to wait, from China)
- should be able to use an HC-05 also (connections and configurations a little different – HC-05 can be configured either as a Master or a Slave module – unlike HC-06 which is only one or the other)
- I'm a noob concerning Bluetooth: protocols, host modes, etc.
- 10k resistor (pull up to set TGAM board to 57600 baud, ¼ or 1/8 watt)
- Hookup wire
- Soldering iron (and solder, of course)
- Multi-Tester/VOMeter (non-essential - mainly to verify connections)
- Magnifier (non-essential - to see TGAM1 board pins and labels clearly)
- 5V to 3.3V Level Shifter (essential if using an Arduino board to set up the Bluetooth module, non-essential otherwise)
- Some type of USB to TTL Serial Converter (for setting up Bluetooth module board)
Some Options for Setting Up HC-06 Module
- Adafruits FTDI Friend https://learn.adafruit.com/ftdi-friend/overview
- Only need 4 pins (Power, GND, TX, RX)
- Adafruit's Console Cable - USB to TTL Serial Cable - Debug / Console Cable https://www.adafruit.com/product/954.There are four wires:
- red (power)
- black (GND)
- white (RX) into USB port
- green (TX) out of the USB port.
- The power pin provides the 5V @ 500mA direct from the USB port and the RX/TX pins are 3.3V level for interfacing with the most common 3.3V logic level chipsets.
- Initially, this is what I was using (at first it was working through a terminal program using serial communication – then it just stopped working. It turns out I need a newer chipset for it to work correctly on Windows 10)
- BusPirate – this should work with no problem when combined with a terminal program (Teraterm, Putty, etc) in serial mode
- Arduino Board with USB connection
- Software Serial sketch
- This is what I ended up using and it worked fine – though you do need to upload the sketch a few times:
- Change baud rate of module
- change software serial baud rate – reload
Here are a couple of screen shots of the headset working with a couple of applications: