Highly Liquid Forum facebook twitter google plus rss feed

Go Back   Highly Liquid Forum > Current Products > MIDI CPU

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 12-02-2011, 03:32 PM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default 25-Note Hammond Pedalboard

Hello,

I've read through some of the other Hammond pedalboard threads, and I ordered the MIDI CPU, because I think it will be ideal for my project. I have a portable A-100 setup, and I just ordered a KeyB Duo but wanted to save the cost of their bass pedals by creating a set of 25-note MIDI bass pedal contacts that I can attach my A-100 pedals into. This way, I could just swap the physical pedals from one setup to the other.

So on the hardware side, my situation is as follows:

- I will build a 'bass pedal contact unit' that will house 25 momentary pushbutton switches (actuated by the pedals' tines), the MIDI CPU, power supply, and connections
- I will use the switch matrix input method (8 X 4 with 7 unused switches?) with diodes to allow for polyphony
- MIDI channel set to CH 3 permanently

On the software side, I may need assistance with the Sysex programming:

- No user-adjustable octave shift needed, but lowest C on pedals must always = C0
- Switch Matrix input setting

If you see any potential issues here, let me know. Any feedback would be greatly appreciated.

Thank you,
Jeremy
Reply With Quote
  #2  
Old 12-02-2011, 05:32 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 2,748
Default

Quote:
Originally Posted by jrsone View Post
Hello,

I've read through some of the other Hammond pedalboard threads, and I ordered the MIDI CPU, because I think it will be ideal for my project. I have a portable A-100 setup, and I just ordered a KeyB Duo but wanted to save the cost of their bass pedals by creating a set of 25-note MIDI bass pedal contacts that I can attach my A-100 pedals into. This way, I could just swap the physical pedals from one setup to the other.

So on the hardware side, my situation is as follows:

- I will build a 'bass pedal contact unit' that will house 25 momentary pushbutton switches (actuated by the pedals' tines), the MIDI CPU, power supply, and connections
- I will use the switch matrix input method (8 X 4 with 7 unused switches?) with diodes to allow for polyphony
- MIDI channel set to CH 3 permanently

On the software side, I may need assistance with the Sysex programming:

- No user-adjustable octave shift needed, but lowest C on pedals must always = C0
- Switch Matrix input setting

If you see any potential issues here, let me know. Any feedback would be greatly appreciated.

Thank you,
Jeremy
Hi Jeremy, welcome.

Your plan looks good--this will be no trouble at all to implement.

When you're ready, please post a list of MIDI CPU control terminals 0-23 and what function you'd like to assign to each. Then we can discuss wiring and configuration as you need it.
Reply With Quote
  #3  
Old 12-07-2011, 08:36 PM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hi John,

Thanks for the reply and the help. After looking at the matrix input method, it seems that a 7 X 4 matrix will make more sense, because I will only have 3 unused switches. So here is a list of the pin functions:

0 Logic Input Data
1 Logic Input Data
2 Logic Input Data
3 Logic Input Data
4 Logic Input Data
5 Logic Input Data
6 Logic Input Data
7 Logic Input Select
8 Logic Input Select
9 Logic Input Select
10 Logic Input Select
11 not used
12 not used
13 not used
14 not used
15 not used
16 not used
17 not used
18 not used
19 not used
20 not used
21 not used
22 not used
23 not used

Thanks,
Jeremy
Reply With Quote
  #4  
Old 12-08-2011, 03:48 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 2,748
Default

Ok. That will work fine. Did you find the switch matrix setup thread?

http://forum.highlyliquid.com/showthread.php?t=504
Reply With Quote
  #5  
Old 12-10-2011, 04:56 AM
Jim McDougall Jim McDougall is offline
Moderator
 
Join Date: Aug 2009
Posts: 395
Default

Jeremy

See if you can find the switch contact assembly from another A-100. Getting an equivalent assembly built and tuned to match the height of the pedal board tines so the feel is similar to the A-100 will be a challenge. The Hammond assembly has 9 contacts per pedal so it is easy to just rip out 7 wires per note. Leaving a good contact and a spare. By selective removing wires, you can create anything up to an X x 9 matrix as there are 9 buss wires.

I have done this with the H series 32 note pedal board and it works great.

You didn't indicate whether your portable A-100 setup is midi based or not. IF it is, then I would suggest that you allow for switching the midi channel. If upper is on ch1 and lower on ch 2 and you use a midi merger to merge all three into a single midi feed to a synth/VST then by changing the bass pedal channel you have the pedal to swell or pedal to great coupler function. Something missing on most of the Hammonds !
Reply With Quote
  #6  
Old 12-12-2011, 02:58 PM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hi Jim,

Thanks for the response. My current A-100 is not MIDI, and I was hoping to avoid trying to source another A-100 contact assembly, which could be pricey. (I also want to make this thing lightweight for gigging, so every pound saved will be appreciated. The A-100 assembly is built like a tank, of course.)

I had ordered a bunch of miniature pushbutton momentary switches from DigiKey to see if one might work, and I found one that had a very light actuation force and small travel - very similar to the A-100's switches. So I've ordered 25 of those (plus some spares), and I should receive them in this week. I've also ordered some 90 degree aluminum stock from McMaster-Carr, so I should be able to duplicate the dimensions of my A-100 contact assembly. I may also build in a height adjustament for the whole switch assembly, if I need to fine-tune when the note sounds in the 'stroke' of the pedal depression.

As you know, the metal tines flex for most of the stroke of the pedal depression, which allows the note to sound nearer to the top of the stroke than the bottom. As long as these Digi-Key switches do not present much difference in actuation force/travel, they should not feel much different. I guess I will find out! I will also cover each switch button in felt, just like the A-100's switches.

The other piece of this equation that is missing at the moment is the KeyB organ (I don't know when it will arrive), so I will have to use one of my other keyboards to test out my MIDI bass pedals.
Reply With Quote
  #7  
Old 12-14-2011, 04:00 AM
Jim McDougall Jim McDougall is offline
Moderator
 
Join Date: Aug 2009
Posts: 395
Default

I would suggest building the fine height adjustment. Because of the flexibility of the tines, you may run into a contact debounce issue during the initial contact. Being able to fine tune the height should allow mitigating that potential problem. There is debouncing logic in the MidiCPU but people have run into problems with some switches.
Reply With Quote
  #8  
Old 12-14-2011, 04:11 AM
Jim McDougall Jim McDougall is offline
Moderator
 
Join Date: Aug 2009
Posts: 395
Default

The advantage of the A-100 switch assembly is that it is a wiper style switch not a point contact so debounce is not a problem. However i do understand the price point. My 32 note assembly cost as much to ship as I paid for it on E-bay so I understand the weight issue as well. Add to that the woodworks that I mounted it in and it weighs as much as the pedalboard. The 32 note pedalboard alone comes in at about 80 lbs.

A long, long time ago, when I was playing in a rock band, I had a 1949 Hammond H-3. It had a 32 note pedalboard. It was not a porta-B ! 80lb pedalboard, 60 lb bench and about 300 lbs of organ. Add a leslie 122 and I filled a van all by myself. Good thing we had roadies -- it took 4 of us just to move the organ.
Reply With Quote
  #9  
Old 12-16-2011, 12:53 PM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hi Jim,

So I started cutting the metal pieces for holding the bass pedals and switches, and I noticed one difference with the A-100 switches - they are sitting up taller than the ones I got from Digi-Key. So I will have to put a couple bends in the angle stock to raise them up. Otherwise, the tines will hit the top surface of the angle stock as the pedal is depressed, because the switch 'plungers' aren't proud enough. Other than that, I think the mechanics of this setup should work fine. I traced the shape of the metal tines onto the angle stock, so my switch locations should be very well lined up.

As I understood it, the A-100 pedal switches have contacts and buss bars, like the manuals. (Only two buss bars, though). I hope my switches wouldn't have much more bounce than the A-100 contacts. Here's the switch from Digi-Key:




Yeah, I already I have to lug around the A-100 bass pedal contacts along with the AO-28 preamp in a wood enclosure I built - it isn't light! I want this MIDI controller to be MUCH lighter.

So hopefully this weekend I will start wiring up switches to my MIDI CPU, and then I will have some questions on the issues of permanent octave shift and matrix switching.

Thanks,
Jeremy
Reply With Quote
  #10  
Old 12-16-2011, 12:54 PM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

http://http://search.digikey.com/scripts/DkSearch/dksus.dll?x=0&y=0&lang=en&site=us&KeyWords=679-1012-nd
Reply With Quote
  #11  
Old 12-16-2011, 11:31 PM
Jim McDougall Jim McDougall is offline
Moderator
 
Join Date: Aug 2009
Posts: 395
Default

I would suggest taking a meter and measure the travel on the switch to the point where contact is made. This will help determine the mount height versus the pedal tine travel
Reply With Quote
  #12  
Old 01-04-2012, 03:38 AM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hello Jim,

It's been a little while, because I had to wait for a sheet metal shop to fabricate the piece which holds the switches (the bends were beyond what I could do at home). I've finished mounting the switches/felts to the bracket, and I made sure to match the height of the depressed A-100 switch to that of my new switch assembly. Physically/mechanically, this seems to be working well.

I have wired up the basic connections to the MIDI CPU, and I now am ready to begin wiring up the switches based on a matrix configuration with diodes (7 data lines X 4 select lines). In the diagram in the hardware manual PDF, is it safe to assume that the lowest note is the switch all the way to the right side, connected to pin 0 of the control lines?

Thanks,
Jeremy
Reply With Quote
  #13  
Old 01-04-2012, 08:12 PM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hi Jim,

(I think I've answered my above question by looking at other examples on the forum.)

I've run the wiring and MIDI tests per your instructions in the New User Orientation, and the MIDI CPU is working fine. (Although, when I have it pass thru MIDI from a controller to another keyboard, the activity light stays lit, even with no key presses.)

I couldn't install the SquerlWin program to test my interface, but I did install the SendSX program and it did receive a MIDI Sysex dump from a connected keyboard. As a quick test of the communications between my interface and the MIDI CPU, I've send the Firmware Version Sysex Message as mentioned in the firmware manual. The activity light blinked and I received the correct message back in the MIDI In window in SendSX. So I was going to start writing the control terminal configuration HEX code for my matrix setup and was wondering a couple things:

1.) Do I have to map the note numbers now, or can I apply an octave shift later?
2.) Can a 5 X 5 matrix work, because that would give me 25 notes exactly?

Thanks,
Jeremy
Reply With Quote
  #14  
Old 01-04-2012, 09:14 PM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hi John,

I looked at some example code on the forum and in the firmware manual and I came up with the following for a 5 X 5 matrix, starting at MIDI note C0:

//Header
F0 00 01 5D 04 01
//Layer
00

// Control Terminal 0 - Data
00 00 7F 00 00 00
00 01 7F 00 00 00
// Control Terminal 1 - Data
01 00 7F 00 00 00
01 01 7F 00 00 00
// Control Terminal 2 - Data
02 00 7F 00 00 00
02 01 7F 00 00 00
// Control Terminal 3 - Data
03 00 7F 00 00 00
03 01 7F 00 00 00
// Control Terminal 4 - Data
04 00 7F 00 00 00
04 01 7F 00 00 00

// Control Terminal 5 - 0-4
05 00 2C 00 00 0A
// Control Terminal 6 - 5-9
06 00 2C 00 05 0A
// Control Terminal 7 - 10-14
07 00 2C 00 0A 0A
// Control Terminal 8 - 15-19
08 00 2C 00 0F 0A
// Control Terminal 9 - 20-25
09 00 2C 00 19 0A

//Footer
F7

Let me know if this looks right to you.

Thanks,
Jeremy
Reply With Quote
  #15  
Old 01-04-2012, 09:19 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 2,748
Default

Hi Jeremy,

Quote:
Originally Posted by jrsone View Post
I've run the wiring and MIDI tests per your instructions in the New User Orientation, and the MIDI CPU is working fine. (Although, when I have it pass thru MIDI from a controller to another keyboard, the activity light stays lit, even with no key presses.)
Great! The extended activity is likely because the keyboard is generating MIDI clock or some other continuous messaging.

Quote:
I couldn't install the SquerlWin program to test my interface, but I did install the SendSX program and it did receive a MIDI Sysex dump from a connected keyboard. As a quick test of the communications between my interface and the MIDI CPU, I've send the Firmware Version Sysex Message as mentioned in the firmware manual. The activity light blinked and I received the correct message back in the MIDI In window in SendSX.
Excellent.

Quote:
So I was going to start writing the control terminal configuration HEX code for my matrix setup and was wondering a couple things:

1.) Do I have to map the note numbers now, or can I apply an octave shift later?
2.) Can a 5 X 5 matrix work, because that would give me 25 notes exactly?
1. Well, the note numbers are part of the control terminal configuration, so yes. Buy you can always change them later and/or add a separate octave control.

