frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Open-Source 8-Ch BCI Board (ESP32 and ADS1299 and OpenBCI GUI)

https://github.com/Cerelog-ESP-EEG/ESP-EEG
53•simontheHWguy•1d ago
Hi HN, I recently shared this on r/BCI and wanted to see what the engineering community here thinks.

A while back, I got frustrated with the state of accessible BCI hardware. Research gear was wildly unaffordable. So, I spent a ton of time designing a custom board, software and firmware to bridge that gap. I call it the Cerelog ESP-EEG. It is open-source (Firmware + Schematics), and I designed it specifically to fix the signal integrity issues found in most DIY hardware.

I believe in sharing the work. You can find the Schematics, Firmware, and Software setup on the GitHub repo: GITHUB LINK: https://github.com/Cerelog-ESP-EEG/ESP-EEG

For those who don't want to deal with BGA soldering or sourcing components, I do have assembled units available: https://www.cerelog.com/eeg_researchers.html

The major features: Forked/modified OpenBCI GUI Compatibility as well as Brainflow API, and LSL Compatibility. I know a lot of us rely on the OpenBCI GUI for visualization because it just works. I didn't want to reinvent the wheel, so I ensured this board supports it natively.

It works out of the box: I maintain a forked modified version of the GUI that connects to the board via LSL (Lab Streaming Layer). Zero coding required: You can visualize FFTs, Spectrograms, and EMG widgets immediately without writing a single line of Python.

The "active bias" (why my signal is cleaner): The TI ADS1299 is the gold standard for EEG, but many dev boards implement it incorrectly. They often leave the Bias feedback loop "open" (passive), which makes them terrible at rejecting 60Hz mains hum. I simply followed the datasheet: I implemented a True Closed-Loop Active Bias (Drive Right Leg).

How it works: It measures the common-mode signal, inverts it, and actively drives it back into the body. The result: Cleaner data

