NRPN (MIDI) Verständnis-Problem

Gisel1990

||||||||||
Hi, hoffentlich findet jemand den Fehler oder kann mir helfen. Ich habe was NRPN angeht noch keinen Plan. Ich will mit meinem Hardware-Sequenzer (Hapax) meinem Synth Sequential Pro3 sagen, dass er doch bitte den Sequenzer (also den vom Pro3) starten oder stoppen soll. Laut Handbuch vom Pro3 scheint das zu gehen, allerdings nicht über CC sondern über NRPN. Hier ein Screenshot vom Handbuch:

1681672965721.png

Hier die Doku vom Hapax:

For NRPN, value must be MSB:LSB: DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14

Im Hapax definiere ich folgendes:

NRPN:32:92:7

Also MSB 32, LSB 92, DEPTH 7 (14 funzt auch nicht)

Ich denke mir das so: 32x128+92=4188. Dies wird in der Hapax-Doku an anderer Stelle auch nochmal mit zwei Beispielen erklärt, daran habe ich mich orientiert. Ich würde erwarten, dass ich mit 0 den Sequenzer starte und mit 1 stoppe. Nur leider passiert überhaupt nichts :sad: Beim Sequential Rev2 übrigens das selbe. Hier ist der NRPN-Wert 1088, mit NRPN:8:64:7 solltes es also klappen.

Midi-Parameter Receive in den globalen Settings steht beim Synth auf NRPN. CC-Befehle werden klaglos empfangen.

Ich muss irgendwo einen Denkfehler eingebaut haben. Kann mir jemand einen Tipp geben?
 
Zuletzt bearbeitet:
Quelle: https://www.morningstar.io/post/sending-midi-nrpn-messages

Setting the NRPN number​

Send 2 CC messages to set the MSB and LSB for the NRPN number
CC#98 sets the NRPN Number LSB
CC#99 sets the NRPN Number MSB
danach wahrscheinlich 'ne 1 oder 'ne 0, für on/off

Aber HAPAX scheint das auch direkt zu unterstützen:
 
Sorry Summa, das verstehe ich nicht. Der Hapax unterstützt NRPN, also warum CC senden? Und wie genau soll das gehen?

Ziel ist in einem ersten Schritt mit dem ASSIGN-Mode vom Hapax den Sequenzer vom Synth zu starten und zu stoppen. Das habe ich wie beschrieben versucht, hat nicht geklappt. Warum?

Wenn das klappt, würde ich in einem zweiten Schritt gerne den Synth-Sequenzer über ein Pattern vom Hapax starten und wieder stoppen. Aber so weit bin ich wie gesagt noch nicht.

Der Arp von den Sequentials lässt sich übrigens per CC starten, das funzt auch. Warum ist das mit dem Sequenzer starten so kompliziert? Hätte man das nicht auch einfach über CC lösen können?
 
Zuletzt bearbeitet:
Wenn Ich das richtig verstanden habe :
"NRPN" Parameter lassen sich grundsätzlich auch über 4 "CC" Werte einstellen.?
Da der Hapax aber "NRPN" direkt unterstützt ist das hier vermutlich nicht gesucht oder nötig aber trotzdem möglich.

Ich wollte mich auch mal mehr mit dem Thema beschäftigen. Grade im Bezug zum Hapax.

Edit : Mit den ersten beiden CC´s wird der Parameter bestimmt, mit den nächsten 2 dann der Wert, oder?
Also CC98+99 bestimmen den Parameter
und CC38+6 bestimmen den Wert.

Edit2 : Das ist vermutlich keine Hilfe im konkreten Fall aber so zum eigenen Verständnis, sorry @Gisel1990 ;-)
 
Zuletzt bearbeitet:
Der Hapax unterstützt NRPN
Dann hättest du den Hapax schon in der Überschrift erwähnen soll, um die entsprechenden User zum antworten zu animieren und ja ... wie das geht steht im Link zur Anleitung, aus Ermangelung eine HW Sequencer kann ich dir nix besseres anbieten. o.O
 
