Highly Liquid Forum facebook twitter google plus rss feed

Go Back   Highly Liquid Forum > Current Products > MIDI CPU

Thread Tools Search this Thread Display Modes
Old 10-09-2016, 04:27 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Control Box: 14 Pots, 5 x 5 button matrix

This topic was started under another thread. After receiving no responses, I changed the nature of the thread to a work log, but was unable to change my subject-line, so I cleared that thread and redirected here.

If anyone is considering building something like this, I'd recommend they read the entire thread before starting. It's an evolving design.

Last edited by stubbsonic; 10-13-2016 at 06:26 PM.
Reply With Quote
Old 10-09-2016, 04:30 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Overview:

EDIT: There were no responses to my super-noob cry for help.
So I've revised the thread to be an account of my process
in the hopes that it prove helpful to others in a similar situation.

Build a MIDI control surface with 10 rotary pots, 4 faders, and 25 button-matrix.
Program the MIDI CPU to have 4 pages (layers) of controls-
And perhaps keep some additional sysex dumps for other
configurations as needed.
Use an iPad with MIDI Designer, or other apps for routing & display.

With a few twists:
* 2 of the rotary pots will be 3-turn precision pots (perhaps for NRPN 14-bit values)
UPDATE: The MIDI CPU doesn't generate NRPNs or 14-bit values!!
I'm not sure where I got the idea it would.
Would have been nice if someone could have let me know. Alas.
I think the precision pots will still at least make it easy to dial precise values.

* 3-position slide switches will select between 8 rotary pots and 8 external CC inputs
or the center OFF position
* One row of 8 push-buttons will wired to 8 external switch inputs ++
* Another row of 8 push-buttons will be wired with 8 flip toggles ++

++ These combined switches will be connected to each other such that one switch will reverse the state of the other.

First, I need to design the layout, and then see if I can get the top and back panel laser cut.

Next, I'll need to work out how I will physically wire the pots, switches, diodes, MIDI ports, and LED. I need to determine if there is a specific or logical choice for which numbered ports to use for which controls on the MIDI CPU.

I need to learn to wire and configure a switch matrix. And I need to learn about how to configure this device via sysex hex code. I'll need to learn what is possible in terms of multiple pages of controls. I need to strategize about which CC# and NRPN# I'll assign to the controls. Also need to learn about options for when soft value of CC differs from pot setting on changing pages ("null point"?) And finally, start applying all this to some synths I use.


1. I'm hoping if I can ask one specific question per post, that I can get help if I'm stuck.
2. I will re-read the docs and look things up. See what I can figure out.
3. I'll attempt to sift through thousands of posts here and see if I can get unstuck.

Last edited by stubbsonic; 10-13-2016 at 06:25 PM.
Reply With Quote
Old 10-09-2016, 04:31 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Design

The back panel will have 8 external CC jacks and 8 external switch jacks.

On the top panel:

There is a top-most row of 3-position slider switches (EXT/OFF/INT). These select between the external CC jacks, OFF (zero), and the panel knobs. I thought it might be useful to be able to quickly switch between these three values.

Second is a row of eight rotary pots.

The 3rd row are 8 toggles over 8 button switches, each pair of switches works together as described above. I chose flip toggles so that I can see the toggle state. This will provide a Normally-Open-with-Momentary-Close, or Normally-Closed-with-Momentary-Open as needed.

The 4th row are 8 button switches which are wired with the 8 external switches. The int/ext switches will reverse each other's state. (N.O. w momentary close, and vice versa).

I'm a little torn about the order of the 3rd & 4th rows. Will do some mockups and see what it's like.

The 4 faders and 2 precision-3-turn pots will go on one side or the other. Not sure about exact position yet.

Finally, in another section, I'm going to have 4 mode buttons (page selection?) and a cursor diamond with an enter button in the center. These will be responsible for things like REW, Play-Stop, FF, OCT -, NO TRNSP, OCT +. (or transpose in semitones)
Reply With Quote
Old 10-09-2016, 04:34 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Parts ordered

I ordered all the switches, 1n4148 diodes, TRS jacks, regular pots, precision pots, and the faders. It was about $95 for everything.

