NRPN

Home Forums General Using Ctrlr NRPN

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #68946
    punkrev
    Participant
      • Topics: 1
      • Replies: 3
      • Total: 4

      Hi

      Im trying to make a 32 bit editor for the novation circuit I can do CC fine but NRPN is a problem.
      In the Midi Implementation chart they are listed as two numbers such as 0:3 how do i get that to work.
      I think it has to be a multi message but that’s all I can work out.

      #68947
      goodweather
      Participant
        • Topics: 45
        • Replies: 550
        • Total: 595
        • ★★★

        Hi, I looked at the circuit midi implementation at https://us.novationmusic.com/sites/default/files/novation/downloads/12118/circuit-midi-parameters-v4.pdf and indeed saw this strange notation 0:3 for example.
        Don’t know what it means.
        Do you have MidiOX or Sysex Librarian?
        Use it to check which NRPN messages are sent for example when you change Env2 Sustain (0:3).

        If we know the meaning, it should be easy to configure Ctrlr:

        • MIDI message type= Multi
        • MIDI controller number
        • Multi message list: take the NRPN template from the second button “Insert predefined”
        #68948
        Possemo
        Participant
          • Topics: 14
          • Replies: 638
          • Total: 652
          • ★★★

          0 could be MSB and 3 LSB. Just a guess. As these seem to be 7-bit values you have to delete the last line of the NRPN template and change the third to “direct”. like this:

          CC,ByteValue,MSB7bitValue,99,-2
          CC,ByteValue,LSB7bitValue,98,-2
          CC,Direct,Direct,6,-1

          #68949
          punkrev
          Participant
            • Topics: 1
            • Replies: 3
            • Total: 4

            Thanks trying midi ox out I a bit.
            But if you look on the debug on the max editor the message sent looks like this 176 99 0 176 98 1 176 6 (that’s env 2 attack 0:1 on the midi chart).

            #68952
            Possemo
            Participant
              • Topics: 14
              • Replies: 638
              • Total: 652
              • ★★★

              I don’t know max and don’t know what 176 is good for. But the other numbers seem to match: cc 99 is MSB (0) and cc 98 is LSB (1), cc 6 is the value (is there no value?)

              #68953
              punkrev
              Participant
                • Topics: 1
                • Replies: 3
                • Total: 4

                No 6 is not the value that comes up after that line of numbers I think that corresponds to the 6 in CC,Direct,Direct,6,-1
                So where do I put the MSB and the LSB and how do I find the CC number? Or for that do I just use Midi OX (still getting the hang of that)

                #68984
                Possemo
                Participant
                  • Topics: 14
                  • Replies: 638
                  • Total: 652
                  • ★★★

                  yeah, that’s what I meant (cc number 6 sends the value of the parameter selected with MSB and LSB).

                  Values for MSB/LSB are set in the field “Midi Controller number” (enter decimal values here).

                  MSB 0 and LSB 1 represents the decimal number 1. MSB 1 and LSB 0 represents the decimal number 128. It is not that hard to understand if you have minimal knowledge of binary notation. The calculator in Ctrlr (Tools -> Midi Calculator) helps you to find out the right number. Set the checkbox “16bit” and Enter 127 in the field “Decimal”. You see that it will display 0000000001111111. Ignore the last two zeroes (NRPN CC’s are 2x7bit = 14 bit). So look at it like 00000001111111. The zeroes are the MSB (most significant bits) and 1111111 are the LSB (least significant bits). Another example: 3:127 represents the decimal number 511: MSB = 0000011, LSB = 1111111.

                  #68986
                  goodweather
                  Participant
                    • Topics: 45
                    • Replies: 550
                    • Total: 595
                    • ★★★

                    If you assume that you want for example to enter 3:127 and if this means 511 (127+128+256) then the easiest is simply to follow the procedure I explained above:

                    • MIDI message type= Multi
                    • MIDI controller number= 511
                    • Multi message list: take the NRPN template from the second button “Insert predefined” and keep all 4 lines as is

                    You will only have to translate your x:y notation into a decimal and enter that decimal value as controller number for each parameter.

                    #68987
                    Possemo
                    Participant
                      • Topics: 14
                      • Replies: 638
                      • Total: 652
                      • ★★★

                      @goodweather: according to the midi implementation chart these seem to be 7Bit values at max. I mean the parameter values, not the NRPN CCs, these are indeed 14bit. So you would only need one 7Bit parameter value:

                      CC,ByteValue,MSB7bitValue,99,-2 — MSB part of NRPN
                      CC,ByteValue,LSB7bitValue,98,-2 — LSB part of NRPN
                      CC,Direct,Direct,6,-1 — 7Bit value of the parameter

                      #69046
                      punkrev
                      Participant
                        • Topics: 1
                        • Replies: 3
                        • Total: 4

                        Still trying to get my head around it but thanks for all the help

                        #69052
                        Possemo
                        Participant
                          • Topics: 14
                          • Replies: 638
                          • Total: 652
                          • ★★★

                          If you don’t want to care about binary notation you could simply do it that way:

                          for CC’s from 0:0 to 0:127 -> just enter the LSB value in the field “Midi Controller number”. So for 0:56 enter 56.

                          1:0 to 1:127 -> add 128 to the LSB value. So for 1:45 enter 45+128 = 173

                          2:0 to 2:127 -> add 256 to the LSB value. For 2:3 enter 3+256 = 259

                          3:0 to 3:127 -> add 384 to the LSB value. For 3:127 enter 127+384 = 511

                          I attached a screenshot showing the MIDI setting of a slider for NRPN 1:37.

                          Attachments:
                          You must be logged in to view attached files.
                        Viewing 11 posts - 1 through 11 (of 11 total)
                        • The forum ‘Using Ctrlr’ is closed to new topics and replies.
                        There is currently 0 users and 67 guests online
                        No users are currently active
                        Forum Statistics
                        Threads: 2,495, Posts: 17,374, Members: 77,605
                        Most users ever online was 12 on January 22, 2019 3:47 pm
                        Ctrlr