An image viewer, media player, EEG controllable, audio synthesizing, open source brainwave entrainment solution

  • EntrainerFX Functions
  • EntrainerFX Intervals
  • EntrainerFX ESP
  • EntrainerFX External Connectivity
  • EntrainerFX Documentation

EEG Signal Processing

EntrainerFX ESP

If in possesion of an OCZ Nia, NeuroSky Mindwave (with Thinkgear Connector) or OpenBCI hardware (experimental, see the Advanced page for more information) then the raw EEG signal can be processed by EntrainerFX. Choosing a device from the Signal Processing menu and clicking 'Start' will begin this acquisition.


To process the signal choose 'Show ESP Lab' from the Signal Processing menu to display the laboratory.


When the desired DSP algorithms have been applied the lab settings can be saved and loaded in future entrainment sessions.

Neuralizer Controls


The purpose of the Neuralizer panel is to provide visual feedback of the conscious state of the user of EntrainerFX through the use of various EEG hardware devices via the ESP (version 2.1) library. The intent is for the user to either set EntrainerFX at a constant entrainment frequency or to run an EntrainerFX program, process the raw EEG signal and have the result sent through the Neuroph neural network to provide the visual feedback. The Neuralizer network consists of 144 output neurons from 40 power raw signal input neurons corresponding to the EntrainerFX's entrainment frequency range. In order to use the Neuralizer the neural network must first be trained to recognize specific conscious states.

Control of the Neuralizer is accomplished via the mouse and keyboard when the Neuralizer TitledPane is expanded.

Neuralizer Controls (always available)

  • Right click - save current network
  • Left clicking a neuron selects / deselects the neuron
  • Click-drag-click (x direction) controls panel opacity (left to right = opaque, right to left = see thru)

ESP Device Disconnected

  • Shift + Right click - load network

ESP Device Connected

  • Double click (Left) - start / stop recording for network training
  • Shift + Left click - randomize network weightings

Selecting Neurons

Entrainer Neuralizer Bias Neurons

Any number or pattern of neurons can be selected. The selected neurons are used as bias neurons when the network is being trained and provide visual queues for the user.

Network Save

Right clicking will bring up the network save dialog. Shift + right click will bring up the network load dialog when disconnected from devices. When a network is saved two files are written, one with the name specified and one with a '.selections' extension. The named file is the saved neural network while '.selections' is a list of selected neurons and is loaded when the network is loaded. Once loaded the neurons will briefly change color to indicate a successful network load.

After successful connection with the EEG device the neurons change colour and start responding to the power signal from the device. In preparation for neural network training EntrainerFX can be used to entrain one's brainwaves to a desired entrainment frequency state until ready to train the neural network.



Double clicking changes the neuron colour and starts the training process. Recording should be allowed to span at least several seconds to several minutes while EntrainerFX should be used to keep one's conscious state steady. Double clicking again halts the recording and the values are then used to train the neural network. When the selected neurons are fully opaque then the network can be considered trained.

Shift-clicking will randomize the network weightings which may be necessary for network training. The color of the neurons will change briefly to indicate successful randomization.

Trained Network