MIDI-CCs bei Drawbars: Lin oder Log?

Rund um die "Clonewheels" HX3.1 bis HX3.4 (mk4) und HOAX 2

Moderator: happyfreddy

bovist
Site Admin
Beiträge: 475
Registriert: 6. Jul 2012, 14:28
Kontaktdaten:

MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von bovist »

Ich hätte da gern mal ein Problem.

Wie allg. bekannt, ist die Lautstärkeabstufung bei den B3-Zugriegeln ungefähr logarithmisch.

Senden die bekannten Zugriegel-Controller nun lineare Abstufungen oder logarithmische? D.h. wird bei halb gezogenem Zugriegel ein Wert von ungefähr 64 = 40 hex (das wäre linear) oder irgendetwas viel kleineres gesendet (also log.)? Mir scheint es so, dass hier geschlossen Uneinigkeit herrscht.

Klar ist definitiv, dass die Hammond-CC-Kodierung streng den Zahlen auf den Zugriegeln folgt (also lineare MIDI-Werte 0..8 ohne Abstufungen, die der Empfänger in logarithmische Stufen übersetzten muss). Doch wie halten es die anderen, die kontinuierliche Werte 0..127 senden?

Vielen Nutzern ist aufgefallen, dass die Nummern-Anzeige beim Expander nicht mit den Zahlen auf ihren Zugriegeln übereinstimmt.
happyfreddy
Beiträge: 2340
Registriert: 19. Jul 2012, 09:32
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von happyfreddy »

hi,
Denke das ist ein Riesenproblem allein schon mit der Frage woran man sich da halten soll
1) Die Urhammond zu der auch eine B 3 gehört hat einen MATCHING TRANSFORMER
also ein Trafo mit den Anzapfungen für die 8 Stufen der Zugriegel
2) Ab der T Serie waren diese Zugriegel mit Widerstandsarrays bestückt da in diesen Orgeln der Matching Transformer fehlte
Diese Widerstandsarrays sind jedoch von Orgelmodell zu Orgelmodell obendrein dann auch noch verschieden im Wert.

Bin mir sicher daß bereits zwischen diesen beiden Varianten 1) und 2) ein Unterschied besteht.
Beiden jedoch gemeinsam daß es hier nur diese 8 Stufen gibt und keine Zwischenstufen ( sofern keine Smooth ZR verbaut )
Beiden gemeinsam ebenfalls, daß hier echte Tonfrequenzen geregelt wurden und keine Spannungen.

Im Zuge der Heimorgeln kamen in Anlehnung an das "Ratsche Geräusch" besagte Zugriegel mit dieser Geräuschkulisse heraus
Diese Potis gab es früher in allen möglichen Werten und auch in Lin und Log Kennlinie.
Mit diesen Potis war es natürlich auch möglich Zwischenwerte die eine Hammond nicht kennt zu produzieren.
Hinzu kommt jetzt noch die Toleranz dieser Potis.
Ich habe mal spaßeshalber vorhandene Potis von Wersi mit 2k2 Widerstand durchgemessen bei gleicher mechanischer Einstellung.
Die Werte die mit dem Ohmmeter abzulesen sind haben eine Bandbreite zwischen um die 20 % was schon fast eine ganze " Zahlenstufe" ausmacht

Übrig geblieben sind heute nur noch Potis mit 10K Wert - genau die die beim HX 3 auch benutzt werden

Wenn jetzt x beliebige Hersteller Zugriegelartige Schieber verwenden oder gar Zugriegelpotis wie beschrieben wissen wir nicht welcher Wert und welche Kennlinie dort verbaut ist. Bekanntlich kocht hier jeder Hersteller sein eigenes Süppchen

Beim HX 3 werden die Zugriegelpotis auch alle parallel geschaltet womit sich auch in jeder Konfiguration ein anderer Gesamtwiderstand ergibt.
Genauso wird es jedoch auch in anderen Keyboards sein wo dann die Spannungen für ein CC Set umgerechnet werden.

Ich denke wir sollten es bei den eigenen verwendeten Zugriegeltypen belassen und die Werte dann dem angezeigten Displaybalken einigermaßen anpassen. Zudem ist es auch immer eine Frage des Ablesens des Zahlenwerte wobei hier schonmal beim Ratsche Zugriegel ein oder gar zwei "Kugelpunkte" des Ratschemechanismus Unterschied sein können.
Ich würde vorschlagen den Pegelwechsel / Spannungswechsel auf eine Fangsequenz pro X - Zahlenwert von - 0,25 <--- X WERT ---> + 0,25 festzulegen. Damit erfassen wir auch den bei Smooth Hammond Zugriegeln möglichen 0,5 Wert zwischen den vollen Stufen. Bei solch einer Skalierung dürfte es doch eher wahrscheinlich sein auch ungewöhnliche CC Sets mit zu erfassen
bovist
Site Admin
Beiträge: 475
Registriert: 6. Jul 2012, 14:28
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von bovist »

