Skip to the content
PCBKitNew board
2 layers94 × 74 mmChordial, the printed circuit board in 3D

Chordial is a small, portable electronic instrument that lets you play musical chords with just a turn and a press of a knob.

Size
94 × 74 mm
Copper layers
2
Thickness
1.6 mm
Parts
14
Nets
31
Pads
91
Tracks, vias
176, 7
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
19 Oct 2026
Updated
25 Oct 2026

Overview

Chordial is an open-source printed circuit board by ye8um, from the ye8um/Chordial repository on GitHub. It is a 2-layer board of 94 × 74 mm with 14 parts on 31 nets, routed with 176 tracks and 7 vias.

Its parts include 3 connectors, 3 switches, 2 capacitors and 2 ICs. It belongs with the ESP32 boards of this library.

README

README.md

Chordial 🎹

image

What is Chordial?

Chordial is a small, portable electronic instrument that lets you play musical chords with just a turn and a press of a knob. I wanted to create something that makes playing chords simple and fun, even for someone who doesn't know much about music theory.

Instead of having a full keyboard with dozens of keys, Chordial uses a rotary encoder to choose a chord. Once you've found the chord you want, you can press the knob to hear it play through a built-in speaker.

The whole instrument is designed to fit inside a compact 3D printed enclosure, making it easy to keep on a desk or bring around.

Why I Made It

I've always found it interesting how different musical notes can come together to create a completely different sound. However, most musical instruments take quite a bit of practice to learn.

That gave me the idea of making an instrument that could play entire chords without needing to learn complicated finger positions.

I also wanted to challenge myself by designing my own PCB, figuring out how electronic components work together, and creating an enclosure that would make everything feel like one complete product.

Chordial combines my interests in music, electronics, programming, and 3D modeling into one project.

How It Works

Chordial is controlled using two main inputs: a rotary encoder and a mechanical key.

Turning the rotary encoder scrolls through 24 different chords, including all 12 major chords and all 12 minor chords. The selected chord appears on a small OLED display, along with its notes and playback duration.

Pressing the rotary encoder plays the selected chord through the speaker. The sound is generated by the ESP32 and sent to a MAX98357A amplifier, which drives the speaker.

The mechanical key changes how long the chord plays. There are four duration settings: 0.5 seconds, 1 second, 2 seconds, and 4 seconds.

The goal is to make the controls simple enough that anyone can pick up Chordial and start experimenting with different sounds.

Hardware

Chordial uses a Seeed Studio XIAO ESP32 S3 as its main microcontroller. It handles the rotary encoder, OLED display, and audio generation.

The display is a 128 × 64 SSD1306 OLED, which shows the current chord and its settings.

For sound, I chose a MAX98357A digital audio amplifier connected to an 8 ohm speaker. This allows the instrument to play multiple notes simultaneously and produce a soft, sustained synth sound.

The controls consist of an EC11 rotary encoder with a built-in push button and a Cherry MX compatible mechanical switch.

Chordial is powered by a rechargeable 3.7 V LiPo battery. It also includes a slide switch for controlling battery power, while the XIAO provides USB C connectivity.

All the electronics are designed to fit onto a custom PCB that I made in KiCad.

image

Enclosure Design

I designed the enclosure in Fusion 360 with the goal of making Chordial compact, comfortable, and easy to use.

The top has openings for the OLED, rotary encoder, mechanical key, and speaker grille. I also added the Chordial name and an acoustic guitar engraving to give the instrument a little more personality.

The enclosure consists of separate top and bottom pieces that are secured using screws and nuts. The bottom contains compartments for the battery and speaker.

I also plan to use a custom 3D printed rotary knob so the instrument feels more comfortable to control.

image

Software

The firmware is written in Arduino C++ for the XIAO ESP32 S3.

image

It reads the rotary encoder to determine which chord is selected, updates the OLED display, and generates the audio signals needed to play each chord.

