YOU CAN BUILD THE SENSOR THAT READS YOUR HEART, MUSCLES AND BRAIN AT HOME
A board the size of a postage stamp reads your heartbeat, muscle firing, eye movement and brain activity — and the schematic is public.
Open-hardwareScience
- difficulty
- ●●●○○
- time
- a weekend
- license
- CERN-OHL-S-2.0
- repo
- repo ACTIVE418 stars
●●●○○ · a weekend · CERN-OHL-S-2.0 · 418 stars · repo ACTIVE
WHAT YOU’LL NEED
- 3D printer + filament — printable parts — files are in the repo
- Electronic parts — full list with part numbers in the repo BOM
- Dev board / microcontroller — runs the project firmware
Partner
COMPAREE VERDICT
This is the analog front end problem solved in hardware and published. The board is 25.4 by 10 millimetres, it amplifies and filters biopotential signals in the few-microvolt range, and it hands a clean trace to any 5-volt microcontroller with an analog input. Version 1.0 adds solder jumpers that set the gain, band pass and electrode configuration on the board itself, so the same PCB reads a heartbeat or a brain trace depending on which pads you bridge. The repository is complete: KiCad files, interactive BOM, Arduino filter code for each signal band, assembly notes and example traces. The single thing most likely to go wrong is noise pickup if you do not follow the grounding and shielding notes — biopotential signals are microvolts and mains hum is everywhere. If you have never worked with instrumentation amplifiers or read an ECG trace before, expect an evening of troubleshooting before the trace is clean. This is not a kit — you order the board from a fab and hand-solder the components — but if you want to see what your body is doing electrically and you want the files to modify it, this is the design to start from. It will not diagnose anything and it should never be on your skin while connected to mains power.
IN THE REPO
NOT IN THE REPO
- —Complete KiCad schematic, PCB layout and 3D STEP files are in the repository.
- —Interactive HTML bill of materials lists every component with supplier links.
- —Arduino filter sketches provided for all four signal types (ECG, EMG, EOG, EEG).
- —Hardware licensed under CERN Open Hardware Licence v2 Strongly Reciprocal, software under MIT.
- —CERN-OHL-S requires you to share modifications under the same licence if you distribute hardware.
- —Not a medical device — explicitly stated by the makers — this is for education and experimentation only.
Can I build this?
Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.
Partner · KickstarterHeyGears G1: 10M+ colors and transparent parts in one print, plus UV printing on flat objects. Figures, parts and labels — no painting.
Gallery
Start here
Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.
- 1.Read the repository README and the hardware design files to understand the four signal modes and solder jumper configurations (The jumper table is critical — bridging the wrong pads will give you the wrong gain or band pass for the signal you want.)
- 2.Download the Gerber files from the Hardware folder and order PCBs from JLCPCB, PCBWay or your preferred fab(Minimum order is usually five boards; cost is typically under $15 shipped.)
- 3.Open the interactive HTML BOM in the repository and order components(The BOM links to LCSC and other suppliers; expect $10-15 in parts per board.)
- 4.Solder the board following the assembly notes, starting with the smallest components and finishing with the headers(0805 resistors and capacitors, SOIC-8 op-amp — manageable with a fine tip and flux but not a first SMD project.)
- 5.Bridge the solder jumpers for your chosen signal type (ECG / EMG / EOG / EEG) according to the table in the README(You can change modes later by clearing the solder and re-bridging, but start with one.)
- 6.Connect the board to an Arduino, upload the matching filter sketch from the Software folder, attach gel electrodes and open the serial plotter(Follow the electrode placement diagrams in the README — wrong placement is the most common reason for a noisy or flat trace.)
Resources
Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.
KNOWN ISSUES
- Ordering the board without reading the solder jumper table — you need to bridge specific pads for each signal type, and the default (no jumpers) does nothing useful.
- Connecting the circuit to a mains-powered device while electrodes are on skin — use battery power only, or a laptop running on battery with no charger plugged in.
- Expecting a clean trace without following the grounding and shielding notes — biopotential signals are microvolts and mains hum is everywhere; electrode placement, cable routing and ground connection all matter.
- Using dry electrodes or badly placed gel electrodes — skin contact has to be good and the electrode positions have to match the README diagrams, or the trace will be noise.
- Assuming this is a medical device or that it can diagnose anything — it is explicitly not, and the makers say so in the repository; it is for looking at signals, not for health decisions.
- Not checking the CERN-OHL-S licence terms before modifying and sharing — the strongly reciprocal variant requires you to release modifications under the same licence if you distribute hardware.
Can I use this to diagnose a heart condition or monitor health?
No. This is not a medical device and makes no diagnostic claim. It is for education, experimentation and seeing what your body's electrical signals look like. Do not use it for medical decisions.
What is the difference between the four signal modes?
ECG reads the heart (0.5-44.5 Hz), EMG reads muscle activity (74.5-149.5 Hz), EOG reads eye movement (0.5-19.5 Hz) and EEG reads brain activity (0.5-29.5 Hz). You configure the mode by bridging solder jumpers on the board to set the gain and band pass filter.
Do I need an oscilloscope or can I use an Arduino?
An Arduino with an analog input is enough — the repository includes Arduino sketches that read the signal and send it to the serial plotter. An oscilloscope works too but is not required.
What does the CERN-OHL-S licence mean for me?
You can make the board, modify it and use it freely. If you distribute modified hardware (sell boards, give them away, publish a derivative), you must release your changes under CERN-OHL-S too. The software is MIT, which has no such requirement.
How hard is the soldering?
0805 passives and an SOIC-8 op-amp — fine pitch but not ball-grid or QFN. If you have done a few SMD boards before, this is manageable with a fine tip and flux. If this is your first surface-mount project, buy extra boards.
Community builds
No community builds yet — be the first, we feature the best ones.
Discussion1
FROM THE COMPAREE TEAM
Four signal types — heart, muscle, eye, brain — from one 25-millimetre board and a solder jumper. Which one would you wire up first?
Upside Down Labs
Upside Down Labs is a hardware team building open-source biopotential sensing tools for education and research. BioAmp EXG Pill is one of several designs they publish, all aimed at making body-signal sensing accessible without proprietary hardware or closed schematics.
DISCLAIMER
- Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
- Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
- Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.


CompareeTEAM9d ago
Practical notes from our verification: the interactive BOM is genuinely useful — it lists every component with live supplier links — but there is no official assembly video, so you are working from the schematic and the README. The solder jumper table is clear but easy to miss if you skim; wrong jumpers mean wrong gain and you will spend an hour wondering why the trace is flat or clipped. Electrode placement diagrams are in the README and they matter — a misplaced pad is the most common reason for noise. The repository does not include star count or last-push metadata in the payload, so we cannot report those, but the file structure and documentation are both current and complete.