Skip to the content
2 layers54 × 83.5 mmMidiPedalPlatform, the printed circuit board in 3D

A template PCB for guitar effect pedals that can be remote controlled via MIDI interface.

Size
54 × 83.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
50
Nets
90
Pads
200
Tracks, vias
397, 47
Pours
3
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
16 Feb 2025
Updated
30 Dec 2025

Overview

MidiPedalPlatform is an open-source printed circuit board by RolandMueller1994, from the RolandMueller1994/MidiPedalPlatform repository on GitHub. It is a 2-layer board of 54 × 83.5 mm with 50 parts on 90 nets, routed with 397 tracks and 47 vias.

It is built around the 74HC14 and H11L1. Its parts include 13 resistors, 9 capacitors, 9 connectors, 4 ICs and 4 diodes. It belongs with the audio and music boards and the STM32 boards of this library.

Main components

2

README

README.md

MidiPedalPlatform

Introduction

This project contains a template PCB for guitar effect pedals with MIDI remote functionality. MIDI is implemented using a STM32 F030C8T6 microcontroller. The PCB is setup to contain four 16mm potentiometers, a SPST on-off-on switch and PCB mounted jack sockets for audio connection. Further connections are the MIDI input and output, an internal switch and an external switch which are all accesible through JST connectors. A programming and debugging connector for the STLINK-V3MINIE is implemented on the PCB.

Following images show a complete pedal build based on this template.

PCB

The PCB was developed using KiCad and a two layer setup. The KiCad project can be found in PCB/MidiPedalPlatform whilst PCB and schematic exports are located in PCB/Export.

Firmware

The MCU firmware is located in the Firmware directory. It is implemented as STM32CubeIDE project.

The firmware handles switches and MIDI messages. By default, two switches are available: SW and ExtSW. SW is meant to be used as the default internal footswitch and must be a momentary switch. ExtSW can be used to connect an external remote switch and is by default configured to be a latching switch. This can be changed by changing:

C
bool swLatches[NO_SWITCHES] = { false, true, true }

to

C
bool swLatches[NO_SWITCHES] = { false, false, true }

The pedal can be switched on and off via MIDI CC commands. The channel and controller number are stored in the flash memory. Thus, a MIDI learn state and a reset state have been implemented. To reset both parameters to their default value (channel=0, controller=20), hold the footswitch pressed (SW) while powering on or reseting the MCU till the LED starts blinking. Release the switch afterwards and the LED stops blinking. Default values will then have been written to flash.

MIDI learn is used to set any other channel and controller. This mode can be accessed by holding the footswitch pressed whilst the input jack is not connected. The LED starts blinking once MIDI learn state has been reached. In this mode, the firmware waits for a MIDI CC message and once the first one has been received, it will store the channel and controller of this message in the flash memory. MIDI learn can be aborted by pressing the footswitch again. In either case, MIDI CC received or MIDI learn aborted, the LED stops blinking. The pedal can be switched on by sending a value greater than 63 to the configured MIDI contoller. Anything lower or equal than 63 will switch off the pedal.

The footswitch can be used in two different ways.

  • Normal activation: Toggles between on and off state
  • Keeping the switch pressed whilst the pedal was off: The pedal will turn on as long you keep the switch pressed. Once release, the pedal will turn off.

Enclosure

The PCB was design to fit into a 1590N1 enclosure. A FreeCAD project including enclosure, PCB, jacks and the switch can be found at Enclosure/Enclosure.FCStd. Renderings of the enclosure can be found below. Drill templates can be found in Enclosure/DrillTemplates.

Parts

