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 07-06-2015, 09:15 PM
IainDaRed IainDaRed is offline
Junior Member
 
Join Date: Jul 2015
Posts: 6
Default Foot controller with 3 'pages' of CC buttons

Hi There,

Please forgive me, this is my first time playing with the Midi CPU and i find myself at a loose end.

I'm looking to create a foot pedal to control a number of programs but thankfully they all listen to CC commands... just about.

My goal is to program the CPU to allow for
- 6 buttons to trigger CC commands
- a mode button to switch between pages (3 'pages' of buttons) so that a single button can act as CC1 then CC7 then CC13 then back to CC1
- 2 Potentiometer inputs for expression pedals

As i envision it there will be connections along the lines of...
1 - button 1 - CC1, CC7, CC13
2 - button 2 - CC2, CC8, CC14
3 - button 3 - CC3, CC9, CC15
4 - button 4 - CC4, CC10, CC16
5 - button 5 - CC5, CC11, CC17
6 - button 6 - CC6, CC11, CC18
7 - button 7 - Mode function to switch between the above three pages
20+21 - Potentiometer - CC126
22+23 - Potentiometer - CC127

I'm really struggling to find a guide to building the hex and syntax required to program the CPU.

I've read the Noobs Guide and the Configuration SysEx Howto but still feel a bit lost.

Could anyone point me in the right direction?
Reply With Quote
  #2  
Old 07-06-2015, 09:49 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Quote:
Originally Posted by IainDaRed View Post
Hi There,

Please forgive me, this is my first time playing with the Midi CPU and i find myself at a loose end.

I'm looking to create a foot pedal to control a number of programs but thankfully they all listen to CC commands... just about.

My goal is to program the CPU to allow for
- 6 buttons to trigger CC commands
- a mode button to switch between pages (3 'pages' of buttons) so that a single button can act as CC1 then CC7 then CC13 then back to CC1
- 2 Potentiometer inputs for expression pedals

As i envision it there will be connections along the lines of...
1 - button 1 - CC1, CC7, CC13
2 - button 2 - CC2, CC8, CC14
3 - button 3 - CC3, CC9, CC15
4 - button 4 - CC4, CC10, CC16
5 - button 5 - CC5, CC11, CC17
6 - button 6 - CC6, CC11, CC18
7 - button 7 - Mode function to switch between the above three pages
20+21 - Potentiometer - CC126
22+23 - Potentiometer - CC127

I'm really struggling to find a guide to building the hex and syntax required to program the CPU.

I've read the Noobs Guide and the Configuration SysEx Howto but still feel a bit lost.

Could anyone point me in the right direction?
Hi IainDaRed, welcome to the forum.

The first step for this project will be to update the MIDI CPU to firmware version 1.4. This will allow the creation of the selectable "pages" of buttons.

Check the forum stickies for the firmware update info. Once you have completed the upgrade and verified that the new firmware is loaded, let me know. Then we will write up your control terminal config.
Reply With Quote
  #3  
Old 07-06-2015, 11:04 PM
IainDaRed IainDaRed is offline
Junior Member
 
Join Date: Jul 2015
Posts: 6
Default Firmware updated..i think

Hi there,

cool. i performed the update with the CAL L grounded to the ground of the DC Reg. everything appears to have gone correctly with one exception. i performed the update 3 times and the ACT LED remained illuminated until i pulled the power. once i de-grounded it and powered back on, the ACT LED did its usual (on for a second at power up then off).

so i think i have go the upgrade sorted but thought i should mention that part.
Reply With Quote
  #4  
Old 07-07-2015, 01:15 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Quote:
Originally Posted by IainDaRed View Post
Hi there,

cool. i performed the update with the CAL L grounded to the ground of the DC Reg. everything appears to have gone correctly with one exception. i performed the update 3 times and the ACT LED remained illuminated until i pulled the power. once i de-grounded it and powered back on, the ACT LED did its usual (on for a second at power up then off).

so i think i have go the upgrade sorted but thought i should mention that part.
To be certain, send the MIDI CPU the firmware version retrieval message:

F0 00 01 5D 04 00 7D 00 F7

(See "Firmware Version SysEx Message" in the user manual.) Post the message that is sent back from the MIDI CPU.
Reply With Quote
  #5  
Old 07-07-2015, 03:31 PM
IainDaRed IainDaRed is offline
Junior Member
 
Join Date: Jul 2015
Posts: 6
Default Progress

Hi There,

Thanks for all your help. i really appreciate it and respect your patience.

I have confirmed that i'm running the 1.4beta release that i downloaded from the site. that was a good lesson in remembering to scroll down the page. sorry.
Reply With Quote
  #6  
Old 07-09-2015, 12:46 PM
IainDaRed IainDaRed is offline
Junior Member
 
Join Date: Jul 2015
Posts: 6
Default

So i have spent a bit more time reading through the firmware release documents and i'm clearly missing something.

I thought i would try and send a test message to see if i could get one of the buttons on my pedal board to respond with a CC. i sent the following message.

F0 00 01 5D 04 01
00 00 00 04 01 01 F7

based on my working:
// Header
F0 00 01 5D 04 01
//Layer 0 (a button press will trigger all layers sequentially)
00
//Control terminal identifier (00 through 17hex = 0-23)
00
// transition (high to low or low to high)
00
//Mode (logic in/ analog in/ logic out) (Controller Change fixed number)
04
// Midi Channel (ch1)
01
// Data (Fixed CC Number) (change this to change CC number)
01
//Footer
F7

I'm keen to get this MidiCPU programmed for the weekend as i have a week long festival that i'm keen to try it during.

as i said before, the goal is to have a 6 button, 2 expression pedal with a 7th button to flip pages of CC commands that are addressed to the buttons.

Any help from the Forum would be great. Thank you John for your help so far. Its really appreciated.
Reply With Quote
  #7  
Old 07-09-2015, 07:59 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

I'm going to look at this again tonight when I get a chance. Thanks for your patience. PM me in the morning if you don't see anything.
Reply With Quote
  #8  
Old 07-09-2015, 11:22 PM
IainDaRed IainDaRed is offline
Junior Member
 
Join Date: Jul 2015
Posts: 6
Default

You are a star. As you can probably tell from my last post. I'm just a bit stumped on the starting point and probably feeling the pressure of time so not reading things properly.

Anything you can throw my way will be greatly appreciated as i would love to give this a blast over the next week of gigs.

if i can get my head around the coding after that, i'm looking forward to expanding and playing around with options on 8-seg displays and further switch matrix options. but baby steps first. :-)

looking forward to learning from your handy work.

Cheers
Reply With Quote
  #9  
Old 07-10-2015, 03:40 AM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Quote:
Originally Posted by IainDaRed View Post
- 6 buttons to trigger CC commands
- a mode button to switch between pages (3 'pages' of buttons) so that a single button can act as CC1 then CC7 then CC13 then back to CC1
- 2 Potentiometer inputs for expression pedals

As i envision it there will be connections along the lines of...
1 - button 1 - CC1, CC7, CC13
2 - button 2 - CC2, CC8, CC14
3 - button 3 - CC3, CC9, CC15
4 - button 4 - CC4, CC10, CC16
5 - button 5 - CC5, CC11, CC17
6 - button 6 - CC6, CC11, CC18
7 - button 7 - Mode function to switch between the above three pages
20+21 - Potentiometer - CC126
22+23 - Potentiometer - CC127
I'm using CT 0-6 for buttons, but it's easy enough to change the config for CT 1-7.

All layers: CT 20: analog input, CC 126. CT 21: analog input, CC 127.

Layer 0: CT 0-5 send CC 1-6, CT 6 advances to layer 1

Code:
F0 00 01 5D 04 01 00
00 00 4C 00 01 7F
00 01 4C 00 01 00
01 00 4C 00 02 7F
01 01 4C 00 02 00
02 00 4C 00 03 7F
02 01 4C 00 03 00
03 00 4C 00 04 7F
03 01 4C 00 04 00
04 00 4C 00 05 7F
04 01 4C 00 05 00
05 00 4C 00 06 7F
05 01 4C 00 06 00
06 00 74 00 1D 02
06 01 7F 00 00 00
14 00 04 00 7E 07
15 00 04 00 7F 08
F7
Layer 1: CT 0-5 send CC 7-12, CT 6 advances to layer 2