Tech stack:

  ADC: TI ADS1299 (24-bit, 8-channel).

  MCU: ESP32 Chosen to handle high-speed SPI and WiFi/USB streaming

  Software: BrainFlow support (Python, C++, Java, C#) for those who want to build custom ML pipelines, LSL support, and forked version of OpenBCI GUI support
This was a huge project for me. I’m happy to geek out about getting the ESP32 to stream reliably at high sample rates as both the software and firmware for this project proved a lot more challenging than I expected. Let me know what you think!

SAFETY NOTE: I strongly recommend running this on a LiPo battery via WiFi. If you must use USB, please use a laptop running on battery power, not plugged into the wall.

Comments

simontheHWguy•1d ago
If you want an independent look at the specs, CNX Software and Hackster just wrote about the board here:

https://www.cnx-software.com/2025/12/26/cerelog-esp-eeg-a-lo...

And here

https://www.hackster.io/news/this-open-source-eeg-board-brin...

dang•1d ago
I'm a mod here - just wanted to let you know that I edited your text to fit HN conventions a bit and moved it to the top of the thread.

Welcome to HN! I hope your project gets some good discussion.

legitronics•1d ago
This is very interesting. I was looking into the viability of something like this a few months ago and started seeing eye watering prices and closed off ecosystems. And many gotchas when looking into diy, more than I could justify learning about.
simontheHWguy•1d ago
Thank you! It was quite the project, definitely learned a lot from it though!!
evanjrowley•1d ago
What is your goal with the Cerelog ESP-EEG?

During my mid-teens, I got this wild idea that I could reproduce the experience of psilosybe cubensis by learning to mimic the brainwave patterns through the practice of neurofeedback. I didn't have an EEG, but I learned about the OpenEEG project. Eventually I bought an OpenEEG-based MonolithEEG[0] during a summer where I was fortunate enough to be in west Europe.

Shortly thereafter, I realized I had no experience at all with electronics assembly, and the fever dream quickly evaporated. The MonolithEEG PCB was lost to time.

[0] http://www.shifz.org/moosec/index-Dateien/Page431.htm

simontheHWguy•1d ago
That’s a great story about the Monolith.

To answer your question: My primary goal right now is simply reliable, high fidelity data collection. However, I think neurofeedback is a fascinating application. I’ve been interested in eventually mixing this tech with tACS in a closed loop control system to train the brain to enter specific mental states.

Regarding the MonolithEEG, it's wild to look back at that tech. It is a shame it was limited to 2 channels at 10 bit resolution, but it was a pioneer. With the ADS1299, we are now getting 24 bit resolution across 8 channels. That difference in dynamic range makes a huge difference, especially for precision applications like SSVEP where the noise floor really matters.

evanjrowley•18h ago
Congratulations on pushing the envelope on open source EEG tech!

Also, for more context:

  Transcranial alternating current stimulation (tACS) is a unique form of non-invasive brain stimulation. 
Reference: https://pmc.ncbi.nlm.nih.gov/articles/PMC7867505/
PaulHoule•1d ago
Won't work. Those drugs blockade this receptor

https://en.wikipedia.org/wiki/5-HT2A_receptor

and flatline

https://en.wikipedia.org/wiki/Median_raphe_nucleus

and if you wanted to measure that you would have to stick electrodes deep into your brain, no way are you going to see what is going on there from the surface.

Stuff I was doing last month got me interested in biofeedback again, I have some talent for it, I can make those mood rings change color at will.

Most of the EEG-based biofeedback devices have three electrodes around the temple and cost about $300 and don't really work because those alpha, beta, theta and delta waves all appear in different parts of the brain and can't be read out of the same electrodes. I hear you can do better with five electrodes but the five-electrode headsets I see don't advertise a price.

I wound up getting a Polar H10 heart rate monitor which can be used with HRV software

https://en.wikipedia.org/wiki/Heart_rate_variability

but the "biofeedback" apps I have seen so far seem to be breathing exercises that you could do without any hardware. I have electronics for EMG (muscles) and GSR (skin resistance) to hook up to an Ardunio and will probably try making a setup. I'm still looking for a soup-to-nuts answer for EEG biofeedback.

simontheHWguy•1d ago
tFUS is a really interesting new stimulation technique for deep brain. Still emerging tech though so who knows where it will go
PaulHoule•19h ago
Yeah, I started drafting a sci-fi setting on the edge of fantasy and dystopia where that was the McGuffin last year and what my RSS reader shows me is that science is catching up with that.
ekr•1d ago
Such a striking similarity to my own path. But I was in early 20s-mid 20s, going through some more difficult times and after a lot of research and study of the nervous system and trauma, I came to the conclusion that neurofeedback seems like the magic wand that had the biggest chance to actually produce a transformative effect.

I was experienced with soldering and electronics (mostly board repairs so not design), but not at a professional level. Initially I got an Analog Devices ADC, which they sent for free as I was still registered as a student at the time. I was trying to replicate some existing open source projects, but on an extremely low cost. Ultimately I got stuck in the weeds, and eventually gave up and just bought the ADS1299EEGFE-PDK evaluation board (upon which the original OpenBCI is based iirc). But eventually, again, postponed that, I was in the process of converting the LabView software to C, and to support real-time signal processing. After a short while I moved to the opposite corner of Europe and all those boards are sitting somewhere in my parent's attic. So the question in my mind still remains. Because neurofeedback does sound a bit too good to be true. But evidence is solid as well.

I will definitely give it another go at some point when life gives me more slack/spare time and space.

MrBuddyCasino•1d ago
> I’m happy to geek out about getting the ESP32 to stream reliably at high sample rates

Please do.

simontheHWguy•1d ago
The biggest challenge was the SPI communication during the initialization phase. I had a timing violation in the register set sequence that caused the IC to enter unpredictable states.

Because the ESP32 is so fast, I was driving the SPI lines without adequate delay between bytes during configuration. The ADS1299 would technically "communicate" but then behave crazily during data acquisition. I had to go back to the datasheet's SPI timing diagrams and strictly enforce the timing constraints in firmware to get it stable. I wish SPI was a more strictly defined standard

willbeddow•1d ago
Cool project! How does this compare to something like the OpenBCI cyton?
simontheHWguy•1d ago
To be honest, the two biggest drivers for this project were Cost and Signal Integrity. 1. Cost: This was my main frustration. The Cyton is currently priced at 1,249.I managed to get the Cerelog ESP−EEG down to 299 (assembled). I really wanted to lower the barrier to entry for individual researchers and hackers who can't drop a grand on a hobby board.

2. The Bias/Noise Implementation: While we both use the same high-end ADC (TI ADS1299), I implemented the Bias (Drive Right Leg) differently. I designed a true closed-loop feedback system. By actively driving the inverted common-mode signal back into the body, the board follows the TI spec aggressively for helping cancel out 60Hz mains hum

Regarding the analog front-end: The current version keeps the inputs flexible (firmware configurable) for different montages. However, I’ve found that most researchers just stick to a single standard montage configuration. Because the Cyton tries to be a "jack of all trades" for every possible montage, it compromises on physical filtering. For future revisions, I plan to trade some of that flexibility for dedicated common-mode and differential hardware filtering to lower the noise floor even further. I already had this on a previous revision prototype but decided to take not out for simplified testing. I'd like to add it back in to a future revision after some more prototype testing.

3. Connectivity: I’m using the ESP32 to stream over WiFi rather than a proprietary USB dongle. Ive been trying to get BLE SW working as well but noticed MAC drivers aren't the most friendly to my implementation.

Curiositry•1d ago
This is a super cool project! Probably the most interesting neurotech hardware I've run across since OpenBCI was released.

It would be great to see a side-by-side comparison of Cerelog and OpenBCI data from the same session/patient.

A few questions:

- Could you clarify which parts of the project are licenced MIT, which are CC-BY-SA, and which are CC-BY-NC-SA? It seemed like the guide and the README had more restrictive language than the actual license file.

- What made you decide to start fresh, rather than adding the features you needed to the OpenBCI?

simontheHWguy•1d ago
Thanks for the kind words! About the Side by side comparison, that is high on my to do list!

Regarding licensing, sorry about the confusion between my repo init and the docs. I have updated the repo to clarify the distinction: Firmware & Software: MIT License. I want people to build whatever they want on top of the stack. Hardware Schematics: CC-BY-NC-SA (Non-Commercial). Why the split? Since I am a solo bootstrapper, I need to protect the hardware from low-effort commercial clones while I get the business off the ground. But I strongly believe in "Source Available" schematics so researchers and engineers can debug, learn, and modify their own units, hence the CC-BY-NC-SA choice for the board files.

Why start fresh? It was an architecture decision. The Cyton uses a PIC32 + RFduino stack. I wanted to handle everything natively on the ESP32 for high-bandwidth WiFi streaming, which required a ground-up redesign. I also wanted to add onboard LiPo charging and the ability to experiment with different filter topologies. Building it from scratch helped me uncover a lot of subtle design constraints that aren't obvious until you dig into the layout.

Curiositry•1d ago
Ah, makes sense. Thank you! I will update my blogpost with these clarifications.
khr•1d ago
Thanks for making this! I'm very tempted to get one of these to do some ssVEP stuff.

Do you have plans to make a 16-channel (or 32-channel?) board in the future? In my area of research, 32 channels tends to be the recommended minimum for studies.

simontheHWguy•1d ago
I'm glad you like it! I actually made an ssvep pong game a while back with this, was kinda hard to play as the paddle was really small but was a cool concept demonstration. I am working on a video for this device to show off its capabilities with more depth as the current video on the site is very old.

With regards to higher channel count, yes I was thinking about this however it will likely not be released for a few months or longer. The firmware/software rules change a lot when you start daisy chaining the ADC so dev time takes long and I need to reincorporate back into these software ecosystems. Hardware config is also a bit different.

The Year in Mathematics

https://www.quantamagazine.org/the-year-in-mathematics-20251218/
1•isaacfrond•8m ago•0 comments

Show HN: LN3 Solved – A fast, spoiler-free game companion

https://ln3solved.com/
1•causalzap•8m ago•0 comments

Germany Discovers Lithium Deposit

https://dailygalaxy.com/2026/01/germany-discovers-massive-lithium-deposit/
1•Zeekaas•10m ago•0 comments

I Cannot SSH into My Server Anymore (and That's Fine)

https://soap.coffee/~lthms/posts/i-cannot-ssh-into-my-server-anymore.html
1•TheWiggles•12m ago•0 comments

Universal Consciousness as Foundational Field

https://pubs.aip.org/aip/adv/article/15/11/115319/3372193/Universal-consciousness-as-foundational...
1•roromainmain•12m ago•0 comments

Teenager died of overdose 'after ChatGPT coached him on drug-taking'

https://www.telegraph.co.uk/world-news/2026/01/06/sam-nelson-teenager-chatgtp-drugs-xanax-kratom-...
1•doppp•13m ago•1 comments

Changes to Android Open Source Project

https://source.android.com/
1•TechTechTech•13m ago•1 comments

Pake – Turn any webpage into a Tauri-based desktop app

https://github.com/tw93/Pake
1•shrikant•18m ago•0 comments

One Pizza Team

https://www.avraam.dev/blog/two-paradoxes-and-some-thoughts
1•almonerthis•23m ago•0 comments

Search for F-16 pilot continues as Air Force cannot confirm ejection

https://www.taipeitimes.com/News/front/archives/2026/01/07/2003850206
1•keepamovin•26m ago•0 comments

Reflag Is Going Indie

https://twitter.com/reflagcom/status/2008269362210222287
1•GarethX•28m ago•0 comments

Lego introduces display-free smart bricks

https://www.lego.com/en-us/smart-play/article/innovation
1•l1am0•29m ago•0 comments

Show HN: A RAM-only, end-to-end encrypted P2P terminal chat in Python

https://github.com/diorwave/cmd-chat
2•isanoguchi•33m ago•0 comments

Claude and Typst – Examples for AI-Assisted Document Generation [pdf]

https://richardcocks.github.io/chum/claude-typst-gallery.pdf
1•eterm•33m ago•1 comments

Promoting AI Agents

https://world.hey.com/dhh/promoting-ai-agents-3ee04945
2•Tomte•34m ago•0 comments

Renowned mathematician Joel David Hamkins says AI is useless for solving math

https://economictimes.indiatimes.com/news/new-updates/basically-zero-garbage-renowned-mathematici...
2•robtherobber•38m ago•1 comments

Making Tool Calling 75% More Efficient via Code

https://github.com/zeke-john/codecall
1•zekejohn•46m ago•2 comments

Daily News Aggregator and Reader

https://github.com/lucianmarin/news
1•lcnmrn•47m ago•0 comments

No one is invading Greenland anytime soon

https://www.youtube.com/watch?v=8QGe2jpd8xc
2•burnt-resistor•47m ago•1 comments

SymbioLearn – Real-time voice conversation with an AI tutor

https://www.symbiolearn.com/
1•thabanidev•48m ago•0 comments

YTTG – Generate consistent YouTube thumbnails quickly

https://www.yttg.app/
1•thabanidev•49m ago•0 comments

What is index overhead on writes?

https://www.depesz.com/2026/01/06/what-is-index-overhead-on-writes/
3•todsacerdoti•56m ago•0 comments

PixWit – All-in-One AI Video Creation Platform

https://pixwit.ai
1•maysunyoung•59m ago•1 comments

Snake Oil by Bruce Schneider (February 15, 1999)

https://www.schneier.com/crypto-gram/archives/1999/0215.html
1•chistev•1h ago•0 comments

A tiny course on differentiable rasterization

https://jjbannister.github.io/tinydiffrast/
1•ibobev•1h ago•0 comments

A Couple 3D AABB Tricks

https://gpfault.net/posts/aabb-tricks.html
3•ibobev•1h ago•0 comments

Hype Without Proof: The Influentists

https://carette.xyz/posts/influentists/
5•weird_trousers•1h ago•1 comments

Bindless Oriented Graphics Programming

https://alextardif.com/BindlessProgramming.html
2•ibobev•1h ago•0 comments

The Fallacy of Cracking Contests by Bruce Schneider (December 15, 1998)

https://www.schneier.com/crypto-gram/archives/1998/1215.html
1•chistev•1h ago•0 comments

Free and local browser tool for designing gear models for 3D printing

https://gears.dmtrkovalenko.dev
1•neogoose•1h ago•0 comments