• Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

New PCB Design For MIDI Decoder

Not open for further replies.

Jon Wilder

Active Member
Hey guys. Been workin' on this for awhile. I'm about done writing the code for it and spent most of today workin' on designing the PCB for the controller side of it.

Basically it's for a guitar amplifier and it responds to Program Change and Control Change only. It "learns" everything which makes it super user friendly. It will be able to work with the very simplest to the most complex MIDI foot controllers.

If you hold the "Learn" button down while powering on the amp, this puts you in Utility mode. From there you can either press and release the learn button again to restore "factory defaults" (a preconfigured set of "patches" or "presets" and default it to MIDI channel 1), or you can press a button on your MIDI controller and it will "learn" the channel of the first PC or CC message that gets transmitted to assign it to a MIDI channel.

In normal operation you would set up your channel select, solo boost select and FX loop select switches in the state you want them to come up in for a given preset, then press/release the learn button, then press the program change button on your MIDI controller that you want to map those panel switch settings to.

If you press and hold the learn button, then press/release one of the other 3 switches while also releasing the learn button, you can press a button on the controller that can send a CC On/Off message to "map" the front panel buttons to "Instant Access" buttons on the MIDI controller (only high end MIDI controllers equipped with Instant Accress buttons can take advantage of this feature.

You can store up to 100 presets of panel switch configurations.

The relays will be transistor driven while the PIC sources a logic high/low to the base of the relay transistors. The transistors/relays will be powered from the unregulated side of the supply.

Here is the PCB layout I came up with...I'm open to suggestions so pros feel free to speak up as this is my first ever PCB design.

Also...for trace width by default it's set to 0.010". Should I increase that for added tracing strength (so it's not so easy to burn them off of the board while soldering) or will 0.010" suffice?
Last edited:
Not open for further replies.

EE World Online Articles