50
QtyValueFootprintReferences
5100nCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC1, C2, C7, C22, C23
410kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR28, R30, R34, R40
4B100kComponents:RV16AF_MonoRV1, RV2, RV3, RV4
3Conn_01x02Connector_JST:JST_PH_B2B-PH-K_1x02_P2.00mm_VerticalJ2, J5, J8
2100kResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR29, R31
216pCapacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC24, C25
22N7002Package_TO_SOT_SMD:SOT-23Q1, Q2
2AudioJack2_SwitchComponents:NMJ4HCD2J3, J4
110Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR36
1180Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR35
11N4001Diode_THT:D_DO-41_SOD81_P7.62mm_HorizontalD1
11N4148Diode_THT:D_DO-35_SOD27_P7.62mm_HorizontalD4
11N914Diode_THT:D_DO-35_SOD27_P7.62mm_HorizontalD2
11k5Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR32
1220Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1
1280Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR6
133Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR37
1390Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR33
147uCapacitor_SMD:CP_Elec_6.3x5.8C3
14u7Capacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolderC6
174HC14Package_SO:SO-14_3.9x8.65mm_P1.27mmU5
18MHzCrystal:Crystal_SMD_HC49-SDY1
1Barrel_Jack_SwitchConnector_BarrelJack:BarrelJack_GCT_DCJ200-10-A_HorizontalJ1
1Conn_01x03Connector_JST:JST_PH_B3B-PH-K_1x03_P2.00mm_VerticalJ9
1Conn_01x05Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ6
1Conn_02x07_Odd_EvenComponents:FTSH-107-XX-YYY-DV-K-AJ10
1G6K-2Relay_SMD:Relay_DPDT_Omron_G6K-2FK1
1H11L1Components:H11L1SMU6
1L78L33_SOT89Package_TO_SOT_SMD:SOT-89-3U4
1LEDLED_THT:LED_D3.0mmD3
1STM32F030C8TxPackage_QFP:LQFP-48_7x7mm_P0.5mmU1
1SW_PushButton_Switch_SMD:SW_SPST_Omron_B3FS-100xPSW2
1SW_SPDTComponents:Switch_SPDTSW1
1TestPointTestPoint:TestPoint_Pad_D2.0mmTP_MCO1

Similar boards

  • 2 layers106.9 × 68.6 mmMister midi pcb, the printed circuit board in 3D

    Mister midi pcb

    bendecaf/mister-pcbs

    PCBs for the Mister FPGA project.

    33 parts13GPL-3.0
  • 2 layers76 × 40 mmMidi in out thru, the printed circuit board in 3D

    Midi in out thru

    threedaymonk/midi-in-out-thru

    3.3V MIDI in/out/thru serial interface

    24 parts13CC-BY-SA-4.0
  • 2 layers54 × 83.5 mmDualBoost, the printed circuit board in 3D

    DualBoost

    RolandMueller1994/DualBoost

    This project implements a dual boost guitar effect with MIDI capability based on a state variable filter. MIDI is implemented using a STM32 F030C8T6 microcontroller.

    109 parts
  • 2 layers181.4 × 70.6 mmXfm2, the printed circuit board in 3D

    Xfm2

    bendecaf/xfm2-pcbs

    PCBs for the excellent FPGA synth projects XFM2 and XVA1.

    90 parts22GPL-3.0
  • 4 layers60 × 94 mmDaisySeedPedal125b, the printed circuit board in 3D

    DaisySeedPedal125b

    bkshepherd/DaisySeedProjects

    A collection of hardware and software projects based around the Electro-Smith Daisy Seed

    80 parts559MIT
  • 2 layers245.2 × 100 mmV5 main, the printed circuit board in 3D

    V5 main

    zynthian/zynthian-hw

    Zynthian hardware stuff: PCBs, schemes, parts specifications, pin assignment, ...

    160 parts156
  • 2 layers64.3 × 56 mmMt32-pi midi hat, the printed circuit board in 3D

    Mt32-pi midi hat

    chris-jh/mt32-pi-midi-hat

    A Raspberry Pi Midi Hat for the project mt32-pi by Dale Whinham (https://github.com/dwhinham/mt32-pi)

    22 parts139GPL-3.0

Questions

How big is the MidiPedalPlatform PCB?

It measures 54 × 83.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the MidiPedalPlatform use?

50 parts, built around the 74HC14 and H11L1. 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 MidiPedalPlatform KiCad files?

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

Can I use the MidiPedalPlatform design in my own project?

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