OpenBCI Documentation

OpenBCI Documentation

  • Main Site
  • Shop
  • Forum
  • Documentation
  • Github
  • Citations

›Arduino Focus Example

Welcome to OpenBCI

  • Welcome to the OpenBCI Community

Getting Started

  • Getting Started
  • Boards

    • Cyton Getting Started Guide
    • Daisy Getting Started Guide
    • Ganglion Getting Started Guide
    • WiFi Shield Getting Started Guide

    Biosensing Setups

    • Setting up for EEG
    • Setting up for ECG
    • Setting up for EMG

    Community

    • Welcome to the OpenBCI Community

Cyton Board

  • Cyton Board
  • Cyton Specs
  • Cyton Data Format
  • Cyton Board SDK
  • Cyton Board Programming Tutorial
  • Cyton Radios Programming Tutorial
  • External Trigger on OpenBCI Cyton Board
  • Using SD Card with OpenBCI

Ganglion Board

  • Ganglion Board
  • Ganglion Specs
  • Ganglion Data Format
  • Ganglion SDK
  • Ganglion Programming Tutorial

Headwear & Electrodes

  • Add Ons
  • Headwear

    • Ultracortex Mark IV
    • Ultracortex Mark III
    • OpenBCI EEG Headband Kit Guide
    • Electrode Cap Getting Started Guide

    Electrodes

    • Electrode Guide

Third-Party Hardware

  • Third-Party Hardware
  • EmotiBit

    • EmotiBit Guide

    HEGduino Kit

    • HEGduino How-to

    IDUN Dryode

    • IDUN Dryode™

    Myoware

    • MyoWare OpenBCI Integration (Cyton Board)
    • MyoWare OpenBCI Integration (Ganglion Board)

    Pulse Sensor

    • Pulse Sensor Guide

    ThinkPulse

    • ThinkPulse™ Getting Started Guide

    WiFi Shield

    • OpenBCI WiFi
    • Wifi Shield Programming Tutorial
    • OpenBCI WiFi Shield API
    • OpenBCI Wifi SDK

Software

  • Compatible Software
  • Developed By OpenBCI

    • The OpenBCI GUI
    • GUI Widget Guide

    Compatible Third Party Software

    • MATLAB
    • Neuromore
    • OpenViBE
    • Lab Streaming Layer (LSL)
    • BrainBay
    • BioEra
    • VirtualBox Windows Guide

For Developers

  • For Developers
  • Software Development
  • Firmware Development
  • Hardware Development

Deprecated Documents

  • Deprecated Docs
  • Spiderclaw V1 & V2 (deprecated)
  • OpenBCI 8bit Board (no longer in production)
  • Ultracortex Mark 1
  • Ultracortex Mark 2
  • Ultracortex Mark III "Nova" & "Supernova" (REVISED)
  • Python and OpenBCI
  • OpenBCI Hub

Troubleshooting

  • Troubleshooting Landing
  • Minimizing Noise
  • GUI Troubleshooting
  • FTDI Buffer Fix on Linux
  • FTDI Buffer Fix on OS X
  • FTDI Buffer Fix on Windows

Example Projects

  • Example Projects
  • Arduino Focus Example

    • Send Focus Data from GUI to Arduino

    Experiments

    • Puppies and Kittens Experiment

    Community Page Projects

    • Community Page Projects

    EMG Projects and Tutorials

    • EMG Scrolling
    • EMG-controlled Stop/Start Music
    • EMG-controlled Slideshow
    • EMG-controlled LED
    • EMG Chrome Dino Game

FAQ

    FAQ

    • Frequently Asked Questions
    • General Frequently Asked Questions
    • How OpenBCI products go together?
    • Hardware & Software
    • Purchases & Payment Processing
    • Shipping & Taxes

    Policies

    • OpenBCI Cookie Policy
    • Privacy & Security
    • RETURNS & REFUNDS
    • Liability Policy
Edit

Send Focus Data from GUI to Arduino

Starting with GUI v5.0.0, this feature is temporarily deprecated until a more reliable and research-based Focus algorithm is implemented. If you would still like to use this widget, you can download and run GUI v4.2.0.

This tutorial shows you how to get started streaming data from the OpenBCI_GUI's Focus Widget via Serial connection to an Arduino UNO Rev3. Head HERE to find the OpenBCI/Arduino Focus Data tutorial in the updated Instructable format!

What do I need?

  • The OpenBCI_GUI standalone app or Processing sketch
  • An Arduino UNO, or other similar device
  • An OpenBCI Board (Optional)

Helpful Background Skills

  • Arduino Basics
  • Knowledge of Arduino or C-based programming
  • Experience running the OpenBCI GUI from the Processing IDE (Optional)

Step 1 - Load the Example in the Arduino IDE

The OpenBCI_GUI-FocusArduino.ino file is designed to serve as a simple starting point for creating your own Arduino project using data from the GUI over serial.

You can copy/paste the code from Github into the Arduino IDE or download the Docs and navigate to the example /OpenBCI_files/OpenBCI_GUI-FocusArduino/OpenBCI_GUI-FocusArduino.ino.

Step 2 - Upload the Arduino sketch

Upload Arduino Sketch

After uploading the sketch, you can close or minimize the Arduino IDE, but keep the Arduino connected to the computer. The sketch we just uploaded is running!

Step 3 - Open OpenBCI_GUI in Synthetic Mode

Open GUI Synthetic Mode

Step 4 - Start Streaming

Open and Setup the Networking Widget

Setup Networking Widget

Open the Focus Widget. Then, click "Start Data Stream" and then "Start" in the Networking Widget

OpenBCI Serial Not Focused

Next, turn off channel one to simulate Focused state.

OpenBCI Serial Focused

The Arduino's built-in LED should blink when the Focus Widget reads "focused!"

How does the Focus Widget work? Check out this community post!

How can this be used to make something? Here's an example!

Step 5 - Learn! Create! Share!

From here, you can add more to your new Arduino project to react to Focus data from the OpenBCI_GUI:

  • Use Live Data from a Cyton or Ganglion

  • Try controlling even more LEDs using the Arduino

  • Try controlling a motor or group of motors

  • Make a second copy of your project and make it a two player game!

  • Share what you've made in a community post!

Last updated on 8/10/2020
← Example ProjectsPuppies and Kittens Experiment →
  • What do I need?
  • Helpful Background Skills
    • Step 1 - Load the Example in the Arduino IDE
    • Step 2 - Upload the Arduino sketch
    • Step 3 - Open OpenBCI_GUI in Synthetic Mode
    • Step 4 - Start Streaming
    • Step 5 - Learn! Create! Share!
OpenBCI Documentation
Site
OpenBCI WebsiteOpenBCI StoreOpportunitiesDownloads
Social
TwitterInstagramFacebookLinkedIn
More
GitHubCommunityForumContact
Copyright © 2021 OpenBCI