2. Sure--5x5 works fine.

I'd recommend wiring & configuring the data lines and a single select line to start. That way, you can test to make sure you're going in the right direction before continuing with all of the wiring. Useful links:

http://forum.highlyliquid.com/showthread.php?t=1125
http://forum.highlyliquid.com/showthread.php?t=504

Feel free to post your control terminal configuration if you like...

Last edited by John; 09-03-2013 at 03:49 PM.
Reply With Quote
  #16  
Old 01-04-2012, 09:33 PM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hi John,

Great, thanks for all the feedback! My configuration code is in the prior post...

Regards,
Jeremy
Reply With Quote
  #17  
Old 01-05-2012, 03:06 AM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hi Jim,

I got it working!! My wiring was correct, and I adjusted the MIDI notes up one octave. Here is the code:

// Header
F0 00 01 5D 04 01
// Layer
00
// Control Terminal 0 - Data
00 00 7F 00 00 00
00 01 7F 00 00 00
// Control Terminal 1 - Data
01 00 7F 00 00 00
01 01 7F 00 00 00
// Control Terminal 2 - Data
02 00 7F 00 00 00
02 01 7F 00 00 00
// Control Terminal 3 - Data
03 00 7F 00 00 00
03 01 7F 00 00 00
// Control Terminal 4 - Data
04 00 7F 00 00 00
04 01 7F 00 00 00
// Control Terminal 5 - 12-16
05 00 2C 00 0C 0A
// Control Terminal 6 - 17-21
06 00 2C 00 11 0A
// Control Terminal 7 - 22-26
07 00 2C 00 16 0A
// Control Terminal 8 - 27-31
08 00 2C 00 1B 0A
// Control Terminal 9 - 32-36
09 00 2C 00 20 0A
// Footer
F7

Now I just need to build the wooden enclosure and wait for the KeyB to arrive...

Thanks for the help, the thorough documentation, and for making a great product!

Regards,
Jeremy
Reply With Quote
  #18  
Old 01-05-2012, 01:53 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 2,748
Default

Jeremy,

Great work. If you happen to have a photo of your contact unit or any other documentation, please consider posting it. It could be inspirational for others building organ-related projects.
Reply With Quote
  #19  
Old 01-07-2012, 12:02 AM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default

Hi John,

I had another question: Is it possible to use one terminal to detect a momentary switch input and provide a latched output signal on another terminal that could say engage an opto-isolator or relay?

Sure thing. Here's a few photos of the finished switch assembly:

Reply With Quote
  #20  
Old 01-07-2012, 12:02 AM
jrsone jrsone is offline
Junior Member
 
Join Date: Dec 2011
Posts: 19
Default



http://www.flickr.com/photos/jrsone/...7628753374687/
Reply With Quote
Reply

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 06:31 PM.


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