Behringer Wave SysEx - PPG vs Behringer Wave (mit Excel etc) vergleichen

Sollte man dem Import/Konverter-Thema nicht mal einen eigenen Thread gönnen und das hier auskoppeln? Das wird hier doch etwas unübersichtlich, finde ich. Und wer dann vielleicht erst in ein paar Monaten einen Wave bekommt und sich hier im Thread schlau lesen will, wird dann mit 200 Seiten oder so erschlagen. 😅
 
Glaube da hatte Herrmann eine andere Denkweise oder Verschachtelung. Kein Dezimalwert im File von @Cello übersteigt die 15. Dann "klabüstert" die 8.3 die beim speichern und zurückladen irgendwie anders auf.
So scheint es zu sein. Ich habe nach Envelope-Entsprechungen gesucht und bisher keine Sequenz finden können, die der im B-Wave (original oder dividiert) entspricht. Also werde ich mit anderen Multiplikatoren weitersuchen.
 
Die anderen Multiplikatoren bringen nichts.

Ok, also sind im PPG-File nur Bytes bis 0F gespeichert, also immer nur die unteren vier Bit in einem Byte. Ich müsste also jeweils zwei Byte zu einem zusammenbasteln und es dann nochmal versuchen. Also aus der Folge 03 0B würde 3B.
 
Eine Idee wäre noch, dass die Werte byteübergreifend bitweise gespeichert sind. Also z.B. die ersten sechs Bit für Attack, die nächsten sechs Bit für Decay. Dabei stören mich die ausgenullten oberen vier Bit aber wieder. Das zu entschlüsseln wird jedenfalls nicht so einfach, falls es überhaupt machbar ist.
 
Zuletzt bearbeitet:
Im Netz hab ich das hier gefunden, hänge ich mal an, vielleicht hilft es, ist aber für das 6.x OS.

Es gibt diverse Methoden, wenn man mehr als 8 Bits über 7Bit übertragen will. Hierzu empfehle ich die Lektüre des Sounddiver Programming Manual, Download auf deepsonic.ch. Ich kann aber auch, wenn dieser Teil eh ausgelagert wird, versuchen, den entsprechenden Abschnitt hier reinzuposten.

Bei 16Bit CPUs wurde gerne Nibble L/H bzw HL verwendet, also die 8 Bits in 2 4Bit Pakete aufgeteilt, Signifikanz je nach CPU-Hersteller, Strichwort litte/big Endian. Dann gibts noch die Packed-Formate, die zB Sequential heute noch nutzt.
 

Anhänge

  • PPG Wave Sysex.txt
    2,7 KB · Aufrufe: 12
Zuletzt bearbeitet:
Im Netz hab ich das hier gefunden, hänge ich mal an, vielleicht hilft es, ist aber für das 6.x OS.
...
Das war nur SysEx um einige Parameter fernzusteuern. Aber nicht für ganze Sound-Dumps oder Bänke. V6 war die letzte PPG Firmware. Funktionierte nur mit einem MIDI Interface ab Werk oder baugleich.
 
40 Jahre später sind wir alle schlauer.
Wenn der B-Wave 90-95% am Klang des PPGs ist, will ich das Original gar nicht haben :).
Bei Sysex ist der B einfach mehr im „Jetzt“. Für den PPG braucht man ja regelrecht ein Informatik-Studium.
 
Hier mal ein bissl was zu Übertragungsformaten, Screenshots aus dem SoundDiver Programming Manual:

Außerdem mal den Abschnitt zum Thema Reihenfolge bei den Nibbles:

»big endian« vs. »little endian«
Besides a correct transmission format, there might be another hurdle to clear over for an easy parameter access in a dump. It stems from the fact that there are different view of how to arrange the bits of a 16-bit
word in computer memory. As is well known, a word needs two bytes in memory. Each of the bytes is accessible by an address.
In so-called »big endian« machines (including the Motorola 680x0 CPU’s and thus Atari ST/TT, Apple Macintosh, and Amiga), the bits 15 to 8 of a word are arranged in address n, and bits 7 to 0 are at address n+1 (therefore the name: the number’s »end« is located at the »bigger« address).
In »little endian« machines, it’s the other way around. Little endian machines are all Intel 80x86 processors, and thus all »industry standard« PCs.

