Skip to the content
PCBKitNew board
2 layers225 × 115 mmSQ80 Hardware Programmer, the printed circuit board in 3D

The PG-80 Crosswave Parameter Programmer enables a customized, 32-pot programming workflow for the Ensoniq SQ-80 and ESQ-1, includes a toggle feature to enbale/disable Hidden Waves and a shftt function that extends the unit's function to 42 parameters.

Size
225 × 115 mm
Copper layers
2
Thickness
1.6 mm
Parts
59
Nets
74
Pads
303
Tracks, vias
910, 0
Pours
1
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
30 Jun 2026
Updated
13 Sep 2026

Overview

SQ80 Hardware Programmer is an open-source printed circuit board by trevorj71, from the trevorj71/SQ-80-Parameter-Programmer repository on GitHub, published under the CC0-1.0 licence. It is a 2-layer board of 225 × 115 mm with 59 parts on 74 nets, routed with 910 tracks and 0 vias.

Its parts include 6 resistors, 4 ICs, 3 capacitors, 2 connectors and 2 switches. It belongs with the interfaces and adapters and audio and music boards and the AVR (ATmega, ATtiny) boards of this library.

README

README.md

PG-80 Crosswave Parameter Programmer for Ensoniq SQ-80 and Ensoniq ESQ1

This repo contains open source hardware and software for the Ensoniq SQ-80 and ESQ-1 hybrid synthesizers, which I have named the "PG-80". It allows you to program up to 63 parameters in your synthesis engine using the 32 knobs on the front panel. It also supports hidden waves if your synth is equipped with an OS that supports them on the front panel. It also features a MIDI merge feature so you can run an input from your MIDI interface through the programmer to the synth, inserting the programmer in-line so it doesn't add unnecessarily to your workflow or MIDI rats nest.

I'm still tweaking the firmware to improve the knob layout and I have a new housing version in progress to accomodate a larger OLED display, but the current design is debugged and functional.

The BOM is now available in the Root Directory and the KiCad Directory in csv format.

Housing

My vision for this unit was always been a sidecar that can sit next to the synth on a stand designed for a 76 key workstation and looks like an extension of the synth to the extent possible. Likely, you could design a smaller housing for desktop, as mine is not necessarily designed to minimize its footprint or print time.

The 3D models for the prototype are will be published here in both Fusion 360 and STL formats.

Prototype Version (Adafruit 326 and PCB Mounted MIDI Connections)

PG-80 Programmer prototype with Ensoniq SQ-80 and Ensonig ESQ-1

For my first build, I used PCB mounted MIDI connectors and a PCB that was optimized for production and shipping cost. This left me with limited space between the knob array and the back panel of the unit for an OLED, so I used an Adafruit 326 0.91 inch display. This was fine for prototyping but in practice in the studio it is really hard to read. Otherwise the knob layout feels good and the overall geometry of the print meets the vision.

I did have some slippage in my printer late in this job (which took 5 days) so there is a bit of a bondo job on this, but it works for a prototype.

In Progress Updgraded Version (Adafruit 2719 and Panel Mounted MIDI Connecitons)

Build two will switch to a 2.42 inch Adafruit 2719 and panel mounted MIDI connections. Design for that enclosure is under way.

Arch Mode (SQ-80 / ESQ-1) Toggle

A panel mounted toggle switch, SW1, facilitates switching between the 32 wave ESQ-1 table and the 75 wave SQ-80 table. In standard mode, this aligns the values sent by the oscillator waveform knobs within the desired range for your model synth. In Glitch Mode, this is more a matter of the mask used for the OLED on parameters 33-75, since all 255 parameters can be transmitted to the synth.

Glitch Mode (Hidden Waveform) and Shift Switch

This momentary pushbutton switch, SW2, has two functions.

A quick tap of this swtich enables glitch mode. This allows knobs 1-3 (oscillator waveforms) to transmit all 255 available parameters to the synth. If you have an OS for your synth that supports hidden waveforms, you will be able to scroll through all 255 paramteters. This only works with the modified OS versions that support hidden waves.

Pressing and holding this switch while also turning a knob makes it function as a shift key, letting you change the MIDI channel on your device or modify up to 63 parameters in your synthesis workflow. Failing to turn a knob while the switch is depressed reverts the programmer to Glitch Mode / Standard Mode.

Potentiometer Layout

Currently, the programmer has been laid out with 32 Potentiometers. You can access up to 63 parameters plus MIDI channel by pressing and holding the Hidden Waveforms button like a shift key.

The knob layout as of version 1.5 is as follows:

GLITCH BUTTON IN THE UP POSITION - NOT PRESSED

Oscillator 1Oscillator 2Oscillator 3DCA-FilterMOD 1MOD 2ENV 1-3ENV 2-4
WAVEFORMWAVEFORMWAVEFORMDCA1 VOLLFO1 WAVELFO2 FREQENV1 ATKENV2 ATK
OSC1 FINEOSC2 FINEOSC3 FINEDCA2 VOLLFO1 FREQLFO3 WAVEENV1 DECENV2 DEC
OSC1 COAROSC2 COAROSC3 COARDCA3 VOLLFO1 DELYLFO3 FREQENV1 RELENV2 REL
OSC1 OCTOSC2 OCTOSC3 OCTENV4 VOLLFO2 WAVELFO3 DELYENV1 SUSENV2 SUS

GLITCH BUTTON HELD DOWN WHILE TURNING