Instead of relying on prerecorded audio files, Chordial generates the musical notes directly through code. This means the instrument doesn't need an SD card or stored sound samples.

The firmware currently includes 24 major and minor chords, with four selectable playback durations.

Building Chordial

I started by creating the schematic and PCB layout in KiCad. This involved figuring out how to connect the microcontroller, amplifier, display, switches, speaker, and battery.

After finishing the PCB design, I created the enclosure in Fusion 360. I had to consider the placement and height of each component to make sure everything would fit together properly.

The firmware was then developed to control the chord selection, display, and sound generation.

The next part of the project is assembling the electronics, testing the firmware on the physical hardware, and making any adjustments needed.

Bill of Materials

BOM

Parts

14
QtyValueFootprintReferences
1100nFCapacitor_SMD:C_0805_2012MetricC1
110uFCapacitor_SMD:C_0805_2012MetricC2
1Conn_01x02Connector_JST:JST_PH_S2B-PH-K_1x02_P2.00mm_HorizontalJ3
1Conn_01x02_PinConnector_Molex:Molex_PicoBlade_53261-0271_1x02-1MP_P1.25mm_HorizontalJ2
1Conn_01x04_PinImported Parts:Display_128x64_096_I2CJ1
1MAX98357APackage_DFN_QFN:TQFN-16-1EP_3x3mm_P0.5mm_EP1.23x1.23mmU2
1RotaryEncoder_SwitchRotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm_MountingHolesSW1
1SW_PushButton_Switch_Keyboard:SW_Cherry_MX_1.00u_PCBSW2
1SW_SPDTButton_Switch_SMD:SW_SPDT_Shouhan_MSK12C02SW3
1XIAO-ESP32-S3-SMDSeeed Studio XIAO ESP32S3:XIAO-ESP32-S3-SMDU1

The 10 most common of 14 parts.

Questions

How big is the Chordial PCB?

It measures 94 × 74 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Chordial use?

14 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 Chordial KiCad files?

From the ye8um/Chordial repository on GitHub, at the commit this page was made from: the board is Hardware/Chordial.kicad_pcb and its schematic Hardware/Chordial.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Chordial design in my own project?

Its repository states no licence, so its author keeps all rights: ask ye8um before reusing the design.

Similar boards

  • 2 layers116.8 × 30 mmType d, the printed circuit board in 3D

    Type d

    google/mozc-devices

    Circuit diagrams and firmware source code for Gboard DIY keyboards

    14 parts3kApache-2.0
  • 2 layers32 × 22 mmDiff driver, the printed circuit board in 3D

    Diff driver

    rene-dev/stmbl

    AC Servo Driver for STM32F4

    14 parts990GPL-3.0
  • 2 layers34 × 45 mm2032Charger, the printed circuit board in 3D

    2032Charger

    hackclub/OnBoard

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

    14 parts915
  • 2 layers34 × 109.9 mmTdisplay s3, the printed circuit board in 3D

    Tdisplay s3

    landonr/homeThing

    Wifi Smart Home Remotes that run on ESPHome

    14 parts551GPL-3.0
  • 2 layers45.3 × 42.7 mmMainPcb, the printed circuit board in 3D

    MainPcb

    adamb314/ServoProject

    Getting the most out of your hobby servo

    14 parts545
  • 2 layers42.5 × 28.8 mmC5VRX JACK DIY, the printed circuit board in 3D

    C5VRX JACK DIY

    Twotoz/C5VRX

    Ultra-minimal, zero-CPU 5.8 GHz analog FPV video receiver using ESP32-C5 Wi-Fi 6 PHY MODEM_DIAG, BitScrambler WBFM demodulation & resistor DAC CVBS

    14 parts515GPL-3.0
  • 2 layers62 × 24 mmMai button, the printed circuit board in 3D

    Mai button

    whowechina/mai_pico

    Pico controller for Maimai

    14 parts475