Man kann ja auch der "Push" Funktion einen festen Wert zuweisen, denke Ich.
Oder irgendwie ne Automation ? Verkettungen von "CC" Befehlen in die txt. Datei?
Ich hab keine Ahnung, ehrlich gesagt. Bin aber auch neugierig.

Das(4 CC´s senden) sollte ja eigentlich auch nicht nötig sein da der Hapax wohl auch NRPN direkt adressieren kann...?
 
NRPN:32:92:7

Also MSB 32, LSB 92, DEPTH 7 (14 funzt auch nicht)

Ich denke mir das so: 32x128+92=4188
Code:
# NRPN
# Syntax: "MSB:LSB:DEPTH NAME" or "MSB:LSB:DEPTH:DEFAULT=xx NAME"
# Lsb & msb should be between 0 and 127
  # Note: LSB can be over 127 ONLY if MSB is 0 or omitted
  # e.g. '0:1026:7 FOO', or ':2000:7 BAR'
  # the examples above would be equivalent to '8:2:7 FOO' and '15:80:7 BAR' respectively
# DEPTH can be 7 or 14
# For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs)
[NRPN]
32:92:7 Pro3 Sequencer
[/NRPN]

Dann einen Wert von 0 oder 1.

Alternativ geht auch
Code:
[NRPN]
:4188:7 Pro3 Sequencer
[/NRPN]

Es gibt offenbar einen Midi Monitor am Hapax, da kannst Du dann sehen, was er sendet.
 
Es gibt offenbar einen Midi Monitor am Hapax, da kannst Du dann sehen, was er sendet.
Ja, aber der Monitor verschwindet, wenn ich in den anderen Modus für die Potis wechsle. Und wenn ich hinterher in den Miodi-Monitor wechsle, ist der Screen refresht, so dass man nicht sieht, was zuletzt gesendet wurde.

Mag sein, dass 0-63 als OFF und 64-127 als ON interpretiert wird. Je nachdem, was der Pro3 da sehen will.
Ich hatte den Poti auch ganz nach rechts gedreht auf 127. Außerdem steht im Manual, Value: 0-1 Play/Stop. Ich interpretiere das so, dass 0 startet und 1 stoppt. Theoretisch.

Alternativ geht auch
Code:
[NRPN]
:4188:7 Pro3 Sequencer
[/NRPN]
Das geht aber nur in der NRPN-Sektion und nicht in der ASSIGN-Sektion. Bei ASSIGN müssen MSB und LSB zwischen 0 und 127 sein (siehe Dokumentation), ansonsten Syntax Error. Ich find's seltsam, dass Squarp das so inkonsistent macht. Ist aber so, hab's ausprobiert.

Ich werd die Tage noch Mal probieren, ob es eventuell einen Versatz gibt. Beim Programm-Change ist es ja bei den Sequentials auch so, dass die Null Patch 1 aufruft, Eins Patch 2 usw.. Vielleicht muss ich ja hier auch einen weniger einstellen, also LSB 91 statt 92. Mal sehen.

Ich werd auch Mal andere NRPNs raussenden, nur um zu schauen, ob überhaupt irgendwas passiert beim Synthesizer. Ich weiß nun jedenfalls, dass ich das prinzipiell richtig verstanden habe, nur, warum es trotzdem nicht geht, bleibt weiterhin unklar. Es wäre schon cool irgendwie, die internen Sequenzen, die bei den Sequentials teils echt abgefahren sind, und sich beim Pro3 auch transportieren lassen, in den Ablauf vom Hapax mit einzubauen.
 
Zuletzt bearbeitet:
Du kannst ja mal Midi an einen Rechner schicken und dort einen Midi-Monitor laufen lassen. Dann weisst Du sicher, ob der Hapax korrekt sendet.
 