Oscillator 1Oscillator 2Oscillator 3DCA-FilterMOD 1MOD 2ENV 1-3ENV 2-4
MOD1 SRCMOD1 SRCMOD1 SRCFILT CUTLFO1 L1LFO2 LSENV3 ATKENV4 ATK
MOD1 LEVMOD1 LEVMOD1 LEVFILT RESLFO1 L2LFO3 L1`ENV3 DECENV4 DEC
MOD2 SRCMOD2 SRCMOD2 SRCFILT MOD3LFO2 DELYLFO3 L2ENV3 RELENV4 REL
MOD2 LEVMOD2 LEVMOD2 LEVVOICE PANLFO2 L1MIDI CHANENV3 SUSENV4 SUS

Software Versions

I recommend Version 1.5 of the firmware for your build if you are building the prototype model with the Adafruit 326. Version 1.6 is a deprecated version I created while debugging. It unnecessarily limits the number of hidden waves available. It turned out that the issue I was trobleshooting was hardware related.

Versions earlier than 1.5 have fewer parameters available on the front panel, and are not fully debugged.

PCB Assembly Notes

Current Working Model

As you might expect, my prototype PCB's have a few boges due to design errors. I did update the designs in KiCad so if you order PCB's with these gerbers, you should not have to boge anyting to build a working model with the Adafruit 326 display. I do have a handful of my prototype PCB's on hand that I'm willing to part with to save you ordering from China, but you will need to install two jumpers and an extra resistor. Reach out if you want one of those.

The OLED is panel mounted. The protruding "ears" on the bottom of the OLED board should be removed prior to installation using a dremel tool or a fine tooth hacksaw blade, because they will interfere with the adjacent pots. A U-channel is printed on the underside of the enclosure lid to hold this edge of the display tight to the lid. The other edge is attached with M2.5 machine screws. Do not over-tighten these screws.

Known Changes In the New Design

The Adafruit 2719 does not have built in I2C Pullup Resistors, so those will beed to be added between the signalling path from the microcontroller to the display. Other changes may be needed, TBD.

Parts

59
QtyValueFootprintReferences
3210KPotentiometer_THT:Potentiometer_Bourns_PTV09A-1_Single_VerticalRV1, RV2, RV10, RV11, RV12, RV13, RV14, RV15, RV16, RV17, RV18, RV19, RV20, RV21, RV22, RV23 +16
8MountingHole_3.2mm_M3MountingHole:MountingHole_3.2mm_M3Mount, Mount, Mount, Mount, Mount, Mount, Mount, Mount
3220Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalR1, R2, R3
20.1uf TantCapacitor_THT:CP_Radial_Tantal_D5.0mm_P2.50mmC1, C2
110KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalR7
110ufCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC3
11N4148Diode_THT:D_DO-35_SOD27_P7.62mm_HorizontalD1
14.7KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalR4
14.7kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P15.24mm_HorizontalR5
16N138Package_DIP:DIP-8_W7.62mmU3
1ARCH_MODEConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalSW1
1Arduino_Nano_EveryModule:Arduino_NanoA1
1ER_OLEDM0.91_1x-I2CDisplay:ER_OLEDM0.91_1x-I2CU4
1GLITCH_TRIGButton_Switch_THT:SW_PUSH_6mmSW2
1MIDI INfootprints:CONN5_SDS-50J_CUDJ1
1MIDI OUT/THRUfootprints:CONN5_SDS-50J_CUDJ2
1MUX_1Package_SO:SOIC-24W_7.5x15.4mm_P1.27mmU1
1MUX_2Package_SO:SOIC-24W_7.5x15.4mm_P1.27mmU2

Questions

How big is the SQ80 Hardware Programmer PCB?

It measures 225 × 115 mm and has 2 copper layers, 1.6 mm thick.

What parts does the SQ80 Hardware Programmer use?

59 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the SQ80 Hardware Programmer KiCad files?

From the trevorj71/SQ-80-Parameter-Programmer repository on GitHub, at the commit this page was made from: the board is SQ80_Programmer_KiCad/SQ80_Hardware_Programmer.kicad_pcb and its schematic SQ80_Programmer_KiCad/SQ80_Hardware_Programmer.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the SQ80 Hardware Programmer design in my own project?

Its repository publishes it under the CC0-1.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers216.9 × 86.8 mmSweepbling lp pcb, the printed circuit board in 3D

    Sweepbling lp pcb

    davidphilipbarr/Sweep

    Sweep - a small promicro based keyboard inspired by the Ferris.

    59 parts2.1k
  • 2 layers132.3 × 94.9 mmCheapino, the printed circuit board in 3D

    Cheapino

    tompi/cheapino

    An affordable split 36 keys keyboard

    59 parts1.2kCC-BY-4.0
  • 2 layers100 × 24 mmSTM32 Klipper Expander, the printed circuit board in 3D

    STM32 Klipper Expander

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    59 parts1.1kGPL-3.0
  • 2 layers77.5 × 20.4 mmTester, the printed circuit board in 3D

    Tester

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    59 parts915
  • 2 layers100 × 96 mmBacklight, the printed circuit board in 3D

    Backlight

    jackw01/scanlight

    A better light source for scanning color negative film

    59 parts397CERN-OHL-W-2.0
  • 2 layers95.3 × 100 mmBeyblock20, the printed circuit board in 3D

    Beyblock20

    ChrisChrisLoLo/beyblock20

    The magnetic, modular, 20-key macropad that can join together to form an ortholinear board

    59 parts335GPL-3.0
  • 2 layers94 × 94.5 mmVikropad, the printed circuit board in 3D

    Vikropad

    sadekbaroudi/vik

    This is a VIK module designed to mount a PER56 scroll ring, with a 35mm Cirque Trackpad and optional WS2812B LEDs.

    59 parts220CERN-OHL-P-2.0