RYAN ZERNACH

Full-Stack AI Systems Engineer

Ryan_Zernach_2025_Senior_AI_Systems_Engineer_Remote_United_States

đź§  BrainPower: The Future of Communicating with Technology

Could a thought become a reliable interface? This proof of concept uses EEG signals to control a virtual light switch and thermostat, making an abstract neurotechnology question visible and testable.

Related Links
Back-End Python Repo
Front-End G.U.I. CODE
Data Exploration
đź§  BrainPower: The Future of Communicating with Technology

Summary

Users can create an account, connect an EEG device, and control a digitally animated light switch and thermostat with their brain's neuroelectrical signals.

Team

Tech Stack

Timeline

Contributions

đź§  BrainPower: The Future of Communicating with Technology

MVP / proof-of-concept journal update — March 13, 2020.

Milecia recorded our EEG data with her four-electrode OpenBCI device: 100 one-second bursts. Ryan used that data to train a predictive model with 97% accuracy. The back-end Python API returns a number from 0 to 5, each corresponding to one of six commands the user may be thinking: no, yes, up, down, left, or right.

Ellen and Roenz built the React JS interface and the back-end database connectivity for securely storing user data. When someone clicks the Record EEG button—the pink brain with rotating blue-and-white circles pictured below—the front end calls the Python API and runs this sequence:

  • ⚙️ Connect to the local EEG device
  • ⚙️ Collect EEG data for one second
  • ⚙️ Compile the data into a pandas DataFrame
  • ⚙️ Run predictions on those EEG snapshots
  • ⚙️ Return the most frequently predicted command

The front end maps that returned command to a specific response. It is a little like recording a voice command for Siri or Google Assistant, except the one-second recording captures neuroelectrical signals instead of speech.

The next step is continuous, real-time prediction: filter out unrelated thoughts, recognize the six specific commands—no, yes, up, down, left, and right—and expand the available actions.

For a proof of concept, those six commands are enough to show the interaction end to end.