A Modular 4-Channel ESP-32 EStim

SW-32 - A modular ESP-32 e-stim device

About

The SW-32 is a modular e-stim unit, with the ESP-32 microcontroller at the core. It supports a max of 4 channels.

The modular output boards try to mimic the output stage of the well-known Erostec ET312 or better, the DIY reverse engineered MK-312. Hopefully by recreating this output stage, the same e-stim experience can be achieved as those devices.

The main board makes use of two ESP-32 modules. One for the main control/front panel IO and another for operating the output channels. They have separate ESPFlash 2x3 headers for programming and serial communication. A JTAG 2x5 header provides debugging support for both chips by use of JTAG chaining.

I chose to use two ESP-32 modules, instead of using additional I/O expanders and ADCs. Since two ESP-32 modules work out cheaper or roughly equal to the price of the other option, for one off assemblies. While also gaining additional functionality because microcontroller.

Everything is routed directly into the microcontroller as separate signals (e.g. the microphone and stereo line-in audio, L and R channels). Nothing is hardwired, allowing firmware to customize how the front I/O works. For example instead of having a MIC IN you could change the functionality to act as a trigger for some action, etc.

Structure

The project is split into multiple KiCad sub-projects:

  • SW-3211M [Schematic] - An easy-to-use module board. Made to be used with external MCU and isn't considered a part of the modular design.
  • SW-3240 [Schematic] - This is the core of the project, the main control board that can support up to four output channels.

Modules

More detailed information about each can be found in the project specific READMEs.

Acknowledgments

The design of the output module board (SW-3211M) was based on the design by WendyTeslaburger/WT-312.

License

This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License, available at http://creativecommons.org/licenses/by-nc/4.0/.

Owner
Similar Resources

A CPU implemented in an analog modular synthesizer

 A CPU implemented in an analog modular synthesizer

A CPU implemented in an analog modular synthesizer This runs in the VCV Rack eurorack simulator. I wrote a thread explaining the CPU on twitter and a

Dec 28, 2022

Mars_lib - MaRS: A Modular and Robust Sensor-Fusion Framework

Mars_lib - MaRS: A Modular and Robust Sensor-Fusion Framework

Introduction The Modular and Robust State-Estimation Framework, or short, MaRS, is a recursive filtering framework that allows for truly modular multi

Jan 5, 2023

C++ Multiplatform Modular Toolkit Template

C++ Multiplatform Modular Toolkit Template

C++ Multiplatform Modular Toolkit Template Nativium Philosophy: Write Once And Compile Anywhere About Write a single code in C++ and compile for any p

Dec 26, 2022

The whole design is modular, parametric (cost and others), field repairable, and super extensible

The whole design is modular, parametric (cost and others), field repairable, and super extensible

Easy-Transceiver The whole design is modular, parametric (cost and others), field repairable, and super extensible. It is almost trivial to add suppor

Oct 2, 2022

WirePlumber is a modular session / policy manager for PipeWire

WirePlumber WirePlumber is a modular session / policy manager for PipeWire and a GObject-based high-level library that wraps PipeWire's API, providing

May 15, 2022

A customized LGL Android mod menu, containing ESP only for PUBG Mobile 1.3.0 for Android

A customized LGL Android mod menu, containing ESP only for PUBG Mobile 1.3.0 for Android

PUBG Mobile ESP Mod Menu A customized LGL mod menu, containing ESP only for PUBG Mobile 1.3.0 for Android. Everything are fixed so it works with both

Mar 19, 2022

An Arduino wrapper to @sdima1357's usb_soft_host esp-idf example

An Arduino wrapper to @sdima1357's usb_soft_host esp-idf example

ESP32 USB Soft Host library for Arduino IDE This is mainly a wrapper around the excellent work of Dmitry Samsonov (@sdima1357) with esp32_usb_soft_hos

Jan 3, 2023

A Walkie-Talkie based around the ESP32 using UDP broadcast or ESP-NOW

A Walkie-Talkie based around the ESP32 using UDP broadcast or ESP-NOW

Overview We've made a Walkie-Talkie using the ESP32. Explanatory video Audio data is transmitted over either UDP broadcast or ESP-NOW. So the Walkie-T

Dec 31, 2022

Esp for warzone

OFFSETS.cpp IS NOT THE OFFSETS FILE THE PROGRAM USES IT IS JUST TO HELP YOU UPDATE IT ALL OF THE ACTUAL OFFSETS AND STUFF ARE IN THE GAME FILE This is

Jun 10, 2021
Veml7700-esp-idf - VEML7700 Light Sensor driver for ESP-IDF
Veml7700-esp-idf - VEML7700 Light Sensor driver for ESP-IDF

VEML7700 Light Sensor driver for ESP-IDF Overview This project aims to provide a very simple interface for configuring and reading data from the VEML7

Nov 3, 2022
Install the Homebrew Channel to the vWii Menu from Wii U Mode.

Install a channel to the vWii Menu from Wii U Mode. In its current state, it simply installs the Homebrew Channel.

Jan 2, 2023
16 channel R/C system for models of all kinds

A 16 channel Radio Controlled system for R/C models of all kinds. This project was started during the 2020 pandemic lockdown (thus the title), and has since grown out of passion & enthusiasm.

Dec 14, 2022
4 channel servo controller code for Arduino Mega 2560 for AASD-15A and similar motor driver

eh-msc-4dof 4 channel servo controller code for Arduino Mega 2560 for AASD-15A and similar motor driver Arduino sketch for generating pulses needed to

Sep 9, 2022
A basic, MQTT integration point service for the Waveshare 8 channel relay board

relayboard-control A basic, MQTT integration point service for the Waveshare 8 channel relay board. This was built specifically for our own home's rel

Mar 22, 2022
CredBandit - Proof of concept Beacon Object File (BOF) that uses static x64 syscalls to perform a complete in memory dump of a process and send that back through your already existing Beacon communication channel

CredBandit CredBandit is a proof of concept Beacon Object File (BOF) that uses static x64 syscalls to perform a complete in memory dump of a process a

Dec 25, 2022
HAGIWO 6 Channel Sequencer / Euclidean Rhythm Sequencer
 HAGIWO 6 Channel Sequencer / Euclidean Rhythm Sequencer

A through-hole PCB conversion of HAGIWO's 6 channel eurorack gate sequencer. Includes Gerbers, Code and building instructions.

Dec 5, 2022
Minipops alternative firmware for Music Thing Modular Radio Music

RMoxy Minipops drummer alternative firmware for Music Thing Modular Radio Music module The repository for the Radio Music module by Tom Whitwell Kits

Nov 6, 2022
Modular status bar for dwm written in c.

dwmblocks Modular status bar for dwm written in c. usage To use dwmblocks first run 'make' and then install it with 'sudo make install'. After that yo

Oct 12, 2021
Modular personalized dictionary generator.
Modular personalized dictionary generator.

Narthex Narthex (Greek: Νάρθηξ, νάρθηκας) is a modular & minimal dictionary generator for Unix and Unix-like operating system written in C and Shell.

Jan 1, 2023