Darum geht es gar nicht. Es gibt keine Alternative zu den linearen Zugriegeln am Markt. Die Frage ist, was mit empfangenen MIDI-Zugriegelwerten geschehen soll.

Bedeutet [A] ein empfangener Wert von 64 = Zugriegel auf 4 (halb raus, Hälfte von 127) = Pegel auf -15 dB nach log. Matching-Trafo-Anzapfung oder bedeutet er stattdessen Pegel auf Hälfte = -6 dB? Ich meine inzwischen, dass überwiegend [A] verwendet wird, kann mich aber auch täuschen.

Ggf. müsste man dann einen Schalter-Parameter einführen, der bestimmt, ob die Werte logarithmiert werden oder eben nicht.

Ich habe testweise eine mk3-Firmware #3.812 erstellt, die geht nach [A] vor:

Empfangene MIDI-Controller und linear gestufte Zugriegel-Analogeingänge werden für die Display-Anzeige durch 7,95 geteilt und ganzzahlig abgerundet. Es ergibt sich eine Folge von 0..8 bei Eingangswerten von 0..127.

Gleichzeitig werden die Eingangswerten 0..127 für die Busbar-Pegel-Multiplizierer im FPGA logarithmiert. Es ergibt sich wieder eine Folge von 0..127, aber diesmal mit "Hängebauch" (siehe Bild, dunkle Kurve. Die Hammond-Lautstärkeabstufungen sind hellblau, gelb ist linear).

drawbarcurve1.png
(19.01 KiB) 1451-mal heruntergeladen
m_g
Beiträge: 248
Registriert: 25. Sep 2013, 16:48
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von m_g »

Moin Carsten,

als ich noch ne Hammond-Suzuki als Midi-Master hatte ist mir das nicht aufgefallen, da scheint das Mapping 1:1 gewesen zu sein.

Allerdings habe ich an meinem Midi-Controller (NI4-CC set) ähnliches Phänomen wie von
Dave beschrieben. Es sind deine Zugriegel verbaut, ich denke daher linear ausgelegt, wenn ich alles richtig verstanden habe.
D.h. die 1 ist kaum zu treffen, bei 2 oder 3 am Zugriegel ist man dann schon auf 5 im Display...

Ich bekomm die Tage noch nen neuen Nord Electro 5D, den werd ich auch mal an den Expander hängen und
schauen was passiert. Beim Stage passt das Mapping auch nicht 1:1, vermutlich aufgrund er Drawbar-Tasten(-Abstufung).

Ich teste das morgen mal mit der 3.812....

Wie dem auch sei, ich denke eine LIN/LOG Umschaltung (per Häkchen im Remote ?)
wäre sicher nicht verkehrt.

Gruss
Markus
dvmwest
Beiträge: 57
Registriert: 12. Aug 2013, 13:47
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von dvmwest »

Hallo,
ich denke wie habe es hier mir 2 Kurven zu tun, die Original B3 hat die Stufen 0..8.
Zum einen muss man diese neun Stufen zum Ausgang hin abbilden, das müsste natürlich der B3 entsprechen.
Auf der anderen Seite muss die Eingangsspannung der Zugriegel in die entsprechenden Stufen umgerechnet werden.
Ich währe dafür für jede der Stufe einen wert von 0..100% parametrierbar zu machen. Dan könnte man jeden
Zugriegel-Satz, ohne zu löten, anschliessen. Vorraussetzung ist natürlich das genug Platz im Chip ist.
Vermeiden sollte man natülich das nach einer Firmwareänderung gelötet und gemessen werden muss.

Michael
happyfreddy
Beiträge: 2340
Registriert: 19. Jul 2012, 09:32
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von happyfreddy »

Hi
Also gelbe Linie scheidet wohl von vornherein aus
Hellblau und Violett stimmen im Wert 5 überein
Ab diesem Wert hat die matching kurve eine größere Steigung während bei kleineren Werten mit der matching Lösung
leisere Einstellungen umgesetzt werden können.
Die interessanten Zugriegeleinstellungen befinden sich jedoch ausnahmlos in " leisem Zumischen" von Fußlagen, dh der kritische Bereich liegt zwischen 0 und 5. Der Pegel der Stufe 1 muß in jedem Fall schon einen Ton hörbar machen
Ich halte daher einen Kompromiß zwischen Violett und hellblau für angebracht zumindest was Einstellungen kleiner als 5 betrifft.
Daß wiederum geht dann schon eher in Log Kurven Richtung

