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 03-14-2015, 07:32 PM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default programming bass pedal board

Hello,

(I also posted this by mistake in the general questions section)

With the use of the manual and some of the threads here on the forum I succeeded in programming my midi card to play bass notes instead of the c-60.
I used this programm:

// CT 0-12: MIDI notes 36-48 (24h-30h)
// (notes C-2 to C-1, before transposition)

F0 00 01 5D 04 01 00


00 00 44 00 24 7F
00 01 44 00 24 00
01 00 44 00 25 7F
01 01 44 00 25 00
02 00 44 00 26 7F
02 01 44 00 26 00
03 00 44 00 27 7F
03 01 44 00 27 00
04 00 44 00 28 7F
04 01 44 00 28 00
05 00 44 00 29 7F
05 01 44 00 29 00
06 00 44 00 2A 7F
06 01 44 00 2A 00
07 00 44 00 2B 7F
07 01 44 00 2B 00
08 00 44 00 2C 7F
08 01 44 00 2C 00
09 00 44 00 2D 7F
09 01 44 00 2D 00
0A 00 44 00 2E 7F
0A 01 44 00 2E 00
0B 00 44 00 2F 7F
0B 01 44 00 2F 00
0C 00 44 00 30 7F
0C 01 44 00 30 00

F7

well, that worked perfectly!
I used input 0-12 for the 13 notes.

Now I'd like to include 2 other features,
As long as I connect 13 to ground I want to hold on the note, until another note is played. Then of course this new note will hold on.
(Is this called sustain?)

When I connect 14 to ground, (momentary switch) the current note stops playing, but the sustain/hold function stays active until 13 is switched off.

Can anyone help me with programming this feature?
thanks, Erwin
Reply With Quote
  #2  
Old 03-14-2015, 11:03 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Hi Erwin, welcome to the forum.

The first thing I would try is using the standard sustain CC message, which is CC #64 (40h). You can see a list of standard CC numbers in Table 3 on this page:

http://www.midi.org/techspecs/midimessages.php

That way, you can let the device receiving the messages determine which notes to hold or cancel.
Reply With Quote
  #3  
Old 03-15-2015, 05:59 AM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default

Okee, thanks. would that be something like this?:

F0 00 01 5D 04 01 00

// CT 13: Sustain on/off. CC 64 (40h)
0D 00 4C 00 40 7F
0D 01 4C 00 40 00

F7

I found this somewhere on the forum. I don't understand the 4C value for mm, though
Reply With Quote
  #4  
Old 03-15-2015, 10:42 AM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Quote:
Originally Posted by cockofonic View Post
Okee, thanks. would that be something like this?:

F0 00 01 5D 04 01 00

// CT 13: Sustain on/off. CC 64 (40h)
0D 00 4C 00 40 7F
0D 01 4C 00 40 00

F7

I found this somewhere on the forum. I don't understand the 4C value for mm, though
Looks good to me. The MIDI CPU firmware user manual has a list of control terminal modes. 44h is a "note" mode, 4Ch is a CC mode.
Reply With Quote
  #5  
Old 03-23-2015, 10:00 AM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default

hello John,

I have tried it, but my synth (arturia microbrute) does not seem to do anything with the sustain command.
Would it be a solution to do it with the continuous note start and stop, as found on page 17 of the manual?
And if so, could you give me some help with the programming rules.
thanks, erwin
Reply With Quote
  #6  
Old 03-23-2015, 07:48 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Quote:
Originally Posted by cockofonic View Post
hello John,

I have tried it, but my synth (arturia microbrute) does not seem to do anything with the sustain command.
Would it be a solution to do it with the continuous note start and stop, as found on page 17 of the manual?
And if so, could you give me some help with the programming rules.
thanks, erwin
Continuous note is probably not the right mode to solve the problem.

Quote:
As long as I connect 13 to ground I want to hold on the note, until another note is played. Then of course this new note will hold on.
(Is this called sustain?)

When I connect 14 to ground, (momentary switch) the current note stops playing, but the sustain/hold function stays active until 13 is switched off.
Assuming you want only monophonic operation, does the Microbrute have a mono mode? Or will monophonic note messaging have to be implemented at the MIDI CPU?

Does the Microbrute implement "all notes off"?. The "all notes off" CC command can again be found here:

http://www.midi.org/techspecs/midimessages.php

If all notes off isn't implemented, what about "all sound off"?.

The answers will determine the approach to take with the MIDI CPU. Let me know what you find out. I think we can devise a solution no matter what, but I want to do it in the way that involves the least amount of messaging from the MIDI CPU.
Reply With Quote
  #7  
Old 03-24-2015, 08:15 AM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default

Hello John,

As I am new to all this midi stuff it is not completely clear to me what would be the right way to do it, and also the (im-)possibilities of the microbrute. I have searched the arturia forums for more info, and I could only find the following:

"Microbrute sends and receives CC for Pitch bend and Modwheel. All the other panel controls do not. pure analog style...
Microbrute does receive CC to change parameters available in the Microbrute Connection software too. CC mapping is details in Microbrute Connection Software manual. (Available November 12th).

Parameter MIDI CC Value
Local ON/OFF cc122 0 = or 127 "

I think that the microbrute accepts only note information and the above mentioned pitch and mod wheel info. The other cc can only be changed by the software (usb etc).
the microbrute is a monophonic synth, if that answers your question about monophonic note messaging?

Last edited by cockofonic; 03-24-2015 at 08:19 AM.
Reply With Quote
  #8  
Old 03-25-2015, 09:24 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Ok. The first thing is that you'll need to upgrade the firmware on the MIDI CPU to version 1.4. See this thread:

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

Be sure to complete the firmware update procedure in the 1.4 firmware manual.

Once that is done, this is the approach we can take:

For the 13 CTs accepting pedal input:

Layer 0: Send Note Off with note number stored in register 11h
Layer 1: Store new note number in register 11h
Layer 2: Send new Note-On
Layer 3: On release, send Note Off for current note

Then,

CT 13: enables/disables Layer3
CT 14: Send Note Off with the note number stored in register 11h

Depending on how the Microbrute keeps track of notes, there's a chance you'll get a "stuck" note if you, say, do this in "note hold" mode (Layer 3 off):

- Send note A (without releasing)
- Send note B (without releasing)
- Ground CT 14 to cancel note B
- Does note A pop up again?

I can't predict the outcome in that case.
Reply With Quote
  #9  
Old 04-09-2015, 06:29 PM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default

Hello John, I have tried to do some programming, I hope you can help me a bit with this..


For the 13 CTs accepting pedal input:

(A) Layer 0: Send Note Off with note number stored in register 11h
(B) Layer 1: Store new note number in register 11h
(C) Layer 2: Send new Note-On
(D) Layer 3: On release, send Note Off for current note

Then,

(E) CT 13: enables/disables Layer3
(F) CT 14: Send Note Off with the note number stored in register 11h

For CT00
Layer nn tt mm ch d0 d1
(A) 00 00 00 41 - 11 00
(B) 01 00 00 ? ? note nr ? (note nr 24h)
(C) 02 00 00 41 - 11 7F
(D) 03 00 01 41 - 11 00

(E) 00 D 00 ? ? ? ?
(F) 00 E 00 41 - 11 00


I hope this makes any sense.
Thanks in advance
Regards, Erwin
Reply With Quote
  #10  
Old 04-13-2015, 02:54 PM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default

Hello John,
My previous post is waiting already for a few days on your reply.
I really hope you or anybody else can give me a hand with the programming of the board. I am really looking forward to using my footpedals!
big thanks!
Reply With Quote
  #11  
Old 04-28-2015, 08:57 PM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default Hello, anybody home on this forum?

Hello,
I posted a request for some help with the programming of my basspedalboard.
That is 3 weeks ago (9th april) but I did not get any reaction.
I hope someone will take notice of my programming "problems".

thanks,
Erwin
Reply With Quote
  #12  
Old 04-28-2015, 09:46 PM
Synthetech's Avatar
Synthetech Synthetech is offline
Moderator
 
Join Date: May 2012
Location: USA
Posts: 711
Default

looks like John was helping you out with that project.

I would shoot him a Private Message thru this forum.. click his name and look for "Send a private message to John"


he will get back with you...
Reply With Quote
  #13  
Old 04-29-2015, 09:47 AM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default

alright, done that
Reply With Quote
  #14  
Old 04-30-2015, 10:03 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Hi Erwin,

Were you able to upgrade your firmware to version 1.4? This is a prerequisite for making things work.
Reply With Quote
  #15  
Old 05-01-2015, 11:58 AM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default

So I understand. I made the extra connection to the board to upgrade it.
Would you think it would give me any problems to upload the 1.4 version then?
I was waiting until I got the right program to load, so I could use it until then without the hold function.
Reply With Quote
  #16  
Old 05-01-2015, 09:21 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Quote:
Originally Posted by cockofonic View Post
So I understand. I made the extra connection to the board to upgrade it.
Would you think it would give me any problems to upload the 1.4 version then?
I was waiting until I got the right program to load, so I could use it until then without the hold function.
I think it's best to upgrade to 1.4 before we try anything else. After you upgrade, you can check the firmware version by sending this message to the MIDI CPU:

F0 00 01 5D 04 00 7D 00 F7

...and then post the message the MIDI CPU sends back.
Reply With Quote
  #17  
Old 05-02-2015, 04:14 PM
cockofonic cockofonic is offline
Junior Member
 
Join Date: Mar 2015
Posts: 17
Default

Done that, the reply message is:
F0 00 01 5D 04 7D 06 F7
Reply With Quote
  #18  
Old 05-04-2015, 06:11 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

Quote:
Originally Posted by cockofonic View Post
Done that, the reply message is:
F0 00 01 5D 04 7D 06 F7
Excellent. Thank you. Let me see...