It'll probably be a month before the parts are all in. In the meantime, I'll lock in the controls layout and box design.

Some buttons are SPST switches (the big round blk ones), and some are SPDT-- which allows them to be paired with a secondary switch as described above.

UPDATE: on the jameco site, the faders were marked as center detent, but they are not. I don't know if there is some action that can make them work that way. It doesn't matter to me, as I prefer them as they are.

UPDATE: ordered some knobs. The 8 single-turn pots will have flat sides so that the position can be felt without looking. The precision knobs have a larger diameter for finer control.

UPDATE: the cheap TRS jacks I ordered through eBay are not useable. So I ordered nicer ones on from a popular online retailer.
Reply With Quote
Old 10-09-2016, 04:35 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Rough Design Image

I did a kind of imprecise layout of the controls. The top section is the back panel (unfolded/upside-down) as it connects to the top panel. Inside, the MIDI CPU will be on the right side just below the power LED.

Reply With Quote
Old 10-09-2016, 04:37 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Laser Cutter

I contacted a local laser cutter who agreed to help for a reasonable fee.

I chose 1/8" finished ply which looks really nice and is rigid enough to support the jacks & controls.

My scaled pencil drawing is all he needed as reference to make the final drawing. I was careful to measure everything as I wanted it. I decided to add a crenulated box-joint edge between the back-panel and the top panel. That will help keep that edge together in use.

The laser cutter was incredibly skillful and helpful with taking my pencil & paper drawing and creating the proper file for his cutter.

Reply With Quote
Old 10-09-2016, 04:37 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Components in place

Here's the box with all of the components attached.

Some of the switches were poorly manufactured--
with bad threads and nuts-- which made attaching them
a little more difficult. The TRS jacks were so bad,
I had to order (hopefully) better ones.

Reply With Quote
Old 10-12-2016, 05:05 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Dual Switch Wiring

In case anyone is curious, this is the way the dual switches will be wired.

Last edited by stubbsonic; 10-13-2016 at 06:34 PM.
Reply With Quote
Old 10-31-2016, 09:43 PM
stubbsonic stubbsonic is offline
Junior Member
Join Date: May 2014
Posts: 11
Default Next Steps:

1. Connecting the power source.

I'm going to had a slide switch to the + side of the 9v battery, so I don't have to pull the battery to turn it off. I bought some crimp-on female connectors to use with the pin headers I've already installed on my MIDI CPU. So I'll just have to solder the wires to the battery terminals and bring them into the box and slide onto the DC IN terminals.

2. Connecting the MIDI DIN ports.

I'll solder the wires to the MIDI ports, and connect them to the MIDI CPU's pin headers.

3. Configure an input for a 10K pot with Sysex.

I have to send sysex to tell the MIDI CPU to expect a pot on one of its inputs. I'll then used my best guess of how to temporarily wire the pot to the MIDI CPU. Then I'll test to make sure that I get the right polarity of change-- i.e. that a clock-wise rotation increases the CC value.

4. Connect all the pots.

Once I confirm that I understand how to wire the pots, I'll solder wires to connect the grounds across all the pots, and wire the wiper and other pad to the MIDI CPU. I'll test my foot pedals to make sure I wire those in accordance with how they are wired to the TRS connector. Then I'll work out a sysex config that will just assign some simple assignments for the CC's. I'll work out more details multi-page layouts later.

5. Switch matrix testing.

I'll need to run some breadboard tests of a switch matrix to the MIDI CPU. I need to make sure I know what direction to point the diode in, and make sure I understand how it should all be connected to work correctly. I don't think my dual switches are really adding any complication to this. Once I know what my two "main points" are, the rest is just being careful.

6. Final configuration.

Since I'm going to be using the pin headers on the MIDI CPU, I'll at least not be stuck if it turns out some order of inputs is preferable to another, I can rearrange after I'm finished soldering onto the switches, jacks & pots. I'll work out the sysex to config all the controls to work for 4 pages/layers of controls.
Reply With Quote

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT. The time now is 05:53 AM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, vBulletin Solutions, Inc.