# Feature Requested a MIN MAX range for CC & NRPN & ASSIGN

**URL:** <https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597>\
**Category:** Hapax\
**Tags:** feature-request\
**Created:** [December 23, 2023, 4:49pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597 "2023-12-23T16:49:57Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Joris.Roling](https://squarp.community/user_avatar/squarp.community/joris.roling/32/1919_2.png) [@Joris.Roling](https://squarp.community/u/Joris.Roling)\
**Post date:** [December 23, 2023, 4:49pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/1 "2023-12-23T16:49:57Z")

</div>

I’ve send the following feature request through the designated channel ([Contact us | Squarp instruments](https://squarp.net/contact/)):

> Hi Squarp,
> 
> Would it be possible to have the CC & NRPN definitions within Instrument Definition Files to have a operation range defined by two values: minimum & maximum (min/max). Currently only the granularity can be defined by DEPTH (either 7 or 14 bits), but within that range a lot of values can be outside the range defined be the actual instrument. It would be great if MIN and MAX could be part of the spec, so that the range could be made actually meaningfull.
> 
> So CC definitions could look like:
> 
> CC:DEFAULT=xx:MIN=1:MAX=10 NAME
> 
> So NRPN definitions could look like:
> 
> :NRPN:14:DEFAULT=xx:MIN=1:MAX=999 NAME
> 
> It would help me a lot!

---

<div class="post-metadata">

**Author:** ![kostra0ne](https://squarp.community/user_avatar/squarp.community/kostra0ne/32/2052_2.png) [@kostra0ne](https://squarp.community/u/kostra0ne)\
**Post date:** [December 23, 2023, 4:55pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/2 "2023-12-23T16:55:07Z")

</div>

Was thinking about this too !

---

<div class="post-metadata">

**Author:** ![Cyclopticowl](https://squarp.community/user_avatar/squarp.community/cyclopticowl/32/825_2.png) [@Cyclopticowl](https://squarp.community/u/Cyclopticowl)\
**Post date:** [December 23, 2023, 7:11pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/3 "2023-12-23T19:11:14Z")

</div>

+1 for this idea! This would help me a lot as well.

Just off the top of my head for my studio, it would make it a lot easier to use Automation Lanes with Conductive Labs NDLR and several synths that use 0 or 1 for on/off parameters.

---

<div class="post-metadata">

**Author:** ![SiftingFlowers](https://squarp.community/letter_avatar_proxy/v4/letter/s/ea666f/32.png) [@SiftingFlowers](https://squarp.community/u/SiftingFlowers)\
**Post date:** [December 24, 2023, 6:09am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/4 "2023-12-24T06:09:46Z")

</div>

Have you looked at using the Filter effect CC Lo / CC Hi to achieve something remotely similar in the meantime?

It wouldn’t be part of the Definition so not as convenient but could possibly tide someone over until another possible future update.

---

<div class="post-metadata">

**Author:** ![Cyclopticowl](https://squarp.community/user_avatar/squarp.community/cyclopticowl/32/825_2.png) [@Cyclopticowl](https://squarp.community/u/Cyclopticowl)\
**Post date:** [December 24, 2023, 6:23am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/5 "2023-12-24T06:23:37Z")

</div>

Here’s what I sent to Squarp:

I would like to be able to “lock” the Min & Max settings for an Automation Lane then have those Min/Max settings translate/corespond/scale to the pads, so that rather than the bottom row being 0 and top being 127, the bottom would then be “Min” and top “Max”.

Here’s an example. This would be incredibly helpful for me sending automation to the Conductive Labs NDLR. CC 26 (Chord Degree) for NDLR has a range of 1-7. The way Hapax works now, all 7 of those Chord Degrees are represented in the bottom row of pads for an Automation Lane.

Furthermore, it may be best to be able to select how many rows you want represented rather than Min/Max ‘scaling’ to the 8 pad rows, and then allowing for scrolling up and down (similar to the function of the piano roll). Again, using NDLR for an example, CC 74 (Mode/Scale) has a range of 0-15. Rather than each row representing 2 parameters, it would be very useful to set a Min/Max AND Number of Rows (16 in this case) and allow for scrolling up and down the column.

Additionally, it would be great to set these Min/Max settings (and perhaps Number of Automation Lane rows?) in the Instrument Definition files. There is a discussion about this here:

> [@Feature Requested a MIN MAX range for CC & NRPN & ASSIGN](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597):
>
> I’ve send the following feature request through the designated channel ([Contact us | Squarp instruments](https://squarp.net/contact/)): Hi Squarp, Would it be possible to have the CC & NRPN definitions within Instrument Definition Files to have a operation range defined by two values: minimum & maximum (min/max). Currently only the granularity can be defined by DEPTH (either 7 or 14 bits), but within that range a lot of values can be outside the range defined be the actual instrument. It would be great if MIN and MAX cou…

Thank you!  
Michael

---

<div class="post-metadata">

**Author:** ![Cyclopticowl](https://squarp.community/user_avatar/squarp.community/cyclopticowl/32/825_2.png) [@Cyclopticowl](https://squarp.community/u/Cyclopticowl)\
**Post date:** [December 24, 2023, 6:25am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/6 "2023-12-24T06:25:07Z")

</div>

I had not thought of this approach before. Thanks for the idea! I will try this.

---

<div class="post-metadata">

**Author:** ![Joris.Roling](https://squarp.community/user_avatar/squarp.community/joris.roling/32/1919_2.png) [@Joris.Roling](https://squarp.community/u/Joris.Roling)\
**Post date:** [December 24, 2023, 10:55am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/7 "2023-12-24T10:55:28Z")

</div>

Thanks for the suggestion, but…

The CC MIN and CC MAX in the FILTER effect describe a range of CC’s not a range of CC values. So effectively not even remotely similar.

---

<div class="post-metadata">

**Author:** ![dokev](https://squarp.community/letter_avatar_proxy/v4/letter/d/ba8739/32.png) [@dokev](https://squarp.community/u/dokev)\
**Post date:** [December 24, 2023, 12:37pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/8 "2023-12-24T12:37:46Z")

</div>

The two suggestions here (setting Min/Max in instrument definitions and scaling the grid according to those settings) are the things I most want in a future firmware update; I sent Squarp a feature request with both a few weeks back. It is really difficult to draw NRPN automation without this because of the huge number of values, plus many manufacturers only using a fraction of the possible values on particular parameters.

The other thing I’d love is being able to set “enumerated values” for certain CC. I.e. a synth has a filter type parameter where CC 0 - 15 is low pass, 16 - 32 is high pass etc; you could set a CC in an instrument def to take discrete named values and then be able to scroll through them on Hapax (this would be a lot like how it works when setting automation lanes for Hapax FX parameters). [The Electra One midi controller is able to do this](https://docs.electra.one/concept.html#lists). This would be very helpful in @Cyclopticowl’s example.

If we had these three things together, Hapax would be really hard to beat as a control change sequencer.

---

<div class="post-metadata">

**Author:** ![SiftingFlowers](https://squarp.community/letter_avatar_proxy/v4/letter/s/ea666f/32.png) [@SiftingFlowers](https://squarp.community/u/SiftingFlowers)\
**Post date:** [December 25, 2023, 1:14am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/9 "2023-12-25T01:14:25Z")

</div>

Thank you for clarifying. I have not used this myself so I didn’t know exactly how it worked, but I just recalled reading about it in the manual so figured it was worth mentioning as a possibility.

I don’t see how a filter on controller #'s would be useful for this purpose or in general. Filtering values was more obvious in my brain but I guess it is not implemented.

---

<div class="post-metadata">

**Author:** ![oldgearguy](https://squarp.community/letter_avatar_proxy/v4/letter/o/f4b2a3/32.png) [@oldgearguy](https://squarp.community/u/oldgearguy)\
**Post date:** [December 26, 2023, 5:16pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/10 "2023-12-26T17:16:22Z")

</div>

yeah, I asked for something similar back in February:  
[CC Min/Max](https://squarp.community/t/scaling-cc-automation/9024)

So they’ve known about this kind of ask for quite a while.

---

<div class="post-metadata">

**Author:** ![Cyclopticowl](https://squarp.community/user_avatar/squarp.community/cyclopticowl/32/825_2.png) [@Cyclopticowl](https://squarp.community/u/Cyclopticowl)\
**Post date:** [December 31, 2023, 9:22am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/11 "2023-12-31T09:22:45Z")

</div>

Hey folks,

I just wanted to share with you the response I received from Squarp regarding my request: “I totally got your idea and I think it’s a good one. We are currently closing the HapaxOs 2.0 version, so it’s too late to add it to this one. I copy/pasted your email in a ticket to review it with the team after the holiday. Thanks for your suggestion, and for its clarity :).”

So sounds like the Hapax team may be receptive to this idea in a future OS Update… fingers crossed!

Michael

---

<div class="post-metadata">

**Author:** ![mescalinum](https://squarp.community/user_avatar/squarp.community/mescalinum/32/2875_2.png) [@mescalinum](https://squarp.community/u/mescalinum)\
**Post date:** [May 1, 2024, 8:21pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/12 "2024-05-01T20:21:14Z")

</div>

+1

So the feature is still not included (e.g. in current HapaxOS 2.02)?

---

<div class="post-metadata">

**Author:** ![Avlantis](https://squarp.community/user_avatar/squarp.community/avlantis/32/2542_2.png) [@Avlantis](https://squarp.community/u/Avlantis)\
**Post date:** [May 7, 2024, 10:40am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/13 "2024-05-07T10:40:48Z")

</div>

+1  
It’s particularly frustrating when the enumeration values don’t line up with the 8 rows in automation on hapax. so like you have to add a step to row 6, but then hold it and scroll down/up a bit to get to the right point.

---

<div class="post-metadata">

**Author:** ![1AM](https://squarp.community/letter_avatar_proxy/v4/letter/1/a698b9/32.png) [@1AM](https://squarp.community/u/1AM)\
**Post date:** [May 9, 2024, 2:21pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/14 "2024-05-09T14:21:16Z")

</div>

What I’d like to see in addition to the above is PERLIN curve’s amplitude min/max in the list of destinations, and modulate those at 14b resolution… 🫠

Sent Squarp a feature request a while ago, but didn’t even get an acknowledgement of a receipt back…

---

<div class="post-metadata">

**Author:** ![mikei](https://squarp.community/user_avatar/squarp.community/mikei/32/3021_2.png) [@mikei](https://squarp.community/u/mikei)\
**Post date:** [February 3, 2025, 7:28am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/15 "2025-02-03T07:28:57Z")

</div>

Hello, @Thibault can we still hope about this one? Before V3 😜 ? 😄

Best regards

Michael

PS: Thank you again for the 2.10 update, I wasn’t prepared indeed 😅 👍

---

<div class="post-metadata">

**Author:** ![solipsvs](https://squarp.community/user_avatar/squarp.community/solipsvs/32/2566_2.png) [@solipsvs](https://squarp.community/u/solipsvs)\
**Post date:** [February 3, 2025, 7:38am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/16 "2025-02-03T07:38:11Z")

</div>

+1 laadaadee

---

<div class="post-metadata">

**Author:** ![mikei](https://squarp.community/user_avatar/squarp.community/mikei/32/3021_2.png) [@mikei](https://squarp.community/u/mikei)\
**Post date:** [February 3, 2025, 8:50am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/17 "2025-02-03T08:50:34Z")

</div>

I found a good example of the importance of a range setting for nrpn and midi cc, if you look at the Mopho nrpn specs you’ll understand how this upgrade can take the Hapax to the the next level in term of midi control/sequencing.

 ![Mopho nrpn](https://squarp.community/uploads/default/original/2X/2/23d67aabf25392bdc7dd670f36da8a875478dc24.png)

Also trying to control the Sequencer parameters on the Mopho, when I write automation points for the 14 bits nrpn I get huge numbers, for example if I go on the third pad (from the bottom) I have a value of 4680 it’s useless in my case and not visually handy as the nrpn 136 (1 step of seq 2 on the Mopho) is ranged 0-126

 ![nrpn seq](https://squarp.community/uploads/default/original/2X/9/911ed6caaedca0d76326a7b057f17cc819bebedd.png)

Here is the Instrument Definition file with all the steps for the 4 sequencer :

> [@Mopho nrpn for 4 sequencer](https://squarp.community/t/mopho-nrpn-for-4-sequencer/13646):
>
> VERSION 1 # Currently, this should only be 1. TRACKNAME Mopho TYPE NULL OUTPORT A OUTCHAN 1 INPORT ALLACTIVE INCHAN ALL MAXRATE 192 [PC] [/PC] [CC] 1 ModW 2 Breath 4 Foot 7 Volume 11 Expression 14 BPM 15 Clk Dev 20 O1 Frq 21 O1 Frq F 22 O1 Shape 23 O1 Glide 24 O2 Frq 25 O2 Frq F 26 O2 Shape 27 O2 Glide 28 Osc Mix 29 Noise Lev 30 O1 Sub 31 O2 Sub 32 Bank Select 64 Damper 74 Brightness 75 A Sus 76 A Rel 77 E3 Sus 78 E3 Rel 85 E3 Dest 86 E3 Amt 87 E3 Vel Amt 88 E3 Dly 89 E3 Att 90 E3 Dec 102 F Fr…

---

<div class="post-metadata">

**Author:** ![mikei](https://squarp.community/user_avatar/squarp.community/mikei/32/3021_2.png) [@mikei](https://squarp.community/u/mikei)\
**Post date:** [February 8, 2025, 4:54pm UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/18 "2025-02-08T16:54:53Z")

</div>

Hello, can we use 14-bit nrpn in the Assign section? Because when I turn the knob one notch for the MOPHO Filter Freq ( NRPN/15 range 0-164 14-bits) it directly jump to value 64 ( increment steps …64\>128\>192).  
Fact is, if I use the simple MIDI CC 102 for Filter Freq , as it is ranged 0-164, the knob value in Assign will start at 37 (37-164).  
The result is that the only way to fully control the Mopho filter Frequency from the Hapax is with the 14-bits nrpn in automation wich is already cool but not for synth parameter recall because we can’t adjust values for the Assign pots.

Any help greatly appreciated

Thanks

---

<div class="post-metadata">

**Author:** ![WiggyDee](https://squarp.community/letter_avatar_proxy/v4/letter/w/ba8739/32.png) [@WiggyDee](https://squarp.community/u/WiggyDee)\
**Post date:** [April 10, 2025, 8:40am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/19 "2025-04-10T08:40:16Z")

</div>

Just posting to bump visibility on this topic. I apologise if there’s a workaround and I’ve misunderstood (I’m by no means an expert on this topic) I’ve been reading through the firmware updates and to my knowledge it seems we still have to program automation data in 64 step increments for certain synths in NRPN mode?

I’m still desperately hoping for this feature to be implemented, I’ve hardly used my Hapax in the last year as programming automation data for my OB6 and Prophet Rev 2 in 64 step increments when the range is 0-127 is just far too cumbersome.

---

<div class="post-metadata">

**Author:** ![PChamaeleoMH](https://squarp.community/letter_avatar_proxy/v4/letter/p/a698b9/32.png) [@PChamaeleoMH](https://squarp.community/u/PChamaeleoMH)\
**Post date:** [April 24, 2025, 11:31am UTC](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597/20 "2025-04-24T11:31:39Z")

</div>

This would be very helpful with CC pairs too… I’m trying to make Instrument Definitions for Jomox MBase and MBrane, and the Mbrane uses 2 CC Nos to control some parameters over a 256 range (e.g. using CC 90 as MSB of 0 or 1, and CC 91 as LSB of 0-127). It would be helpful to be able to limit the CC min/max in Hapax so that MSB doesn’t also vary well outside of its usable range.

[Next page](https://squarp.community/t/feature-requested-a-min-max-range-for-cc-nrpn-assign/10597.md?page=2)