Im PPG Wave steckt eine Motorola CPU, daher gilt: Big Endian ist die Reihenfolge der Wahl.
 

Anhänge

  • IMG_7548.jpeg
    IMG_7548.jpeg
    352,8 KB · Aufrufe: 6
  • IMG_7547.jpeg
    IMG_7547.jpeg
    862,1 KB · Aufrufe: 6
Zuletzt bearbeitet:
Ich habe nun die V8.3 Anleitung vor mir liegen.

Das höherwertige Nibble wird hier (PPG) zuerst gesendet. Die Prüfsumme wird nicht berücksichtigt. Sie ist auch zwei SysEx Bytes lang und (natürlich) direkt vor dem xF7.

Man kann einzelne PPG wave Klänge mittels dem Request xF0 x29 x01 x43 x0B x05 xF7 absenden lassen. "x0B" für System ID = 0, Bei ID 1 = x1B wählen vgl. Bem. 1)

Für PPG 2.3er (ob das auch für den 2.3er im 2.2er Modus gilt?) aber zuerst die Transfer Bank auswählen (hier Bank 0):
xF0
x29
x01
x43
x00 Bem. 1)
x14
x00
x00
x00
x00
xF7

Die Antwort soll 200 Bytes lang sein:
xF0
x29
x01
x44
data -> An Stelle 161 von data (von 0 der data an gezählt) wird die Zielbank eingestellt. Hier x00 nehmen, da dieses beim 2.2er die einzige Bank ist und beim 2.3er die erste Bank im Kombimodus ist.
x00 -> 1. Byte der nicht genutzte Prüfsumme
x00 -> 2. Byte der nicht genutzte Prüfsumme
xF7

Zum Senden der soeben empfangenen Daten dann:
xF0
x29
x01
x43
x03 -> System ID = 0, Bei ID 1 = x13 wählen vgl. Bem. 1)
x05
data -> An Stelle 161 von data (von 0 der data an gezählt) wird die Zielbank eingestellt. Hier x00 nehmen, da dieses beim 2.2er die einzige Bank ist und beim 2.3er die erste Bank im Kombimodus ist.
x00 -> 1. Byte der nicht genutzte Prüfsumme
x00 -> 2. Byte der nicht genutzte Prüfsumme
xF7

Bem 1):
Das „x00“ ist die Standard ID für einen PPG wave 2.2/2.3 in einem PPG System. Ggf. also mit x01 abschicken, wenn man die andere ID mittels EPROMS gesetzt hat.

Edit:
Angehängt das "Set Transfer Bank 0 for ID 0" SysEx und das "Get Program Data for ID 0" Request Sysex.

@admin
Wer kann das hier zu PPG und Behringer SysEx bitte in einen extra Thread verschieben? Danke!
 

Anhänge

  • Set_Transfer_Bank_0_for_ID_0.syx
    11 Bytes · Aufrufe: 0
  • Get_Program_Data_for_ID_0.syx
    7 Bytes · Aufrufe: 0
Zuletzt bearbeitet:
Ich habe nun die V8.3 Anleitung vor mir liegen.

Das höherwertige Nibble wird hier (PPG) zuerst gesendet. Die Prüfsumme wird nicht berücksichtigt. Sie ist auch zwei SysEx Bytes lang und (natürlich) direkt vor dem xF7.

Man kann einzelne PPG wave Klänge mittels dem Request xF0 x29 x01 x43 x0B x05 xF7 absenden lassen. "x0B" für System ID = 0, Bei ID 1 = x1B wählen vgl. Bem. 1)

