I have finally gotten around to re-writing some of my old code and re-recording a proper demo of controlling physical objects using thoughts by interfacing an EEG headset with an Arduino. While this technology is interesting and exciting, before anyone sees this as an endorsement for this particular EEG headset, I strongly recommend reading my full review of the device below. Those of you who have no interest in purchasing such a device can simply enjoy the show
.
Basic EEG Concepts:
Note: if you’re already familiar with EEG I recommend skipping this paragraph and going straight to the video.
From Wikipedia: “Electroencephalography (EEG) is the recording of electrical activity along the scalp produced by the firing of neurons within the brain.” In medical applications EEG is used to detect conditions such as epilepsy by recording and observing electrical activity from the brain that travels along the scalp. In reality what we’re dealing with are a bunch of ADCs connected to electrodes attached to the scalp that are able to detect minute electrical signals and process them in such a way that they can be analysed. The EEG headset used in this project is NOT a medical device, nor is it suitable for such medical diagnoses.
Emotiv EPOC Headset Review:
Please note that this review is strictly based on my experiences, observations and opinions of the device and should not be taken as gospel. If you’re curious about the device I suggest researching it on your own and comparing my review to what other people are saying about it.
The story:
My obsession with the Emotiv EPOC headset began when I saw an episode of Discovery Channel’s TV show “Prototype This” starring Joe Grand and Dr. Andrew “Zoz” Brooks who are teamed up with a few other people to create awesome prototypes and show the process. In the episode the guys used the Emotiv EPOC headset in order to control a vehicle’s transmission to shift from neutral to drive as part of an overall system that would use bio-feedback to slow/shut down a car’s engine if the driver who was remotely controlling the vehicle experienced “road rage.” I can’t say enough good things about this TV show and was extremely disappointed to hear that Discovery not only cancelled the show, but sold off everything in the warehouse incl. the projects for dirt cheap, but that’s another story. The episode had me so excited about the possibility of controlling physical objects with thought alone that I looked up the company who made the device, which was not actually in production as of that time. I was still so psyched that I pre-ordered the $500 developer edition headset so that I’d be one of the first people to be able to get a crack at playing with this thing.
Fast forward several months to July 2009
Defcon 17, Las Vegas 2009
While helping a friend work on his badge hack in the Hardware Hacking Village at Defcon 17 I saw Zoz standing around and couldn’t pass up the opportunity to pick his brain. Among other things, I had asked him for his opinion on the Emotiv EPOC headset after I had told him that I pre-ordered one. After a slight pause he simply replied “It did what they said it would do.” This was a somewhat less than enthusiastic response compared to what I was expecting, and I was about to find out why for myself.
Shortly after Defcon I received the headset. The first thing that caught my attention while unpacking it was the container that the felt pads came in. There was a sticker on it that read “WARNING: First off-tool sample. This unit leaks slightly. Use upright only. It will be replaced when the tooling is properly adjusted.” I should also point out that I initially received the headset in early Oct 2009, and as of today, nearly 7 months later I *STILL* have yet to receive a replacement. The next thing I found disturbing was that the “tentacles” on the headset would actually split apart slightly exposing the wires underneath. I posted my concerns on the forums and was told that it was due to a manufacturing error, that the pieces were simply cut a bit too long. The post from the company on the forum actually suggested that a possible solution was to cut each of them and glue them in place but to be careful not to nick any of the wires while doing so as it would void the warranty. (sarcasm)Pro.(/sarcasm)
Despite all of this I was still excited to get it up and running. Since I’m already discussing the “Cons” of the product I will continue and talk about the “Pros” at the end of my rant
. There are several restrictions that I knew about and willingly accepted when I purchased the headset, but I was hoping to overcome some of them with a bit of effort. In particular, the SDK only works in Windows and the licensing agreement restricts you to only being able to distribute applications you create (whether you want to charge for them or offer them for free) through Emotiv’s own online store. You also do NOT get access to raw EEG data with this license, in order to get that I would have had to have spent $75,000 at the time I placed my order. That price was later reduced to $7500. Around this time I had gotten some apps written and working using the API as well as a wrapper written by “the0nex” to let me use the API in C#, but I was frustrated with the fact that I had to use their USB dongle to receive the signal which needed not only the cost of a PC but also the cost of a Windows license to run any embedded project. Shortly thereafter, somebody posted pics of a teardown that he had done of the headset. I recognized the wireless communications chip immediately as I had worked with it before. It uses the NRF24L01. Having previously worked with this chip I was confident that I would be able to create my own embedded receiver and hopefully get a very limited embedded version working that didn’t require super expensive equipment. Even if it only detected one cognitive thought or facial expression or whatever, at least it was something. After doing some tinkering with the USB dongle to analyse the data coming from it, it was revealed to us on the forums that the data transmitted from the headset was encrypted and relied on the library and PC processing power to decrypt and analyse it. So… if you’re thinking of purchasing this product be fully aware that you will need a Windows PC in order to do anything at all with it. There is also a hard-coded limit of up to 4 simultaneous actions that it can detect, but I have had problems getting it working reliably with more than 2. I’m not alone here, and this has been debated on Facebook as well as their forums. The company states that they have had a scientist successfully make use of 8 “cognitiv” functions at a time, but no supporting documentation or any details were given. People in forums (who didn’t actually own the product) were saying that it was because it requires significant training to get your brain to be able to produce these different states. Of course both of these claims are entirely possible/probable, all I can tell you is that I have personally never gotten it to reliably (ie: 90%+ success rate) gotten it to detect 3 distinct states without mixing them up and everybody else I have personally spoken to has reported similar results. As I posted my growing frustration on the forums I was sent a personal message offering me a free upgrade to the raw EEG data license on condition that I never speak of it. I wrote back stating that this was not what I was looking for, but if they were going to offer it I’d certainly accept and play with it. I went on to explain that what I was REALLY interested in was some kind of embedded solution that could run without a Windows box (or even libraries that would run under linux since some relatively inexpensive micros can run linux distros, and I get to save a few hundred on the Windows license). I can only assume that I’m not the only person this offer was made to, but even after telling them that I’d check it out, I never heard back from them again. Shortly after this the (originally $75,000) raw EEG license was dropped to $750. I’m guessing this indicates that there was either a huge problem with their business model, or their market research.
One more quick thing: The felt pads that go on the sensors do get dirty and nasty after a while. I’ve been cleaning mine in isopropyl alcohol, which has kept them in relatively good condition. Others have not been so lucky. People (almost since day 1) were posting on forums that they wanted replacement felt pads. Some had been dropped and stepped on accidentally, some were attacked by the owner’s cat and chewed up, etc etc etc. The company, which at the time was struggling just to fill the pre-orders it had, stated that once pre-orders were filled replacement pads and holders would come on sale inexpensively. They finally did months later for a mere $50. That’s 10% of the cost of the developer headset and 17% of the cost of the regular consumer headset for roughly $1 in felt and $5 in molded plastic with little metal discs to make contact.
Enough about the bad… now on to the good…
When I try to think of the best way to describe the qualities of this device the phrase that pops in to my head now is “It does what they said it would do.” Plain and simple. I’m not trying to say that this is a bad device, but I strongly encourage people who are considering a purchase to look into it. If you are fully educated about what it can/can’t do, you are at least able to make an informed decision before spending your money. Don’t just take my word for it, read their forums, read reviews, read anything you can about it. As I mentioned above, it has been 7+ months since the initial shipment of headsets and to this date there are only 6 applications total listed in the website’s store, including the demo game and console app released by Emotiv themselves. I think this speaks volumes as to how people have received this product. Personally I gave up on participating in their forums months ago and have since been looking into opensource EEG platforms. There are currently a few out there, and there is some pretty awesome and powerful opensource software available for Linux for processing this data. I believe that this technology can be amazing when used in accessibility applications. Wheelchairs, robotic arms, and an array of any product you can imagine controlled by thought are the direction I had hoped to go in, but having to physically strap a laptop and monetarily strap the hardware and license costs on is disgustingly restrictive. One of my projects lined up for the future is to expand on one of the opensource platforms to increase the number of sensors to match, if not beat, the number of sensors that the EPOC has, as well as to position/configure them in a way that actually matches accepted industry standards and to start playing with that. Afterall… “if you can’t open it, you don’t own it.”
That being said, I have to give credit where credit is due. The company never claimed that I would be able to use the device in the manner which I had hoped. Their primary target market is the video game industry. The headset is intended to add a dimension to games in that it can actively monitor a user’s excitement/boredom in order to change the flow of a game to keep it fresh from the user’s perspective. Personally, I think that if a game has to actively monitor a player’s boredom levels there is probably something seriously wrong with it. I think that a much better use would be to hook users up for focus-groups and closed testing of games before they are released and record boredom levels as the user plays and tweak the game before it gets released instead of real-time as a user is playing, but if I knew everything I’d be rich instead of making projects in my workshop
. Other things that work really well on the headset are the facial expression recognition features and gyro. The headset can detect clenched jaw, smile, raised/furrowed eyebrows, eye direction, blinks/winks/etc. and does a really good job of it. As far as competition goes, I looked at similar commercial products at the time I made my purchase and, frankly, the Emotiv EPOC blows them all out of the water. More features, more electrodes, more detections… the EPOC wins hands down! Reading back I realize that my critique may have been a bit harsh, but it’s only because I had such high hopes for this headset when I bought it. As I said, it does what they said it would.
Cheers!
**UPDATE** I have already received Emails in regards to this post and it seems that Emotiv has completely changed over their forums and moved the old forums (which were basically strictly developers participating in them since it was from before the consumer version was available). I’m guessing that this is where the most critical posts were because, Emotiv says that it’s still up @ http://www.emotiv.com/oldforum but unless I’m logged in I get a 403 Error. I don’t know if all logins will have access or if it’s only developers, but that’s where any discussions I would have been part of are located.


