Skip to content

Implantable Pulse Generator (IPG)

Repo: CARSSCenter/OpenNerve-Implantable-Pulse-Generator

Not approved for human use

Nothing described on this page has regulatory clearance for human use. See Regulatory status and disclaimers.

Exploded view of IPG

Exploded view of IPG.

What it is

The IPG provides current-based bipolar electrical stimulation, records biosignals using built-in analog front ends, and can connect to third-party sensors over an in-body I2C network. It communicates with a controller over Bluetooth Low Energy (BLE) and can be charged inductively. Two microcontrollers are used: an nRF52810 for BLE, and an STM32 ("MCU") for most other functions. (source)

Two PCB revisions exist with different channel counts and stimulation capability. Each has its own maturity, evidence, and BOM/fab-notes page — see Gen1 vs. Gen2 below. Currently, only the Gen2 PCBA is under active development.

The Gen2 PCBA is also available as a bench-friendly development board — the same hardware, retained in its manufacturing frame with USB-C power and breakout connectors, rather than trimmed down for implantation.

Gen1 vs. Gen2

Gen2 PCBA Gen1 PCBA
Stimulation channels 2 fully independent bipolar (square wave to 1200 Hz, or low-frequency sine wave) 8 pseudo-independent monopolar
Biosignal AFEs 4 differential (ECG/EMG/eCAP) 2 differential (ECG/EMG/eCAP)
MCU firmware Gen2 PCBA/FW-MCU-H2/ — revision-specific Gen1 PCBA/FW-MCU-H1-251201.hex — revision-specific
BLE firmware FW-BLE/ — shared between versions
Design files released Altium source files (schematic & layout), BOM, STEP Altium schematics & layout, BOM, assembly drawing, fabrication drawing, test-point deck

Both revisions share the same enclosure family (versioned independently, last release rev 0.7 — see either revision page) and the same BLE firmware. Note: as of March 2026 Windows control software backwards compatibility has now been broken; work would be needed to restore compatibility with Gen1 IPGs.

Maturity

Evidence E2 Acute in vivo

Manufacturing readiness M3 GMP-capable

Maturity levels refer to the packaged IPG. For maturity levels when using the PCBA as a development board, see Gen2 PCBA maturity and Gen1 PCBA maturity.

Standing disclaimer

These levels describe testing history and documentation state. They are not regulatory clearance and not a safety endorsement.

Control Software

Two software platforms exist for sending control signals to and streaming data from the OpenNerve IPG. The Windows app is under active development and is used for research across multiple working groups. The Android app has only been used for design verification testing, and is not considered mature.

  • Windows app — see Windows software page.
  • Android app, in development — see Android software page. Both require an encryption key exchange with the IPG firmware; contact open.nerve@usc.edu for the shared development key, or use the encryption guide (linked below) to generate your own. (source)

Charging

The IPG can be charged inductively using the OpenNerve Charger.

IPG Documentation

Design History Files

Design Output Review
Mechanical Specifications
Test Plan
Mechanical Design Images

DVT Protocols

Docs/Testing-Protocols/ contains eight PDFs, each named "Hornet IPG … DVT Protocol". Each viewer below fetches its PDF live from the repo's default branch — click a title to expand it:

Accelerated aging DVT protocol
Drop & impact DVT protocol
Heating during normal operation DVT protocol
Hermeticity DVT protocol
Minor mechanical shock DVT protocol
RGA DVT protocol
Shear force DVT protocol
Vibration mechanical force DVT protocol

Documentation synced from the upstream repo

The following documentation is available in the IPG's repository and has been mirrored here for convenience. Please submit pull requests for edits in the original document, not on this website!

For hands-on setup and usage instructions (power-up, the Windows control app, stimulation and recording workflows), see the Windows app's synced Getting started guide.