DIY 35$ Polyphonic Synthesizer : the TYPE-2

by alxdreee in Circuits > Audio

143 Views, 3 Favorites, 0 Comments

DIY 35$ Polyphonic Synthesizer : the TYPE-2

TYPE-2 Autonomous Polyphonic Synthesizer V.1.0.0
25082026-DSCF3607-Compressed.png
30082026-DSCF3643.png

The TYPE-2 is a esp32-S3-based polyphonic synthesizer. Engineered entirely around a highly optimized DSP core, it leverages fast polynomial saturation, a dual-rate processing architecture, and analog-modeled filters to deliver a studio-quality audio signal flow.


Designed with accessibility in mind, it is highly affordable (around €35 in total components) and features a near-zero difficulty build process requiring minimal wiring.

Supplies

30082026-DSCF3638.png

Here is the hardware needed for this project:

  1. ESP32-S3 Microcontroller (16MB Flash, PSRAM strictly required)
  2. PCM5102A I2S DAC Module
  3. SSD1306 128x64 OLED Display
  4. KY-040 Rotary Encoder
  5. 1x Tactile Navigation Button
  6. 2x MPR121 I2C Capacitive Touch Sensors
  7. Copper tape (for creating capacitive touch keys)

Core Features & Capabilities

30082026-DSCF3636.png

On the sound side, there are 7 voices and the classic waveforms (Sine, Square, Triangle, Sawtooth). The signal passes through a modeled 24dB/Oct Moog Ladder filter. To add some grit and warmth, I’ve included a tube overdrive effect and an “analog slop” parameter. The latter simulates the thermal drift of old VCOs to give unisons and chords a natural, breathing quality. A short delay ties everything together at the end of the chain.


No traditional keyboard here, but two touch-sensitive pads made of copper tape. The left hand selects the root note, and the right hand chooses the chord type from among 9 voicings (min7, Sus4, maj, etc.). I’ve also included a “Strum” function to strum the notes like you would with a pick!


For visual feedback, a 0.96-inch OLED screen displays the sound, which physically distorts in real time based on the frequencies being played.


The code and schematics are 100% open source, the entire project is available here:

https://github.com/Alxdreee/TYPE-2


IDE Setup & Installation

image_2026-08-30_154513925.png
image_2026-08-30_154813632.png
  1. IDE Setup: Install the Arduino IDE .
  2. Compiler Settings: To ensure the DSP engine and display tasks run properly, configure your IDE with the following exact parameters:
  3. USB CDC On Boot: Enabled
  4. CPU Frequency: 240MHz (WiFi)
  5. Flash Mode: QIO 80MHz
  6. Flash Size: 16MB (128Mb)
  7. Partition Scheme: 16M Flash (3MB APP/9.9MB FATFS)
  8. PSRAM: OPI PSRAM
  9. Upload Speed: 115200
  10. Libraries: Install Adafruit GFX, Adafruit SSD1306, and Adafruit MPR121.
  11. Copy and paste the instrument's source code into the IDE's text editor

Downloads

Wiring the Components

30082026-DSCF3637.png

Use the copper ribbon to create custom capacitive touch buttons and connect them to the MPR121 inputs: 12 keys for the left MPR121 and 7 for the right MPR121, plus 1 effect keys on pin11. Get creative!


1. esp32-S3 ➔ PCM5102A


  1. GPIO 4LRCK / WS
  2. GPIO 5DIN
  3. GPIO 6BCK
  4. GPIO 7XSMT
  5. GNDSCK
  6. 3.3V / 5VVIN
  7. GNDGND


2. esp32-S3 ➔ OLED Display 128x64 (I2C0)


  1. GPIO 8SDA
  2. GPIO 9SCL
  3. 3.3VVCC
  4. GNDGND


3. esp32-S3 ➔ MPR121 Right - Chords

Shares the I2C0 bus with the OLED display

  1. GPIO 8SDA
  2. GPIO 9SCL
  3. GPIO 18IRQ
  4. GNDADD
  5. 3.3VVIN
  6. GNDGND


4. esp32-S3 ➔ MPR121 Left - Notes

Uses the secondary I2C bus to avoid address conflicts

  1. GPIO 1SDA
  2. GPIO 2SCL
  3. GPIO 39IRQ
  4. GNDADD
  5. 3.3VVIN
  6. GNDGND


5. Main Controls (Rotary Encoder + Button)


  1. GPIO 42KY-040 CLK
  2. GPIO 41KY-040 DT
  3. GPIO 40KY-040 SW
  4. GPIO 38Menu Btn Leg 1
  5. GNDBoth GND (Connect Encoder GND and Btn Leg 2 to Ground)


Testing

Flash the code and let the party begin! Use the various settings in the menu to create your own sound. Feel free to share your remixes and jams!

The Future of the TYPE-2

The project is under active development. Here’s what’s planned for upcoming updates :

  1. Adding an arpeggiator effect
  2. Managing the creation of presets from a dedicated menu
  3. External MIDI communication (USB/Serial)
  4. Battery management and portable power components integration
  5. Custom PCB design
  6. Enclosure design


This project is 100% open-source and developed entirely on my own in my spare time, an open-source initiative developed for the benefit of the maker community and synthesizer enthusiasts. Don't forget to star the GitHub page !

I look forward to hearing your feedback!

Alexandre