Für PPG 2.3er (ob das auch für den 2.3er im 2.2er Modus gilt?) aber zuerst die Transfer Bank auswählen (hier Bank 0):
xF0
x29
x01
x43
x00 Bem. 1)
x14
x00
x00
x00
x00
xF7

Die Antwort soll 200 Bytes lang sein:
xF0
x29
x01
x44
data -> An Stelle 161 von data (von 0 der data an gezählt) wird die Zielbank eingestellt. Hier x00 nehmen, da dieses beim 2.2er die einzige Bank ist und beim 2.3er die erste Bank im Kombimodus ist.
x00 -> 1. Byte der nicht genutzte Prüfsumme
x00 -> 2. Byte der nicht genutzte Prüfsumme
xF7

Zum Senden der soeben empfangenen Daten dann:
xF0
x29
x01
x43
x03 -> System ID = 0, Bei ID 1 = x13 wählen vgl. Bem. 1)
x05
data -> An Stelle 161 von data (von 0 der data an gezählt) wird die Zielbank eingestellt. Hier x00 nehmen, da dieses beim 2.2er die einzige Bank ist und beim 2.3er die erste Bank im Kombimodus ist.
x00 -> 1. Byte der nicht genutzte Prüfsumme
x00 -> 2. Byte der nicht genutzte Prüfsumme
xF7

Bem 1):
Das „x00“ ist die Standard ID für einen PPG wave 2.2/2.3 in einem PPG System. Ggf. also mit x01 abschicken, wenn man die andere ID mittels EPROMS gesetzt hat.

Edit:
Angehängt das "Set Transfer Bank 0 for ID 0" SysEx und das "Get Program Data for ID 0" Request Sysex.

@admin
Wer kann das hier zu PPG und Behringer SysEx bitte in einen extra Thread verschieben? Danke!
Danke 🙏🏻 wie mache ich das mit dem Patch request? DAW auf einer Spur senden und die Andere Recording?
 
DAW auf einer Spur senden und die Andere Recording?
Nein. Sysex hat in einer DAW erstens nichts verloren (alleine schon wegen möglicher falscher Tempoeimstellung) und zweitens kann auch nicht jede DAW Sysex.

Tools: SendSX, MIDI Ox (Windows), Sysex Librarian (Mac), MIOS Studio (beide). Am Mac kann man nur bei MIOS Studio Sysexdaten direkt eingeben (Sysex Fenster, oben senden und unten vorher auf Empfangen stellen, wird nach Stop angezeigt, Schnittstelle im Hauptfenster einstellen).
Bei Sysex Librarian müßte man sich vorher per Hexeditor eine syx-Datei mit dem Request erstellen, um diese senden zu können. Früher hab ich für sowas mal MIDIA (Atari) und später Hearmaster (Nachfolger, Mac/Windows) verwendet.
 
Nein. Sysex hat in einer DAW erstens nichts verloren (alleine schon wegen möglicher falscher Tempoeimstellung) und zweitens kann auch nicht jede DAW Sysex.

Tools: SendSX, MIDI Ox (Windows), Sysex Librarian (Mac), MIOS Studio (beide). Am Mac kann man nur bei MIOS Studio Sysexdaten direkt eingeben (Sysex Fenster, oben senden und unten vorher auf Empfangen stellen, wird nach Stop angezeigt, Schnittstelle im Hauptfenster einstellen).
Bei Sysex Librarian müßte man sich vorher per Hexeditor eine syx-Datei mit dem Request erstellen, um diese senden zu können. Früher hab ich für sowas mal MIDIA (Atari) und später Hearmaster (Nachfolger, Mac/Windows) verwendet.
ISS mir zu kompliziert, sorry
 
Danke an @Moderation für das Auslagern des Sysex-Teils

Eine Frage an die Mac-Fraktion:

Könnt ihr die Excel Datei mit den VBA Makros innerhalb MacOS nutzen?
(Also nicht nur als statistische Tabelle)
 
...
Eine Frage an die Mac-Fraktion:

Könnt ihr die Excel Datei mit den VBA Makros innerhalb MacOS nutzen?
(Also nicht nur als statistische Tabelle)
Aus gutem Grund habe ich hier kein original Excel. Ich nehme LibreOffice (Open Source).
Aber wenn eine Methode gefunden ist aus dem einen SysEx ein anderes zu machen, so kann ich einen Konverter für den Mac programmieren. Ich verwende dazu Xojo.
 
Mist, bei mir klappt das nicht wie in der Anleitung beschrieben und hier gestern gepostet.

edit:
Mein PPG wave 2.3 ist per EPROM auf PPG System ID 1.

Hier die Sysex Dateien für diese ID:
 

Anhänge

  • Get_Program_Data_for_ID_1.syx
    7 Bytes · Aufrufe: 0
  • Set_Transfer_Bank_0_for_ID_1.syx
    11 Bytes · Aufrufe: 0
Zuletzt bearbeitet:
Hier zwei empfangene einzelne Sounds. Zum Senden an einen PPG muss man die Dateien allerdings vorne ändern. Und dabei auch ggf. die PPG System ID ändern (meiner ist ja auf 1; normal ist 0).
 

Anhänge

  • PPG TK Prg 30.syx
    211 Bytes · Aufrufe: 1
  • PPG TK Prg 01.syx
    211 Bytes · Aufrufe: 1
Ist vielleicht für das Mapping der Parameter hilfreich. Mangels Hardware kann ich's nicht prüfen.

Hello Mr. Haydn,

Thank you for returning my email regarding the PPG SYSEX.
Included in this email is some PPG MIDI information from the Antarctica PPG
website, but I found a person who has actually made a new V7 software
Revision for the PPG Wave 2.3. I will contact him, give him your details,
and hopefully he will get in touch with you. From what I hear is that this
person really knows the PPG inside and out.
Thanks again for replying.

Sincerely,

Mike Johnson
Venice,CA.
USA

[PPG]

MIDI Implementation

------------------------------------------------------------------------

PPG MIDI System Exclusive Data-

PPG Sys-ex messages are received by the following software versions:
Wave 2.2 synthesizer.........version 6.0
Wave 2.3 synthesizer.........version 6.0
EVU expander............version 3.0

Parameter change is received in the following format:
11110000 Status Byte F0 (hex)
0iiiiiii PPG I.D. number 29 (hex)
0sssnnnn Substatus (s=2) Channel number (n=0 - 15)
0mmmmm00 Model (m=1) Parameter bit 7,8 (p=00)
0ppppppp Parameter bit 0 - 6 (p=0 - 30)
0ddddddd Parameter value data (d=0 - 127)
11110111 End Of Exclusive F7 (hex)

List of PPG voice parameters:

1 = LFO Rate
2 = Wave Select Main Osc
3 = Filter Cutoff
4 = Envelope 1 Att. VCF
5 = Envelope 2 Att. Wave-Select
6 = VCF Emphasis
7 = Envelope 2 Att. Loudness
8 = Attack Env. 1
9 = Attack Env. 2
10 = Decay Env. 1
11 = Decay Env. 2
12 = Sustain Env. 1
13 = Sustain Env. 2
14 = Release Env. 1
15 = Release Env. 2
16 = LFO Delat Tine
17 = Attack Env. 3
18 = LFO Wave-Shape
19 = Release Env. 3
20 = Mod. Wheel
21 = Envelope 3 Att.
22 = Wave Select Sub. Osc.

30 = Sound Bank Select
(selects one of the eight sound banks also sets loading bank)

Here is an example of the sys-ex message to vary filter cutoff:
HEX: DEC:
F0 240
29 41
20 32
03 3
03 3
variable (00-7F) variable (0-127)
F7 247

Have a look at the PPG Editor for Emagic's Logic and Logic Audio
sequencing software to see sys-ex messages in action.

------------------------------------------------------------------------

Software changes Wave 2.3 Version 5.4...(newest version= 6.0)
Software changes EVU Version 2.2........(newest version= 3.0)

This documentation describes only the changes which have been made
after Version 5.1! It contains some MIDI changes as well as changes
for the PRK and EVU communication.

MIDI changes:
1. MONO MODE now: 17 = receive channels 1 - 8
18 = receive channels 9 - 16

2. Mod wheel and other controllers are received channel selective
in MONO mode.

3. Program change is now done in Wave 2.3 Mode. In Poly Mode the
program change is done in the last selected bank; in Mono Mode
the program change is done in the Bank defined by the MIDI channel.

4. The following controllers now will be received:
FUNCTION CONTROLLER NUMBER
MOD WHEEL # 1
WAVES # 2
FILTER CUTOFF # 4
LOUDNESS # 7
RELEASE TIME # 8
SUSTAIN SWITCH # 64, 66, 67
ALL NOTE OFF # 123, 125, 126, 127
POLY MODE # 127
MONO MODE # 125

MIDI = 0 disables all MIDI activities.

PPG now has a registered MIDI ID number: 29 HEX

Other Changes:
1. The Velocity select which is set by the PRK FD in 8 steps
for 8 parameters is now adjustable in finer steps.

2. Wavetables are loaded and stored in all Banks in Wave 2.3 mode.

3. Editing of EVU's in the Waveterm system is now possible in
all banks. (Especially tuning and Digital display.)

----------

Quelle: https://sounddiver-users.yahoogroups.narkive.com/KBhheL2c/ppg-sysex
 
Ist vielleicht für das Mapping der Parameter hilfreich. Mangels Hardware kann ich's nicht prüfen.
Vielen Dank für das Mitsuchen.
Das hatten wir bereits hier.
Das ist für die letzte PPG Version V6. Und damals konnte man keine Sounds per Sysex senden oder empfangen, sondern lediglich einige Parameter. Er mit dem post-PPG V8.x gab es zum ersten Mal eine Möglichkeit, ganze Sound Bänke zu senden oder zu empfangen. Mit V8.3 kann man wie ich hier grade zum ersten Mal ausprobiere über Umwege einzelne Sounds empfangen (und wahrscheinlich nach leichten Änderungen im Sysex auch wieder senden). Ich nutze dafür eine eigentlich für ein per MIDI angeschlossene Waveterm C Software verwendete Sysex Dokumentation. Da wird aber nicht auf den eigentlichen Inhalt der Sound-Daten eingegangen. Parameter sind da auf zwei Sysex Bytes verteilt.
 
Ich gebe auf!

Ich habe einen Sound mit SEMIT 12 für Group A & B und eine Version des selben Sounds aber mit Group A SEMIT auf 0, 1, 2, 3, 4, 5, 6, 7 und in Group B auf SEMIT 12, 13, 14, 15, 16, 17, 18, 19.
Beide Dateien habe ich nebeneinander, jeweils eine Zeile pro Byte.
Und ich finde zwar geänderte Zeilen (und die geänderten zwei Bytes der Prüfsumme), aber keine zwei Bytes zusammen ergeben die SEMIT Einstellungen. Im unveränderte Fall sehe ich auch kein Muster für die 8 gleichen Werte der SEMIT. Und auch kein zu erwartendes aufsteigendes Muster in jedem zweiten Byte beim zweiten Fall.
Außerdem ist der Datenteil entgegen der Beschreibung in der V8.3 Anleitung offenbar statt 200 tatsächlich 204 Bytes lang. Da stochere ich in trüben Matsch.

Angehängt die beiden Sysex Dateien mit dem unterschiedlichen SEMIT Einstellungen.
 

Anhänge

  • PPG TK Prg 30 a-0-7 b-12-18.syx
    211 Bytes · Aufrufe: 1
  • PPG TK Prg 30.syx
    211 Bytes · Aufrufe: 1


News

Zurück
Oben