Hardware synth echoing back unrelated midi data on itself?

I have a Novation Peak set up as a Midi Device and noticed that when it’s included in the list for “Midi Inputs” under the midi input routing for a track, there’s some wacky additional midi controller data that gets added to itself, resulting in a lot of weird things to the synth. Even pressing a button on the panel will send irrelevant CC data back on itself which does wacky things like detune the oscillators every time. For example I can see with a midi monitor, a basic menu button on the synth results in all this excess CC data which controls unrelated parameters:

Also if I live record something where I play with the modwheel or cutoff knob (to record that CC data), you can see all this crazy jumpy data on weird lane:

Here, the smooth data on CC29 is what I wanted, that is the filter cutoff and I turned that while performing. However it also simultaneously recorded something on CC61 which as you can see looks absoultely bonkers!

I looked up the Novation Peak manual for the CC chart and I think it has to do with something which I know little about - “CC Pairs” and NRPN. Filter frequency, which I thought was only CC29, is actually listed as a “CC Pair” for 29 and 61. I’d never heard of CC pairing before…

But then I also see this listed on the chart:

Screenshot 2025-03-10 at 1.18.41 PM

Where that column is control number = 0:61. I am not familiar with NRPN.

Regarding the above where panel buttons are sending additional controller data, there is nothing in the manual related to CC for these buttons (since they are menu items and not synth controls). However, the problematic data is CC6 and CC38, which it sends every single time as DataEnt MSB and LSB. Coincidentally, these CCs related to oscillator 2 pitch, which explains the wacky results I’m hearing.

All of these issues go away if I remove the synth from the midi input routing, and just use my keyboard controller (NI Kontrol S49 II). But then, I am unable to record any midi data in real time, such as turning the filter knob etc.

So is there a way of filtering out all this funky unnecessary data?

After messing around with all my hardware synths that have digital panel controls, I’ve noticed all menu-type buttons and switches send the exact same row of data:

CC 99, 98, 6, 38

Whether or not the synth responds to it in an undesirable or unexpected way depends on its own CC implementation (some do not have anything on those CCs so there is no audible conflict).

I’m really hoping someone can help me figure this out – having those random CC messages sent which drastically change a synth’s sound is unacceptable as it renders a $1600 synth basically useless within Cubase.

Have you turned local off on the synth?

They’re not random messages, they’re MIDI NRPN messages. Read the synth’s manual on how to disable sending them.

To be fair I don’t know the difference, but the the fact the synth implements an oscillator pitch parameter on CC 38, but also sends and receives data on CC 38 when pressing menu buttons, would that not seem a bit odd or random? The manual doesn’t speak to this. But I can’t imagine why it would be implemented to act in that way.

Also when I use the synth without Cubase, and observe it with an external midi monitor app, nothing is being sent on CC 6 or CC 38 for that matter – and also monitoring its audio results in no weird changes I was experiencing. So this is unfortunately only happening within Cubase, so this is why I find the messages to be random as they are coming only from within Cubase, and I can’t figure out why. I also tried other midi transmit modes in the synth from the manual, but while this solved that problem I’m back to the issue where I can’t actually record midi data from turning knobs (filter cutoff for example).

I hadn’t, but trying that just now it sadly doesn’t change.

Hi,

Does it use the very same MIDI Port and MIDI Channel for both messages?

Yes, it seems there is just one midi channel for all. If it’s helpful this is what the manual says regarding midi and CC/NRPN messages -

I’ve tried different variations of Local On/Off vs. CC/NRPN set to different options, but nothing which seems to allow me the ability to hear/perform knobs without this odd issue of CC 38 data.

Also I was looking back and trying to understand this thing about CC pairs, and why moving the cutoff knob adds data for both CC 29 and 61 (where the latter creates crazy jumps). The manual says nothing else on this pairing, and googling around for “midi CC pairs” doesn’t offer much. The only thing I was able to find is related to when a knob value exceeds 0-127. In this case filter cutoff goes from 0-255, so I guess CC 61 is meant to pick up for the second half of data. But in the real world of midi automation within a DAW doesn’t seem to work right, with Cubase creating separate lanes fighting each other.