First thing is to set up the data registers for what we're doing. We'll use register 11h to store active note numbers. Register 1D is the control terminal config layer control register.

Code:
F0 00 01 5D 04 04
11 00 00 7F 00
1D 0F 00 0F 00
F7
Layer 0 CT config. CT 0-12 send notes with note number from register 11h.

CT 13 toggles layer 3. CT 14 sends note off with note number from register 11h.

Code:
F0 00 01 5D 04 01 00

00 00 45 00 11 00
00 01 7F 00 00 00
01 00 45 00 11 00
01 01 7F 00 00 00
02 00 45 00 11 00
02 01 7F 00 00 00
03 00 45 00 11 00
03 01 7F 00 00 00
04 00 45 00 11 00
04 01 7F 00 00 00
05 00 45 00 11 00
05 01 7F 00 00 00
06 00 45 00 11 00
06 01 7F 00 00 00
07 00 45 00 11 00
07 01 7F 00 00 00
08 00 45 00 11 00
08 01 7F 00 00 00
09 00 45 00 11 00
09 01 7F 00 00 00
0A 00 45 00 11 00
0A 01 7F 00 00 00
0B 00 45 00 11 00
0B 01 7F 00 00 00
0C 00 45 00 11 00
0C 01 7F 00 00 00

0D 00 76 00 1D 03
0D 01 7F 00 00 00

0E 00 45 00 11 00
0E 01 00 00 00 00

F7
to be continued....

Last edited by John; 05-04-2015 at 06:22 PM.
Reply With Quote
  #19  
Old 05-04-2015, 06:31 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

CT layer 1. Store new note number in register 11h.

Code:
F0 00 01 5D 04 01 01

00 00 74 00 11 24
00 01 7F 00 00 00
01 00 74 00 11 25
01 01 7F 00 00 00
02 00 74 00 11 26
02 01 7F 00 00 00
03 00 74 00 11 27
03 01 7F 00 00 00
04 00 74 00 11 28
04 01 7F 00 00 00
05 00 74 00 11 29
05 01 7F 00 00 00
06 00 74 00 11 2A
06 01 7F 00 00 00
07 00 74 00 11 2B
07 01 7F 00 00 00
08 00 74 00 11 2C
08 01 7F 00 00 00
09 00 74 00 11 2D
09 01 7F 00 00 00
0A 00 74 00 11 2E
0A 01 7F 00 00 00
0B 00 74 00 11 2F
0B 01 7F 00 00 00
0C 00 74 00 11 30
0C 01 7F 00 00 00

F7
CT layer 2. Send new note-on.

Code:
F0 00 01 5D 04 01 02

00 00 44 00 24 7F
00 01 7F 00 00 00
01 00 44 00 25 7F
01 01 7F 00 00 00
02 00 44 00 26 7F
02 01 7F 00 00 00
03 00 44 00 27 7F
03 01 7F 00 00 00
04 00 44 00 28 7F
04 01 7F 00 00 00
05 00 44 00 29 7F
05 01 7F 00 00 00
06 00 44 00 2A 7F
06 01 7F 00 00 00
07 00 44 00 2B 7F
07 01 7F 00 00 00
08 00 44 00 2C 7F
08 01 7F 00 00 00
09 00 44 00 2D 7F
09 01 7F 00 00 00
0A 00 44 00 2E 7F
0A 01 7F 00 00 00
0B 00 44 00 2F 7F
0B 01 7F 00 00 00
0C 00 44 00 30 7F
0C 01 7F 00 00 00

F7
to be continued...

Last edited by John; 05-04-2015 at 06:42 PM. Reason: lots of code errors, geez
Reply With Quote
  #20  
Old 05-04-2015, 06:45 PM
John's Avatar
John John is offline
Moderator
 
Join Date: Jan 2009
Posts: 3,007
Default

CT layer 3. Send note off upon release, when not in "note hold" mode.

Code:
F0 00 01 5D 04 01 03

00 00 7F 00 00 00
00 01 44 00 24 00
01 00 7F 00 00 00
01 01 44 00 25 00
02 00 7F 00 00 00
02 01 44 00 26 00
03 00 7F 00 00 00
03 01 44 00 27 00
04 00 7F 00 00 00
04 01 44 00 28 00
05 00 7F 00 00 00
05 01 44 00 29 00
06 00 7F 00 00 00
06 01 44 00 2A 00
07 00 7F 00 00 00
07 01 44 00 2B 00
08 00 7F 00 00 00
08 01 44 00 2C 00
09 00 7F 00 00 00
09 01 44 00 2D 00
0A 00 7F 00 00 00
0A 01 44 00 2E 00
0B 00 7F 00 00 00
0B 01 44 00 2F 00
0C 00 7F 00 00 00
0C 01 44 00 30 00

F7
If this doesn't work as expected, please post a config dump and I'll take a look. (Hopefully I don't have too many coding errors in there. )
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 10:26 PM.


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