Code:
F0 00 01 5D 04 01 01
00 00 4C 00 07 7F
00 01 4C 00 07 00
01 00 4C 00 08 7F
01 01 4C 00 08 00
02 00 4C 00 09 7F
02 01 4C 00 09 00
03 00 4C 00 0A 7F
03 01 4C 00 0A 00
04 00 4C 00 0B 7F
04 01 4C 00 0B 00
05 00 4C 00 0C 7F
05 01 4C 00 0C 00
06 00 74 00 1D 04
06 01 7F 00 00 00
14 00 04 00 7E 07
15 00 04 00 7F 08
F7
Layer 2: CT 0-5 send CC 13-18, CT 6 advances to layer 0

Code:
F0 00 01 5D 04 01 02
00 00 4C 00 0D 7F
00 01 4C 00 0D 00
01 00 4C 00 0E 7F
01 01 4C 00 0E 00
02 00 4C 00 0F 7F
02 01 4C 00 0F 00
03 00 4C 00 10 7F
03 01 4C 00 10 00
04 00 4C 00 11 7F
04 01 4C 00 11 00
05 00 4C 00 12 7F
05 01 4C 00 12 00
06 00 74 00 1D 01
06 01 7F 00 00 00
14 00 04 00 7E 07
15 00 04 00 7F 08
F7
Finally, set up the layer control register so that only layer 0 is active after boot.

Code:
F0 00 01 5D 04 04
1D 01 00 0F 00
F7
Reply With Quote
  #10  
Old 07-10-2015, 07:57 AM
IainDaRed IainDaRed is offline
Junior Member
 
Join Date: Jul 2015
Posts: 6
Default

what a legend. this loaded first time and works brilliantly.

thank you so much for your efforts. I'm picking my way through it to get a better understanding now.

one thing i'm trying to work out is that the CC commands appear to be momentary i.e. no latching. is there any way that they can be set to send until th next button press? I'm finding that when i send the CC to my midi software (to trigger an effect, it is only activating the effect for as long as i keep the button pressed. kind of defeating the purpose of the name CC. very strange but perhaps you have some insight into this. It could well be the software to be fair.

i suppose the shorter way of sailing that i'm looking for CC toggle to be two presses rather than press on and release off.

can't wait to get out and play with this now. Its really cool to get everything where i need it.

Last edited by IainDaRed; 07-10-2015 at 08:01 AM.
Reply With Quote
  #11  
Old 07-10-2015, 12:59 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Quote:
Originally Posted by IainDaRed View Post
what a legend. this loaded first time and works brilliantly.

thank you so much for your efforts. I'm picking my way through it to get a better understanding now.

one thing i'm trying to work out is that the CC commands appear to be momentary i.e. no latching. is there any way that they can be set to send until th next button press? I'm finding that when i send the CC to my midi software (to trigger an effect, it is only activating the effect for as long as i keep the button pressed. kind of defeating the purpose of the name CC. very strange but perhaps you have some insight into this. It could well be the software to be fair.

i suppose the shorter way of sailing that i'm looking for CC toggle to be two presses rather than press on and release off.
There is a "CC toggle" mode that does exactly this. Substitute mode 56h for 4Ch in the configs.

There is a caveat since you have multiple "pages". The toggle mode will track the toggled state per button, not per CC.

So in other words, if you send CC #1 "on", change to the next page, and press the same button again, you'll be sending CC #7 "off". (Even if CC #7 wasn't already "on".)

Perhaps this is only a minor problem, since you can then repeat the button press to send CC #7 "on".

The on/off values for CC toggle mode are set like this:

Code:
F0 00 01 5D 04 04
1F 7F 00 7F 00
20 00 00 7F 00
F7
They should already be set to 127 (7Fh) and 0 based on the firmware update procedure you performed.

Glad things are working so far!
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 02:33 AM.


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