When creating the Midi Device, this is how I have set it up -

NRPN messages are sent as 4 separate CCs. The first two, CC99 and CC98 is the MSB and LSB of the parameter number. The actual value is made up of CC6 and CC38 (again MSB and LSB respectively). This is how CC6 and 38 are used for several different parameters.

So there is no technical way of using the synth in Cubase and with the ability to turn knobs to react live?

I own a few other DAWs, though Cubase is my primary one. I just tested in Logic, Ableton, and ProTools - and none of them are causing this issue. Monitoring the midi shows nothing related to CC 38 or any conflicts. So there is something happening within Cubase… but I much prefer working with Cubase, hence why I’m here :slight_smile:

I am noticing the other issue of split CC data for filter frequency on separate lanes (CC 29 and 61) does happen in other DAWs. So that one is definitely up to a quirky implementation of the synth, but I can live with it by deleting the secondary lane I don’t need. It’s a minor annoyance.

However the primary issue of any button on the synth drastically altering the sound makes it impossible to use. I hope to find a solution since I don’t know why Cubase alone is doing this. It seems to me that even though CC 6 and CC 38 are used for the NRPN messages, there should be a way of avoiding a conflict since the other DAWs I tried are able to.

This is not abnormal.

Normally, CC can only express 128 steps from 0 to 127.
The FilterFrequency CC pair expresses values ​​from 0 to 255 using CC29 and CC61. This allows for more delicate expression than the 128 steps of normal CCs.

NRPN expresses one piece of data using four CCs: 99, 98, 6, and 38.

This is a basic MIDI specification, so please look it up and understand it.

The “61” in Mod Envelope 1 Trigger NRPN 0:61 has nothing to do with CC61. It just happens to be the number “61.”

Again, this is not abnormal.

1 Like

Hi, thank you. I have been spending all day trying to research this. I am learning to understand what you say about NRPN which sends 99, 98, 6, and 38. It’s slowly starting to make sense, but I am not a technical expert on midi.

Technical things aside, what I would describe as abnormal would be the user experience - you spend $1600 on a synth, press one button, and the whole thing falls apart, because they implemented CC 38 on another parameter. This, however, does not seem to make a lot of sense (it would seem abnormal for Novation to intentionally program the synth to behave in this way; you’d think they would either steer clear of CC38 or there would be some way of creating a distinction between them to prevent conflicts). I think after all these years someone, somewhere would’ve complained about that. So I think there is something else going on here. Like I said having tested in a few other DAWs, the issue does not occur. Obviously I want to get this to work in Cubase, but throwing the pitch out of whack with every single button press forcing a full patch restart cannot be considered normal, can it?

Regarding the CC pair for filter frequency, I appreciate the concept of the increased resolution which allows for more delicate expression. However in the real world, automation up to one half of a lane and then carrying on automation on a completely second lane, or writing to two lanes simultaneously which fight over controlling the filter – kinda defeats its own purpose. It makes technical sense as a way to account for 0-255, but it makes no real-world musical sense having to approach it that way. It’s been hard to find much information on how this works, but so far from what I’ve read that is how I’m understanding it – please correct me if I’m wrong!

If pressing a panel button sends a CC, it’s possible that Novation Peak is operating in something like “MIDI controller mode”.
It looks like Novation Peak has such a feature, you can assign a MIDI CC to the button.

As I mentioned, with CC pairs, one CC can only express 128 steps, so the only way to express more than that is to use multiple CCs. You may not understand this, but that’s the way MIDI is designed.
NRPN uses four CCs to move one parameter. Two is still better.
If you don’t understand this, all you can do is ask the creators of Novation Peak why they did it that way.

1 Like