Hi Leute, ich bekomm's einfach nicht hin, egal, was ich versuche. Kann mir einer erklären, warum Sequential diese Funktion, also das Abspielen des internen Sequenzers, per NRPN realisiert (laut Manual) und nicht per CC? Gibt es dafür einen technischen Grund? Den Arpeggiator kann ich per CC starten, und das funzt auch. Laut Manual geht das zusätzlich auch noch per NRPN. Wozu dient hier die Doppelfunktion?

CC:

1681842162646.png

NRPN:

1681842177170.png

Wenn ich das Ganze besser verstehe, vielleicht komme ich dann von selber drauf, was ich falsch mache oder ob da irgendwo noch ein Parameter falsch gesetzt ist.
 
Zuletzt bearbeitet:
Hast Du NRPN Reception in den Globals aktiviert?
Laut Manual will der Pro3 immer LSB und MSB des Wertes haben, Du müsstest im Hapex also DEPTH 14.

Der Synth sendet die NRPN auch, wenn in den Globals eingestellt. Das kannst Du mit einem Midi Monitor aufnehmen und mit den vom Hapex gesendeten Daten vergleichen.

Grundsätzlich das mit NRPN mit einem anderen NRPN probieren, Noise Level z.B.
 
Hast Du NRPN Reception in den Globals aktiviert?
Welche Einstellung genau meinst du? Ich kenne MIDI Param Receive, und die steht auf NRPN. Gibt's da noch was anderes? Habe weder am Gerät noch im Handbuch was gefunden.
Laut Manual will der Pro3 immer LSB und MSB des Wertes haben, Du müsstest im Hapex also DEPTH 14.
Wie gesagt, 14 hatte ich auch probiert. Dann springt der Wert, wenn ich am Poti drehe, statt in Einser-Schritten in 64er oder 128er Schritten, jedenfalls bewirkt hatte es nichts. Ich werde aus dem Handbuch diesbezüglich ehrlich gesagt nicht schlau. Woraus genau schließt du, dass man die 14 nehmen muss?
 
Ich kenne MIDI Param Receive, und die steht auf NRPN.
Das ist dann OK, wenn man dem Handbuch glauben schenken darf.

