How upsidedownlabs/bioamp-exg-pill works
BioAmp EXG Pill is an analog front end for acquiring ECG, EMG, EOG, and EEG signals. The documented workflow is to connect electrodes and a compatible ADC microcontroller, then use Arduino examples for sampling, filtering, analysis, display, or control. A separate ESP32 visualizer example provides networked oscilloscope and server capabilities. The visualizer’s core modules are represented; connections among them use source-index references, while the acquisition and example workflows rely on the README. Unsampled example implementations are not inferred.
Main entry points: webServer.hpp Web Server · file_system.h File System · common_functions.h Common Helpers · user_management.h User Management
Components 25
Signal Hardware
- BioAmp AFE
hardware/BioAmp-EXG-Pill.kicad_sch
Arduino Examples
- Fixed Sampling
software/FixedSampling/FixedSampling.ino - Signal Filters
software - EMG Envelope
software/EMGEnvelop/EMGEnvelop.ino - Heartbeat Detection
software/HeartBeatDetection/HeartBeatDetection.ino - Fast Heart Rate
software/Faster_HeartRateDetection/Faster_HeartRateDetection.ino - Eye Blink Detection
software/EyeBlinkDetection/EyeBlinkDetection.ino - Drowsiness Detection
software/DrowsinessDetection/DrowsinessDetection.ino - EMG Bar Graph
software/LEDBarGraph/LEDBarGraph.ino - Servo Control
software/ServoControl/ServoControl.ino - Claw Controller
software/ClawController/ClawController.ino - BLE Photo Capture
software/EOGPhotoCaptureBLE/EOGPhotoCaptureBLE.ino - OLED BPM
software/OLED_BPM/OLED_BPM.ino
ESP32 Visualizer
- EXG Visualizer
software/EXG-Visualizer/EXG-Visualizer.ino - Oscilloscope
software/EXG-Visualizer/oscilloscope.h - Web Server
software/EXG-Visualizer/webServer.hpp
Visualizer Services
- TCP Server
software/EXG-Visualizer/TcpServer.hpp - FTP Server
software/EXG-Visualizer/ftpServer.hpp - Network Setup
software/EXG-Visualizer/network.h - File System
software/EXG-Visualizer/file_system.h - User Management
software/EXG-Visualizer/user_management.h - Time Services
software/EXG-Visualizer/time_functions.h - Common Helpers
software/EXG-Visualizer/common_functions.h
Other components
- Electrodes
- ADC Microcontroller
Connections 34
- Electrodes → BioAmp AFE: provide bio-signals
README.md - BioAmp AFE → ADC Microcontroller: outputs analog signal
README.md - ADC Microcontroller → Fixed Sampling: samples ADC
README.md - ADC Microcontroller → Signal Filters: runs examples
README.md - ADC Microcontroller → EMG Envelope: runs examples
README.md - ADC Microcontroller → Heartbeat Detection: runs examples
README.md - ADC Microcontroller → Fast Heart Rate: runs examples
README.md - ADC Microcontroller → Eye Blink Detection: runs examples
README.md - Eye Blink Detection → Drowsiness Detection: supports detection
README.md - ADC Microcontroller → EMG Bar Graph: runs examples
README.md - ADC Microcontroller → Servo Control: runs examples
README.md - ADC Microcontroller → Claw Controller: runs examples
README.md - ADC Microcontroller → BLE Photo Capture: runs examples
README.md - ADC Microcontroller → OLED BPM: runs examples
README.md - ADC Microcontroller → EXG Visualizer: runs ESP32 example
README.md - EXG Visualizer → Oscilloscope: uses oscilloscope
- Oscilloscope → Web Server: uses WebSocket
software/EXG-Visualizer/oscilloscope.h - Web Server → TCP Server: extends TCP server
software/EXG-Visualizer/webServer.hpp - FTP Server → TCP Server: extends TCP server
software/EXG-Visualizer/ftpServer.hpp - FTP Server → File System: accesses files
software/EXG-Visualizer/ftpServer.hpp - FTP Server → User Management: checks access
software/EXG-Visualizer/ftpServer.hpp - Network Setup → File System: reads configuration
software/EXG-Visualizer/network.h - File System → Time Services: includes time services
software/EXG-Visualizer/file_system.h - User Management → File System: reads and writes
software/EXG-Visualizer/user_management.h - Web Server → TCP Server: uses TCP connections
software/EXG-Visualizer/webServer.hpp - Web Server → User Management: uses authentication
software/EXG-Visualizer/webServer.hpp - Web Server → File System: serves files
software/EXG-Visualizer/webServer.hpp - Web Server → Network Setup: uses network setup
software/EXG-Visualizer/webServer.hpp - Web Server → Common Helpers: uses helpers
software/EXG-Visualizer/webServer.hpp - TCP Server → Common Helpers: uses helpers
software/EXG-Visualizer/TcpServer.hpp - File System → Common Helpers: uses helpers
software/EXG-Visualizer/file_system.h - Time Services → Common Helpers: uses helpers
software/EXG-Visualizer/time_functions.h - Network Setup → Common Helpers: uses helpers
software/EXG-Visualizer/network.h - User Management → Common Helpers: uses helpers
software/EXG-Visualizer/user_management.h