I should also mention that there is a part in the video where it looks like I’m trying to ‘push’ and the remote is not responding. This is NOT a problem with the headset, but a problem with my code. You can tell because the bar-graph on my laptop still responds fine, but the LEDs on the Arduino stay on. Admittedly my frustration levels were increasing rapidly with this project because I had hoped to use it on my bigscreen TV but, being that it is a much newer Panasonic model, it uses different codes/protocol. In my haste one of the things I overlooked was the fact that both the communication from PC to the controller as well as the infrared transmission make use of interrupts and in Frankensteining both of my projects together I neglected to disable interrupts while important things were happening so they sometimes interfered with eachother, which is what you saw there
.
Cheers!
Ah, I thought that was because the time between the turning off and up was not enough; as we know, we can’t open the TV set at once after it is just turned off, but we can turn it off suddenly after it is turned on, isn’t it?
I was just chatting with a man today about the lack in so much of current tech to meet the needs of the blind, including the interface for his cable box! We were talking in particular about how he doesn’t get to order the UFC pay per view events (which he says is probably good cuz it saves him money)- but the reason he can’t is because his remote and cable box do not have a visually inpaired means of using it. Simply put- you have to be able to see the remote and read the screen to order.
The point in all this is that it would seem your current EEG remote project is well on the way to solving this type of problem.
Can you think of a way to fine tune this and make it accessible for blind folks?
Regardless, you rock! Please keep it up
Thank you for taking the time to read this.
Sincerely,
Alyson
Thanks for the feedback Alyson. In order to adapt this project to assist the blind in ordering PPV there is one major obstacle to overcome. While the commands can be sent to the box by being mapped to either facial or cognitive actions easliy, there would still be no way for a blind user to receive feedback on what is being displayed on the screen. It *might* be possible to pull something off since I happen to know for a fact that my cable box has a JTAG programming port on it, but it would certainly not be an easy feat to accomplish.
The information displayed on the screen by the cable provider (ie: program information, price, etc.) *MAY* be accessible through some reverse engineering and then it would have to be output to a useful format for the blind. Two things that come to mind would either be to pipe the information displayed through a text-to-speech interface so as to make the information audible, or it could be converted to a braille interface. The conversion of the data would be easy, but accessing it is much more difficult, and there may be legal issues involved. Manufacturers generally frown upon people poking around in their firmware due to intellectual property issues. If cable companies ever decided to add sound to their menus this would be a really simple matter. The only other way I could see it happening is if a real hardware wizard, someone like Travis Goodspeed, got his hands on the firmware from a cable box and modified it to be able to output this data through serial or some other interface.
Cheers!
I am going to send you an email- as soon as I find it in your contact section… Please read and get back to me at your earliest convenience.
And keep up the fascinating work please!
Cheers,
AC
Hello there, I’ve been using a older EEG based input device called the OCZ NIA. This is I guess is the big grandfather device of all these, as it came out first in mass production etc. Only three sensors on the front, but I think its problems would be inherent in all the other ones too.
Mainly that the device is cabled to it’s usb receiver – so it’s very difficult to be “grounded” properly. A few clever people did hack it apart and make it wireless, but it was very difficult.
Also, the drivers were based on the brainfingers software (which is the ones for the serial based medical one), so they were pretty robust. It was just difficult in getting a solid signal, and calibration took too long for me in the end to actually use it for what it was intended – gaming.
FWIW the Emotiv has really good signal quality. The only times I have not been able to get proper signal out of it was from users that had long hair, and that’s only because the electrodes weren’t able to make contact with the scalp, not because of the wireless. “Calibration” only takes 8 sec. per trained action, although it is recommended to train it as your experience with the device increases as newer users tend to use more facial muscles, etc. and then tend to do so less over time.
It’s refreshing to see another users perspective on the emotiv. While I think many of your thoughts are valid, I also think that the people at emotiv are learning and doing their best to accommodate their customers. While it does seem that overall pricing for the product and sensors seems a bit high, I think the fact that they are a small company with really the leading consumer based EEG headset allows them to price a bit higher. I’d like to see the consumer release headset fall to around a $100, but I don’t think that would bring a rush of new customers. This will still be a niche market until it becomes common place.
Many people are now working with the adrino robotics kit and incorporating the sdk functionality to interface with varying devices. I’m not in this camp, but am finding the discovery of the potential of the cognitiv suite is not limited to just 4 action albeit multiple instances of the control panel must be opened and at least one person has had some success using cognitive to detect affective states.
Well my dinner is about to burn
$750 SDK full EEG data 16 sensors, central marketing center, not bad imo.
Yeah, I didn’t mean to suggest that I thought the price of the device was too high. Personally I believe that the price of the felt replacement kit is, but I would happily have paid even more than $750 for a device that I could interface directly to an embedded project. As I said, I pretty much gave up on Emotiv and the forums once they stopped replying to my private messages. I found it especially sketchy that they offered me a free upgrade to a raw data license one day and completely ignored me the next.
I wasn’t even one of the people on the forums asking them to opensource their product, all I wanted was a linux port that would run on inexpensive microprocessors like gumstix or beagle boards or something. Again, not trying to knock the product because it DOES behave as advertised, it’s just frustrating to see something with so much potential that isn’t being taken advantage of.
The problem with mentioning Linux is that ignorant people consider all Linux and Linux related applications to be Open Source and obviously it isn’t. In addition people have felt for thousands of years that their best potential for making a profit is to keep what they know secret. The formula for Coke or KFC for example. The reality is that any computer code can be reverse engineered and eventually the Emotiv will be reverse engineered and moved into Open Source where, like OS systems, the capabilities will grow far faster than it possible can under Closed Source. Nice work. It sounds interesting and useful. I would bet it could help ADHD or other individuals with focus issues….
The topic of Linux was recently brought up again when I mentioned using the dlls in linux. Apparently the issue is with how the hardware is seen in Linux so using the dlls is not possible without correct linux drivers. Geoff has said that they would like to see Linux support and are going to work on this, but apparently they do not have many developers with linux specialty. They will also be working on a MacOSX port.
I’m not trying to sound like a fanboy just trying to point out a slightly different view. It certainly sounds sketchy as far as the upgrade offer. In addition I also received the first off tooling sensor container and like you was judicially ignored when I brought it up.
Despite some very valid mishandling by emotiv I have not abandoned the forum and encourage you to reconsider. Primarily because the forum although hosted by emotiv is filled with people that are interested in the same type of projects you are. I think they would be a great resource and you would also give valuable input that would be missing otherwise.
The suggestion that the emotiv team is ignorant concerning open source by the other poster is perhaps a bit unfounded. I think emotiv is well aware of the implications. I do not agree with their drm essentially on the eeg data, but I do not own the company it is their call. The best way to get something changed is to voice your issue, act like an adult and visit the discussion or let it rest.
This is not directed at anyone in particular. It’s just meant to point out that while it may be possible to reverse engineer or crack the encryption this in essence perpetuates the problem and does not solve it.
I agree rip. In all of my dealings with the Emotiv people I never once got the impression that they were technically ignorant. Customer service seems to be lacking a bit, but they’ve always known their stuff (especially Gmac). I have actually received private messages/comments regarding this from people who are actively attempting to reverse engineer the device, stating that the AES 512 key is easily obtainable and that they are in the process of looking into this as well as possible chip-swaps in the headset and dongle to give them more access to data.
I won’t get into whether I believe that once you purchase something you should be able to do whatever you want to it or not, but I will say this: I am not out to screw Emotiv and I’m not really interested in breaking their encryption or reverse engineering their device illegally. I create my projects for fun and generally try to avoid any kind of drama. Honestly, I would rather build an open-source version from scratch.
I’m pretty sure that the more any given person knows about the status and history of externally recorded brain waves, the less enthusiastic that person is going to be about using them as a computer interface. At the very least it involves a huge unsolved problem in signal processing algorithms. And quite likely signal to noise ratios rapidly head toward zero as you try to distinguish more “states”. From outside your skull, typing A is going to look a lot like typing B or for that matter control-alt-delete. For my money EEG is just not worth the effort compared to wearable keyboards, especially one-hand, chording keyboards operated by the hand that supports them
. Switches are simple. Deciphering external recordings of brain activity is not.
I think you are entirely correct here, but are missing the true value of an EEG headset. Primarily no other input device can be used to develop aspects of your own mind in the way an EEG headset can. (Though we need software to explore this idea to it’s potential.)
Secondly the use for disabled is perhaps a godsend and also as a biofeedback device for those wishing to curb unwanted behavior such as smoking also has great potential.
Yes, this is actually how I feel as well. I really can’t see it any other way.
Great!!!
Thank you for your post keep doing
it was a great information provided by you..Thanks
Nice Info, thanks For share, I Will Visit Back
Thanks for the article ..
Such a gratThe EEG’s aren’t really a fun process at all, but they do help in diagnostics! Feel free to email me anytime you want if you ever want to chat.. kind of cool.. I just clicked on a random link and find someone in Maine! , I’ve never had the pleasure of having my head bandaged like a brain surgery patient, while recording my every muscle twitch before. EEG, first developed for testing epilepsy, is most certainly not a quick method and most likely not an effective way to understand emotion in users. Firstly, the practitioner needs to understand the science behind the tool. It can be a very in-depth discipline, so it is crucial that any study is implemented by a professional researcher who is an expert in cognitive neuroscience as well as psychology. EEG is not a technique that will give the clear black and white results that the industry wants. In the analysis of data, the research must make a lot of deductions when interpreting the results. It is not a test that gives conclusive results on its own, but it can offer useful indicators of emotion, the key being the mapping of the results to particular emotions. this is very helpful information. I appreciate your work. Thanks for sharing..
i bought one last week and i couldn’t agree more on what you’ve mentioned(it does what they said it would)…it’s been years since the time you wrote this blog but the headset still comes with the same set of drawbacks, and the wires underneath the tentacles are exposed coz that flimsy plastic sheet never sticks(some manufacturing defect that is, for them to have not corrected for years)…and that app store is still a let-down.
That’s unfortunate to hear. For a while I would actually check out the forums and apps every 3-4 months but gave up after about a year. Seems like the product is pretty much going nowhere