The hemokit package

[Tags: library, mit, program]

This package allows reading raw data from the Emotiv EPOC EEG devices.

It is inspired and based on the code of the Emokit project (, but entirely written in Haskell.

It contains an extensive, well-documented library for connecting to devices, decrypting the stream, and parsing the relevant data out.

Data can be read from a given device via HIDAPI-hidraw or a dump file; reading from multiple devices is supported and when only one EEG is to be used, the correct device is automatically selected.

There is also an executable, hemokit-dump, that can print out

in both their plain form and as JSON, and optionally serve any of this via Websockets.


Versions0.4.0, 0.4.1, 0.4.2, 0.5, 0.5.1, 0.6.0, 0.6.1, 0.6.2, 0.6.3, 0.6.4
Dependenciesaeson (>=, base, base64-bytestring (>=, bytestring (>=, cairo (>=0.12.4), cipher-aes (>=0.2.0), conduit, deepseq (>=1.2), deepseq-generics (>=0.1), gtk (>=0.12.4), hemokit, hidapi (>=0.1.2), mtl (>=2.1.2), network-simple (>=0.3.0 && <, optparse-applicative (>=0.7.0 && <0.10.0), pretty-show (>=1.0), robot (>=, split (>=0.2.2), svgcairo (>=, text (>=, time (>=1.4), transformers (>=, vector (>=0.9), vector-fftw (>=, websockets (>=, xhb (>=0.5.2012.11.23)
Copyright2013 Niklas Hambüchen <>, Patrick Chilton <>
AuthorNiklas Hambüchen <>, Patrick Chilton <>
MaintainerNiklas Hambüchen <>
Home page
Bug tracker
Source repositoryhead: git clone git://
Executableshemokit-headmap, hemokit-fft, hemokit-dump-conduit, hemokit-dump, hemokit-mouse
UploadedTue Oct 14 02:00:28 UTC 2014 by NiklasHambuechen
Downloads941 total (80 in last 30 days)
StatusDocs pending
Build status unknown [no reports yet]



fftEnable apps that use FFT. Needs fftw installed.Enabled
headmapBuild the headmap. Needs GUI libraries installed.Enabled
mouseBuild the app that controls the mouse with the gyroscope. Needs Xorg and related libraries installed (so it only works on Linux for now).Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainers' corner

For package maintainers and hackage trustees