Woraus genau schließt du, dass man die 14 nehmen muss?
Im Handbuch zum Pro3 steht, dass NRPN mit LSB und MSB erwartet wird. Laut Midi Specs (https://web.archive.org/web/20150407060239/http://www.philrees.co.uk/nrpnq.htm) ist das LSB Optional. Ich vermute nun, dass genau das der Unterschied zwischen DEPTH 7 und DEPTH 14 ist.

Wie gesagt. Schau dem Hapax mit einem Midi Monitor auf die Finger, dann erst siehst Du, was er genau sendet. Probiere es mit einem Tool wie MidiOX, mit dem Du auch genau definierte Byte-Folgen senden kannst. Unter der Annahme, dass der Pro3 keinen Bug an der Stelle hat, sendet der Hapax die NRPN nicht so, wie der Pro3 sie haben will (sonst würde es funktionieren).
 
Hi Leute, nützt ja nix. Ich habe mir eben dann doch mal die Mühe gemacht, die Geräte an einen PC mit MIDI-OX anzuschließen und zu checken, was die beim Abspielen des Sequenzers senden. Spoiler: Hapax macht alles richtig und Sequential alles falsch.

Der Rev2 nutzt laut Handbuch NRPN:1088 (MSB:8 LSB 64)
Tatsächlich sendet er aber NRPN:4188 (MSB:32 LSB 92)
Also Fehler im Handbuch.

Der Pro3 nutzt laut Handbuch NRPN:4188 (MSB:32 LSB 92)
Also genau das, was der Rev2 nutzt (siehe oben)
Tatsächlich sendet er aber ... nix!

Ich nehme an, da er nix sendet, kommt auch nix an. Hatte ich ja probiert. Dies hat übrigens jemand hier auch schon gemerkt: https://forum.sequential.com/index.php?topic=4996.0

Also wirklich, wieso testet bei so einer großen Firma nicht mal jemand die Midi-Funktionen durch? Und ob da Quatsch im Handbuch steht, scheint auch egal.

Falls es interessiert, hier noch die Messungen mit MIDI-OX. Und großes Dankeschön an alle hier im Forum für die freundliche Hilfestellung!

Rev2.jpg
Hapax_Rev2.jpg
Anmerkung: MIDI-OX arbeitet mit Hex-Werten. Also z.B. DATA2-Spalte 5c = 92. So ganz versteh ich nicht, was DATA1 soll, aber in DATA2 stehen scheinbar die MSB/LSB-Werte in Hex.
 
Zuletzt bearbeitet:
Was sendet der Hapax denn bei Depth14?
Habe ich nicht probiert, weil es, nachdem ich MSB/LSB gemäß Messung eingestellt hatte, beim Rev2 mit Depth7 auf Anhieb klappte. Mit 1 wird die Sequenz gestartet und mit 0 gestoppt. Beim Pro3 geht's nicht, weil Sequential offensichtlich vergessen hat, das zu implementieren. Was schade ist, weil gerade der Pro3 einen schönen Sequenzer hat mit vier 16 Step-Bars pro Patch. Wenn man per Midi den fernsteuern könnte, also Starten des Sequenzers und Auswahl der Bars, dann wär das schon praktisch. Gerade die hochpreisigen Hersteller wie Sequential finde ich müssten eine vollständige Midi-Implementierung gebacken kriegen und das Handbuch mal auf Fehler checken. Wenn wie beim TD-3 von Behringer und beim Korg Volca Bass die Midi-Implementierung vom Cutoff-Filter vergessen wurde, und das Handbuch aussieht wie bei einem Radiowecker vom Aldi, ist das zwar blöd, aber ist dafür halt auch Billig-Ware.
 
Zuletzt bearbeitet:
So ganz versteh ich nicht, was DATA1 soll, aber in DATA2 stehen scheinbar die MSB/LSB-Werte in Hex.
Zeit, mal die Midi Specs zu lesen :nihao:

Ein Control Change besteht aus einem Status Byte und zwei Daten Bytes
1011 nnnn 0ccc cccc 0vvv vvvv
B1 -> 1011 0001 / 177 (Control Change Kanal 01)
63 -> 0110 0011 / 99 (NRPN MSB)
08 -> 0000 1000 / 8 (Value)

Spoiler: Hapax macht alles richtig
Das mit dem halb gesendeten NRPN 7F 7F (127 x 127 = 16129) ohne Wert finde ich schräg. Wahrscheinlich will Hapax damit Probleme mit Running Status bei anderen Geräten vermeiden. Ist meiner Meinung aber nicht konform zum Standard.

Habe ich nicht probiert, weil es, nachdem ich MSB/LSB gemäß Messung eingestellt hatte, beim Rev2 mit Depth7 auf Anhieb klappte.
Offenbar versteht der Rev2 die Message auch, wenn nur das LSB des Wertes kommt, auch wenn das Handbuch suggeriert, dass man LSB und MSB senden muss, so wie es der Rev2 ja auch tut.
Wie auch immer, es klappt beim Rev2 (wenn die passenden Werte genommen werden) und beim Pro3 ist die Implementation fehlerhaft.

Also wirklich, wieso testet bei so einer großen Firma nicht mal jemand die Midi-Funktionen durch? Und ob da Quatsch im Handbuch steht, scheint auch egal.
Es mag getestet worden sein und auch der Fehler im Handbuch mag einem der Tester aufgefallen sein. Das heisst aber nicht zwingend, dass der Fehler auch gefixt wird. Entweder ein Problem im Projektmanagement oder der Entwickler ist schon beim nächten Feature oder Gerät gewesen. Sequential ist keine grosse Firma. Yamaha, Korg oder Roland passen da besser in das Raster.
 


News

Zurück
Oben