I suppose I was hoping, in spite of MIDI spec, that all these years later DAWs would have invented a workaround to consolidate the lanes, or to prevent overlapping data as I showed in my screenshot above. I do understand the technical purpose behind the design, but as a real-world implementation it doesn’t serve much musical use having separate lanes fighting back and forth for control of the filter (which is what it audibly sounds like on my end; rather than a smoothly finessed filter it sounds glitchy).

I will reach out to Novation for questions. I do wish that I could understand why Cubase is the only app I’m using which has a conflict regarding CC 38, though, which is why I’m here. I tried seeing if I could force it to ignore CC 38 entirely with an input transformer (since I actually never need to access this CC anyway). Unfortunately it seems there is no way to tell Cubase to block/filter/ignore such messages from going back out to the synth.

I have read the manual and understand it.
This is very unfortunate news.

It is probably not possible to do what you want, wing.
It would be very difficult to explain this in detail, so I think it would be better to ask Novation directly.

I think I’ve found the cause of the problem in Cubase.
In other DAWs, the MIDI connections may be misconfigured.

If possible, please check the following.

Set Novation Peak’s “MIDI ENABLE” “CC/NRPN” to “Rec+Tran.”

Next, on your other DAW, check that both the MIDI IN and MIDI OUT are correctly connected to Novation Peak.
How to check:

  1. Playing MIDI DAT in DAW. Make sure Novation Peak is playing.
  2. Twist the knobs on Novation Peak and record MIDI CC into your DAW.

If you can do these two things, there are no problems with the MIDI connections.

In this state, the same problem should occur as with Cubase.

postscript:
Why you hear glitches.
CC29 and CC61 should be sent as a pair. However, CC29 data is being cut, causing glitches.

1 Like

Thank you for taking the time to look at the manual and help me out!

Yes, confirmed – this is what it was set to before as well.

Correct, this has been my experience testing previously with both Logic and Ableton. I am able to twist knobs while playing, and then immediately play it back and hear the result. Then, if I reach over and press any of those panel knobs which have been causing issues, in either Logic or Ableton, nothing negatively changes on the synth. So I can confirm in these environments that midi input and output is working correctly with the synth.

Here is an interesting thing, I cannot tell, but it seems Logic might be interpreting (and helpfully filtering) the conflicting data. For example, with Logic’s midi monitor, every time I hit those problem buttons, it appears to leave off or ignore CC38, only using these 3 rows every time:

Then, for the frequency CC paired lanes, while the data does get recorded, it does not sound glitchy. It seems to have a different interpretation here than Cubase. It shows regular CC 29 as normal automation:

And rather than showing CC 61, it actually has a differently colored lane which it calls in parentheses (#29 LSB), which I take to mean is the pair but is treated like hidden, secondary controller data.

I can only assume this is what Cubase displays as CC 61 since they look exactly the same:

So I cannot tell, but it seems like other DAWs might be auto-filtering this kind of NRPN data from conflicting with CC parameters. If this is in fact the case, I wish Cubase could do the same, because it is my favorite DAW to compose in, and otherwise has made working with my hardware synths generally a breeze. But it’s rather unfortunate that this one synth won’t get along with it. I’ll send my questions over to Novation to see what they think.

Thanks again!

1 Like

Sorry. I’m using Google Translate. I’m not sure if I’m getting it right.

It looks like that’s all I can help you with for now.
There’s no problem with Cubase in this regard, so I’ll leave it to Novation.
Good luck!

1 Like

No worries, and thank you for taking the time to help. I will report back with what I find out from Novation!

If you haven’t already, try changing Type of New Controller Events to Jump in the Controller Lane Setup of the Key Editor.

1 Like

in the manual:
settings> midi control data

set it to “receive” if you want to only receive midi cc and not transmit it.

Thank you, yes I have reviewed the manual and all possible settings. Unfortunately Rec+Tran is the preferred option because I would like transmit CC data (filter cutoff for example) in real time, while playing. Therefore Transmit is necessary.