Foc.us EEG Dev Kit is an electroencephalography (EEG) device, used for monitoring electrical activity of the brain. It measures voltage on electrodes, digitizes and streams via Wi-Fi or records into internal memory.
The Device can be controlled using one of following options:
There are two versions of EEG Dev Kit avaoilable
EEG Only Dev Kit can be used for EEG only. EEG+ Dev Kit as an addition to EEG functionality supports transcranial electrical stimulation (tES).
EEG Only Dev Kit Includes
EEG+ Dev Kit has all of the above plus
For charging, please, connect the power charger to EEG Dev Kit and then to mains. Blue indicator shows charging and switches to green color, when charging finished (charging indication works if device doesn’t perform any other actions). Also, you can check the battery level in Device Details menu.
Full battery charging normally takes 2-3 hours.
Note, that EEG session and tES can’t be enabled whilst device is charging. This is both for safety and quality of recorded signal.
EEG Dev Kit has two types of biopotential analog inputs: 1) single ended 2) differential.
Channels #1 to #6 are always single-ended.
Channels #7 and #8 are dual purpose and can be configured as single-ended or differential. It is important to ensure that the correct sockets are used according to the desired configuration.
Signals at single-ended input channels are referenced to a common ground. And this common ground (called reference input of the EEG Dev Kit) is shared between all single-ended inputs.
So, single-ended measurement is the voltage difference between input channel and reference.
Differential input channel consists of two lines: negative and positive. And differential measurement is the voltage difference between those lines.
Reference channel is a dedicated input line used for single-ended channels. And acts as common ground for single-ended measurements.
The EEG can be monitored with either a bipolar or a referential montage (using differential or single-ended inputs respectively). Differential channels requires two times more electrodes comparing to single-ended, so the referential montage is the most popular for EEG.
The right place for the reference electrode should be found. If possible, this place must be located in “inactive” zone (no brain activity), and also should not pick up signals which are not recorded (like heart activity). Usually this is the right or left earlobe.
Patient bias output is used for common mode rejection. Another name for it is driven ground. Or the right leg drive (RLD) – holdover from electrocardiography (ECG) technology.
The human body is prone to common-mode drifts because noise easily couples onto the human body, similar to an antenna. These common-mode drifts may push the input common-mode voltage out of the measurable range of the system.
There are several frequencies of interest, depending on the location and the country of operation. The primary source of interference is the AC main that generally operates at 50 Hz (Europe and Asia) or 60 Hz (USA). Apart from these two frequencies, Eastern European railway traction power networks use distributed single-phase ac power at 16⅔ Hz. A frequency of 25 Hz is used for the Austrian railway.
The bias circuit of the system senses the common-mode voltage of a selected set of input channels (can be configured in UI) and creates a negative feedback loop by driving the body with an inverted common-mode signal.
In EEG applications the bias electrode usually connected to the center of forehead, but can be placed anywhere on the body, since its location is irrelevant in most cases.
It is a pair of dry electrodes wired to a 3.5mm jack. Each electrode consists of a small printed circuit board (PCB) wrapped into conductive soft silicone. The silicone component has spikes to go thru hair when attached to head.
The main circuit of the active electrode is a unity gain amplifier to buffer very low level EEG signals. This model has advantages comparing to passive electrodes:
When connected to a single ended input of the main unit the electrode at short wire corresponds to the lower channel number and at long wire – to the higher channel number. E.g., if a pair of electrodes attached to socket “1 & 2”, then electrode at short wire is channel 1 and electrode at long wire – channel 2.
When connected to a differential input of the main unit the electrode at short wire corresponds to negative line and at long wire – to positive line of the input channel.
There is a special pair of electrodes with a clip at long wire and normal soft silicone electrode at short wire. It must be connected to “REF / BIAS” socket of the main unit. The electrode at short wire is a reference (see 3.1.Analog Biopotential Inputs) and at lone wire with a clip – bias (see 3.2.Device Analog Outputs).
There are 2 types of active electrodes: Dry Active EEG (black color) and Dry Active EEG+ (orange color) Electrodes. They come with EEG Only Dev Kit and EEG+ Dev Kit respectively. The difference that Dry Active EEG+ electrode has an extra circuit to disconnect electrode’s input. It is necessary when tES enabled and EEG electrodes left on head. So, EEG electrodes don’t create wrong paths for tES current.
If electrode is used with a third party EEG system, please, follow this specification:
After turning EEG Dev kit ON, it attempts to connect to known Wi-Fi network(s) using details from saved Wi-Fi profiles. If it cannot connect in 30 seconds the device switches into Wi-Fi provisioning mode.
There are few methods to configure EEG Dev Kit to Wi-Fi access point (AP)/wireless router credentials:
For this method your access point/wireless router must have a physical or virtual (in web UI) WPS button:
Follow these steps:
Instead of configuring EEG Dev Kit you can configure your access point/wireless router to Wi-Fi credentials, preprogrammed to device:
This method is not recommended.
There are 3 options for EEG Dev Kit data output:
In “stream” mode device publishes data to server (broker) using MQTT protocol in real time.
MQTT is an Internet of Things (IoT) protocol, provides a lightweight method of carrying out messaging using a publish/subscribe model. EEG Dev Kit is a MQTT client, connects to a MQTT broker and publishes data at specific topic. The broker then pushes the information out to those clients that have previously subscribed to the client’s topic. So, any computer that runs a MQTT library can receive data from EEG Dev Kit in real time.
Please, refer to chapter 3.9 “Using Your Own Server” if you want to use your own MQTT broker.
In “file” mode device saves data into internal flash memory in EDF+ or BDF+ format (can be configured in UI). As soon as session finished it starts file uploading to FOCUS servers for storage. File can be downloaded to your computer at “Recorded Sessions” page. Note, that free storage is available for 7 days only, after that time the file will be deleted automatically.
The European Data Format (EDF) is a simple and flexible format for exchange and storage of multichannel biological and physical signals. Complete specifications can be found at official website https://www.edfplus.info/. EEG Dev Kit fully supports the newest extension – European data format ‘plus’ (EDF+).
BDF+ format, developed by Biosemi, is a 24-bit version of the EDF+. Its specification can be found here: https://www.biosemi.com/faq/file_format.htm.
EEG Dev Kit is a 24-bit EEG system. It is recommended to use BDF+ format to get full advantages. When using EDF+ the input voltage range is limited to ±732uV, comparing to ±187mV for BDF+.
For your convenience it is possible to fill EDF+/BDF+ field “local patient identification” in UI:
By default device streams data to FOCUS MQTT broker for EEG signals filtering and visualization in UI. If you want to get access to raw data you need to setup your own MQTT broker or use a third party one.
Note, that at this moment device supports transport layer security (TLS) only for connections to FOCUS MQTT broker.
Local MQTT broker is useful if you want to use maximum possible sampling rates (up to 16000 SPS). This is possible, because local network normally has very low latency. Another reason to use a local MQTT server could be safety, since in this case sensitive private data doesn’t leave your local network.
If you don’t have bash installed, follow these steps to install ubuntu subsystem on windows 10. Alternatively just install ActiveMQ on Windows.
Install Apache ActiveMQ and start it (instructions here).
The EEG Dev Kit will connect to your ActiveMQ server over your Wi-Fi connection. It is important that both devices are on the same network for this to work.
Then open firewall rules for any ports that are used in conf/activemq.xml e.g. 1883
Check that you can connect to your ActiveMQ using an MQTT client such as MQTT.fx
Another quick check is to use telnet from another machine on the same network
Your EEG Dev Kit has a unique 24 digit ID (Device ID) which can be found in foc.us/me Device Details page.
Create a topic in ActiveMQ with your Device ID plus suffix .afe.binary
Now provide the new server details to the Dev Kit in the focus/me Settings page
Finally turn on one or more AFE channels.
This is the simplest option to get access to raw data. There are many paid and free MQTT brokers. In this example we show, how to work with public MQTT broker https://test.mosquitto.org. Since it is public, there is even no need to create your own account.
To receive the raw data in real time any MQTT client can be used. It should be connected to MQTT broker and subscribed to ‘deviceID’/afe/binary topic.
Below, you can find, how to configure the MQTT.fx client to use MQTT broker from the previous example.
Everything is ready to receive data. Turn EEG session ON in UI.
You should not use the foc.us stimulator if you suffer from epilepsy, seizures, brain lesions, bipolar depression or severe heart disease. Immediately stop using foc.us i you experience short-term negative effects. Foc.us is not a toy and is not intended to be used by anyone under the age of 18 years old. It is not recommended to place external electrodes in un-tested or novel montages. Do not position electrodes in a manner where current may pass through the brainstem. Do not position electrodes over cuts, grazes or damaged skin. Allow at least 48 hours between each use of foc.us. Always place wet sponges between the electrodes and your skin. Do not touch the black conductive silicone electrodes when using foc.us.
Foc.us is designed to be used by healthy adults who do not suffer from epilepsy, brain conditions, have a metallic implant such as a skull plate or have implants, such as cochlear implant or pace-maker. The sole purpose of foc.us products is for cognitive gain.
EEG+ Dev Kit is capable to perform transcranial direct current stimulation (tDCS). Later will be added other neurostimulation modes.
There are several settings to configure for each tDCS session:
Polarity of amxy electrodes: X is anode, Y – cathode.
Note, if your system has black EEG electrodes, please, remove it from the head before starting electrical stimulation. Orange EEG electrodes can be left in situ.
EEG Dev Kit Device
Active dry electrode:
|Indicator color||Number of blinks||Device state|
|1||EEG session is ON.|
|Green||solid||Battery fully charged.|
|2||Device online and uploading file.|
|Orange||solid||Wi-Fi provisioning. AP mode (www.configure.dk).|
|1 long||Wi-Fi provisioning. WPS push button mode.|
|1||Waiting to connect to Wi-Fi.|
|2||Connected to Wi-Fi, waiting for IP address assignment.|
|3||IP address acquired.|
|4||Network quality test passed successfully.|
|Red||1 with button press||Empty battery. Connect charger.|
|1||Bad network quality. Try to reboot or connect to another Wi-Fi.|
|2||Device offline. Try to reboot.|
|3||Wi-Fi security failure (possible wrong Wi-Fi password)|
|White||fast flashing||Firmware is being updated. Do not remove the power.|
Can’t connect to WiFi?
FOCUS is constantly working on adding new features (and fixing bugs). Your device is automatically updated if new version available. EEG Dev Kit checks for updates if battery is charged at least 50%, connected to Wi-Fi and power charger connected.
Current firmware version can be found on Device Details page in UI.
foc.us warrants the foc.us device device (the “Product”), and only the Product, against defects in materials and workmanship under normal use for a period of twelve (12) moths commencing on the date of original purchase by the original purcaser (the Warranty Period). This warranty does not cover damage caused by misuse, abuse, natural and/or external causes (e.g. fire, earthquake, flood etc…), use other than as intended and described in the Product instruction manual, finishes, normal wear and tear, tampering, unreasonable use, service performed by unauthorized service agents, or loss of damages to the battery. foc.us does not warrant that the operation of the Product will be uninterrupted of error free.
Under this Limited Warranty, foc.us liability and customer’s exclusive remedy under the foregoing paragraph will be limited to replacement or repair of the Product by foc.us or its authorized service centers. A replacement Product or part assumes the remaining warranty of the original Product or ninety (90) days from the date of the replacement or repair, whichever is longer. To obtain warranty service contact email@example.com. For your security please return your Product with an insured carrier (e.g. FedEx, UPS, USPS Parcel Post) and retain your receipt. foc.us is not responsible for items damaged or lost in transit. Other than for the reason of hardware defects, the return freight cost responsibility belongs solely to the customer.
In no event will foc.us or any of its affiliated or subsidiary companies be responsible for any special, incidental, or consequential damages resulting from the use of this Product, or based on any breach of warranty, breach of contract, negligence, tort, or any other legal theory. Such damages may include, without limitation, loss of savings, or revenue, loss of profit, loss of use, the claims of third parties, including without limitation, retailers, any cost of any substitute equipment or services. Some states do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to you. The warranty gives specific legal rights, and you may have other legal rights, which vary from state to state or country to country. This Limited Warranty is valid only in the United States and Europe for Products sold in the United States and Europe. Reseller, agents or employess of foc.us are not authorized to make any modification, extension, or addition to this Limited Warranty.
FCC warning statement: This device complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions: (1) This device may not cause harmful interference, and (2) This device must accept any interference received, including interference that may cause undesired operation. This equipment complies with FCC radiation exposure limits set forth for an uncontrolled environment End users must follow the specific operation instructions for satisfying RF exposure compliance. This transmitter must not be co-located or operated in conjunction with any other antenna or transmitter. Changes or modifications not expressly approved by the party responsible for compliance could void the user’s authority to operate the equipment.
The packet contains multiple samples of raw data.
Default MQTT topic name: ‘deviceID’/afe/binary
Device ID can be found on Device Details page of the UI.
|0||12||Device ID||Unique for each device|
|12||1||Product ID||1 – for foc.us EEG Dev Kit|
|14||6||Timestamp||Milliseconds since Epoch|
|20||2||Sample rate||Samples per second|
|22||1||Channels mask||0bXXXXXXXX, X – channel ON(1)/OFF(0), LSB – Channel 1|
|24||4||Channel 1 value||Only if enabled. Type – float (uV)|
|28||4||Channel 2 value||Only if enabled. Type – float (uV)|
|32||4||Channel 3 value||Only if enabled. Type – float (uV)|
|36||4||Channel 4 value||Only if enabled. Type – float (uV)|
|40||4||Channel 5 value||Only if enabled. Type – float (uV)|
|44||4||Channel 6 value||Only if enabled. Type – float (uV)|
|48||4||Channel 7 value||Only if enabled. Type – float (uV)|
|52||4||Channel 8 value||Only if enabled. Type – float (uV)|
|56||4||Channel 1 value||Only if enabled. Type – float (uV)|