Bezüglich CC Sets haben wir das Problem die "Umrechnungskurve" der verschiedenen Hersteller nicht oder nur kaum zu kennen.
Selbst wenn man hier eine Mittelwertkurve abbildet kann es sein daß dieser Wert mit keinem in der HX3 Tabelle korrespondiert
Der kritischte Bereich dürfte auch hier von 0 - 5 liegen.
Wirklich weiterhelfen kann hier zunächst nur eine Liste der CC Werte von gängigen Midicontrollern für die Einstellungen 0 - 8.
Die wäre dann abzuklopfen auf den "Fangbereich" von - bis um hier einen definierten Wert zuweisen zu können
m_g
Beiträge: 248
Registriert: 25. Sep 2013, 16:48
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von m_g »

OK, habs nun doch gleich heut probiert:
MK4 Board in Expander angestuert über Midi, CCset NI4
FW 3.812

Jetzt passt die Zuordnung ZR-Wert und Display !!!
sowohl bei rausziehen und reinschieben.

Prima, danke, passt!
;-)

Percussion/Preset Bug ebenfalls erledigt,
jetzt lass ich erstmal die Finger weg!

Sobald der neue Nord Electro 5 mit Drawbars bei mir eintrifft,
probier ich dort das Verhalten ebenfalls

Grüssle
Markus
m_g
Beiträge: 248
Registriert: 25. Sep 2013, 16:48
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von m_g »

Ok, gestern kam der Nord Electro 5D bei mir an.
Hab ihn gleich mal an den Expander geklemmt (3.812) und das
"Default Custom CC Set" angewählt (das basiert ja auf der Nord C2).

Die Drawfader funktionieren soweit, die Skalierung korrespondiert.
Die Button Zuordnung für die CV und Perc passt auch perfekt.
Einzig die Lesie Steuerung muss per Remote angepasst werden,
ein Blick in die Handbücher (Midi Implementation) verrät, dass NE und C2 unterschiedlich
ausgelegt wurden diesbzgl., aber das ist flugs erledigt mit der Remote Software.

So weit so gut, lässt sich doch gut an mit der neuen Anpassung.
Dankeschön Carsten.

Gruss
Markus
.Jens
Beiträge: 80
Registriert: 20. Okt 2014, 16:46
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von .Jens »

Unabhängig davon, wie die verschiedenen Hersteller ihre Potis intern verschalten / welche Kennlinie diese haben - und auch unabhängig davon, wie dann wiederum eine bestimmte nominelle Zugriegelstellung im HX3 umgesetzt wird: rein Midi-seitig ist mir noch nie etwas anderes untergekommen als eine lineare Umsetzung der Zugriegelstellungen in Midi-CC-Werte, also 0, 16, 32, 48...
Das ist bei allen anderen Midi-CCs bei den meisten Keyboards auch so - egal, welches Poti verbaut ist. Ein Volume-Poti mit Midi-Übersetzung liefert bei halber mechanischer Stellung (egal ob Linear- oder Drehpoti) Midi-Values von ca. 64 - auch wenn dann der Klangerzeuger intern meistens aus diesen Midi-Werten eine Log-Kennlinie erzeugen wird.
Das ist auch sinnvoll, dass die Midi-CCs einen Poti-Stellweg linear bezüglich seines mechanischen Stellweges abbildet: Die ja durchaus recht grobe Unterteilung in 127 Stufen würde sonst an einem Ende des Regelbereiches zu deutlich hörbaren Sprüngen führen (z. B. bei Filtern an VA-Synths).
happyfreddy
Beiträge: 2340
Registriert: 19. Jul 2012, 09:32
Kontaktdaten:

Re: MIDI-CCs bei Drawbars: Lin oder Log?

Beitrag von happyfreddy »

@jens
Im Grunde hat man zwei Probleme
a) Datenstruktur der MIdI Bytes mit dem maximalen Wert 127 für die Parameter
b) Bitbreite / Auflösung der AD Wandler

Aufgrund der Datenstruktur ist es nachzuvollziehen, daß hier nur eine lineare Funktion greifen kann.
Natürlich könnte man hier mittels Bankbefehlen mit MSB / LSB eine feinere Unterteilung vornehmen
was jedoch der Übertragungsgeschwindigkeit gerade bei schnellen Wechseln der Parameter entgegenläuft.
Folglich bleibt man bei dem MIDI Standard angefangen mit der Baudrate 31250 und demzufolge auch mit dem
bekannten Datenformat sowie dem Wertebereich 0 ... 127. Damit ist es auch klar daß hier der Wert 64 einem 50%tigen
Wert des Stellwiderstandes entspricht.
Rein technisch gesehen würde eine Verdopplung der Baudrate sicher bessere Ergebnisse liefern nur was das wiederum heißt kann
sich jeder ausmalen. Folglich läßt man es........

Der zweite Aspekt sicher einfacher durchzuführen diese maximal 127 Werte einer Auflösung der AD Wandler zuzuordnen.
Hier sind dann auch genügend Recourcen vorhanden eine lin / log Charakteristik einzuarbeiten
Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 54 Gäste