MCPcopy Index your code
hub / github.com/diglet48/restim

github.com/diglet48/restim @v1.63

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.63 ↗ · + Follow
1,486 symbols 5,726 edges 193 files 68 documented · 5%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Restim

Restim is a realtime e-stim signal generator for multi-electrode setups.

Refer to the wiki for help.

Supported hardware

  • Stereostim (three-phase only) and other audio-based devices (Mk312, 2B, ...)
  • FOC-Stim
  • NeoDK (coming soon)

Main features

  • Control e-stim signals with funscript or user interface.
  • Synchronize e-stim with video or games.
  • Calibrate signal for your preferred electrode configuration.

Installation

Windows

download the latest release package: Releases

Linux

make sure python 3.10 or newer is installed on your system.
Download the Restim source code, and execute run.sh

Mac

Grab the latest .dmg from ReleasesRestim-arm64.dmg for Apple Silicon (M1+) or Restim-x86_64.dmg for Intel. Open the DMG and drag Restim.app to Applications.

First launch — macOS will block the app because it's not signed with an Apple Developer ID. Pick one of:

Option A — System Settings (no terminal required):

  1. Double-click Restim in Applications. You'll get a dialog saying it can't be opened or was blocked — dismiss it.
  2. Open System Settings → Privacy & Security, scroll down to the Security section. You'll see a message about Restim being blocked, with an Open Anyway button. Click it.
  3. Confirm with Touch ID or your password, then click Open in the final dialog.

Option B — one-line terminal command:

Open Terminal and paste:

xattr -dr com.apple.quarantine /Applications/Restim.app

Then double-click the app normally. This removes the "downloaded from the internet" flag that triggers Gatekeeper; it does not disable Gatekeeper system-wide or require sudo.

Subsequent launches are normal double-clicks either way.

Older guides mention a "right-click → Open" shortcut. That path was removed in macOS Sequoia (15) for apps without a Developer ID signature; use one of the options above instead.

Development:

install PyCharm and python 3.10 or newer. Open Settings, python interpreter, and configure a new venv. Navigate to requirements.txt and install the dependencies. Then run restim.py.

Core symbols most depended-on inside this repo

get
called by 222
qt_ui/settings.py
setValue
called by 156
qt_ui/widgets/battery_progress_bar.py
set
called by 130
qt_ui/settings.py
last_value
called by 110
stim_math/axis.py
interpolate
called by 91
stim_math/axis.py
link_axis
called by 62
qt_ui/axis_controller.py
error
called by 55
net/media_source/kodi.py
add
called by 48
stim_math/axis.py

Shape

Method 1,134
Class 283
Function 69

Languages

Python100%

Modules by API surface

device/neostim/neostim_device.py62 symbols
qt_ui/algorithm_factory.py49 symbols
stim_math/axis.py44 symbols
device/focstim/proto_device.py42 symbols
qt_ui/widgets/threephase_widget.py40 symbols
qt_ui/mainwindow.py36 symbols
qt_ui/widgets/fourphase_widget_individual_electrodes.py34 symbols
qt_ui/models/script_mapping.py34 symbols
stim_math/audio_gen/pulse_based.py28 symbols
qt_ui/sensors/sensor_category.py27 symbols
device/focstim/proto_api.py26 symbols
stim_math/threephase.py25 symbols

For agents

$ claude mcp add restim \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact