sys-ex goeroe gezocht

SCD

Gearlust [on]
Lid sinds
16 november 2002
Berichten
1.941
:D

Iemand hier die de diepere spelonken van sys-ex beheerst?
 
Ligt er een beetje aan wat. Ik heb wel behoorlijk wat ervaring met de "whale-village" spelonken, maar als je samples / wavetables of dat soort ingewikkelde dingen wilt gaan versturen dan wordt het misschien wat lastig
 
Het probleem met sysex is natuurlijk dat het voor elke fabrikant weer anders is. Ik heb een tijdje geleden een Editor voor de A-station geschreven, alles met sysex aangestuurd. Was even doordenken soms maar het lukte wel. Toen wou ik hetzelfde doen voor de Alesis S4 maar dat heb ik snel opgegeven. Werkelijk onvoorstelbaar ingewikkeld, dat Alesis-sysex-gebrabbel.
 
geen goeroe, maar ik ga wel meelezen.
 
Het probleem met sysex is natuurlijk dat het voor elke fabrikant weer anders is. Ik heb een tijdje geleden een Editor voor de A-station geschreven, alles met sysex aangestuurd. Was even doordenken soms maar het lukte wel. Toen wou ik hetzelfde doen voor de Alesis S4 maar dat heb ik snel opgegeven. Werkelijk onvoorstelbaar ingewikkeld, dat Alesis-sysex-gebrabbel.

Dit lijkt mij een geschikte thread voor mijn vraag. Ik wil namelijk een programma schrijven welke van abl/rebirth pattern files sysex bestanden maakt voor de sequebcer van de fr-777/mobius. Heb je voor mij tips hoe ik het beste te werk kan gaan of is het een kwestie van trial-and-error?
 
Zelf heb ik eerst deze tutorial gelezen.
En daarna was het inderdaad wel veel proberen, mislukken en opnieuw proberen :)
 
OK, hier mijn vraag:

Voor de Waldorf Blofeld heb ik het sysex document en e.e.a. is me wel duidelijk op 1 ding na.
Ik wil het ding besturen met een Novation Zero SL. Dat kan op zich prima. Je kunt 12 bytes programmeren naar hartelust en ergens een zogenaamde DV value invoegen die de plek aangeeft waar je data value veranderd moet worden.

Voorbeeld:
Het wijzigen van de filter cutoff ziet er als string zo uit (de start- en eind byte vult de Novation zelf in):
3E 13 00 20 00 00 4E DV

3E = Waldorf
13 = Blofeld
00 = Device ID
20 = Sound Parameter Change
00 = Edit buffer
00 4E = twee bytes om in dit geval Filter 1 Cutoff aan te geven
DV = data value change bye

Dit werkt prima.

maar nu het probleem. Waldorf heeft in haar wijsheid besloten een aantal functies op te sluiten binnen 1 byte. Dit doen ze bij de arpeggiator steps.

Het indexnummer van bijvoorbeeld arpeggiator step 1 vertaald zich in de twee bytes 02 47.
De string wordt dan:
3E 13 00 20 00 02 47 DV
MAAR:
De byte wordt verdeeld in 8 bits volgens de volgende conventie"
0sssgaaa
Waarbij aaa staat voor 8 waardes waarmee je het accent van de step kunt veranderen, de g staat voor 2 waardes waarmee je de glide voor die step aan en uit kan zetten en de sss 8 waardes aangeeft voor de staat van de step (normal, pause, previous, first, last, first+last en chord).
Als ik door de 128 waardes heen loop op de Novation met de knop waaronder ik de string geprogrammeerd heb krijg je het volgende:
001 step 1 normal accent -3 glide off
002 step 1 normal accent -2 glide off
003 step 1 normal accent -1 glide off
004 step 1 normal accent 0 glide off
005 step 1 normal accent 1 glide off
006 step 1 normal accent 2 glide off
007 step 1 normal accent 3 glide off
008 step 1 normal accent 4 glide off
009 step 1 normal accent -3 glide on
010 step 1 normal accent -2 glide on
etc
017 step 1 pause accent -3 glide off
etc.

Maar ik wil die drie parameters niet met 1 knop bedienen maar, uiteraard, met 3!
Dus ik wil met een button glide kunnen aan en uitzetten voor stap 1
Met een andere button door de 8 step waardes kunnen stappen
En met een derde knop de 8 accent mogelijkheden kunnen willen instellen.

Kortom, ik wil binnen die ene byte met drie knoppen een van de drie parameters kunnen aanspreken, *zonder* de andere twee te beïnvloeden.

Is dat uberhaupt mogelijk?
 
Duidelijke sysex specs van de apparaat schelen ook.

:edit dit was voordat SCD zijn vraag stelde.

Nou snap ik de functies niet helemaal die jij beschrijft, maar ken de probleem van parameters die samengevoegd worden in 1 waarde. Als ik het goed herinner is het steeds een kwestie van bijv. 0, 16, 32, 48 op te tellen bij de parameter totaal waarde. Ik denk dat het lastig wordt met de Novation, maar is zeker mogelijk met software.

Ik zal nog een poging doen om dit uit te leggen...Je hebt (als voorbeeld) 16 verschillende instelmogelijkheden van een "step 1" die bepaald worden door de waarde 0-15. Als je 16 hierbij optelt heb je het over "step 2"(16-31), 32 erbij is dan "step 3" (32-47) De x*16 erbij wordt bepaald door de eerste waarden in jou geval de 0sss gedeelte.

Wat jij dus nodig hebt is dat de 2 (of 3)knoppen op de Novation invloed uitoefenen op 1 gezamelijke waarde, dus dat knop 1 x*16 optelt bij de waarde die je met knop 2 hebt ingesteld. Om dit nog ingewikkelder te maken moet bij het veranderen van knop 1, de waarde van knop 2 nog een keer verstuurd worden.
 
Laatst gewijzigd:
Duidelijke sysex specs van de apparaat schelen ook.

Wat wil je weten dan?

:edit dit was voordat SCD zijn vraag stelde.

Nou snap ik de functies niet helemaal die jij beschrijft, maar ken de probleem van parameters die samengevoegd worden in 1 waarde. Als ik het goed herinner is het steeds een kwestie van bijv. 0, 16, 32, 48 op te tellen bij de parameter totaal waarde. Ik denk dat het lastig wordt met de Novation, maar is zeker mogelijk met software.

't lijkt me toch vrij duidelijk:
3 bits beschrijven de stap functie (dus wat de stap moet doen) van die arpeggiator step: norma (normaal afspelen), pause (een rust op die plek), previouw (naar de voorgaande stap gaan) etc.
1 bit beschrijft glide aan of uit
en 3 bits geven je 8 verschillende accentwaardes voor een stap.

Probleem is alleen dat ze dus opgesloten zitten in een byte. Ik kan niet zo maar zeggen glide aan of uit, want binnen die byte zijn er 64 mogelijkheden waarbij de glide aan staat en 64 waarbij de glide uit staat.

Ik wil de glide gewoon aan en uit kunnen zetten, ongeacht de stand van de accent en ongeachte de waarde van de step functie.
 
nogmaals..ik antwoorde in eerste instantie op n303y zn vraag. Toen ik poste had jij inmiddels jouw vraag gesteld.

Ik heb ondertussen mijn vorige post verder ge-edit.
 
Boele...hoeveel stappen heeft het accent ?

Want als ik het zo snel zie dan is bit 4 ( decimaal 8) de glide
en Bit 5 (decimaal 16) is pause (als ie gezet is, anders normal)
Dan zouden bit 0-3 (decimaal 0-8) dus het accent moeten zijn.

Dus als je het voor elkaar kan krijgen om op die novation de waardes van drie buttons bij elkaar op te laten tellen dan kan je dus doen wat jij wilt...
 
Het komt er dus op neer hoe flexibel die novation is. Enige informatie daarover? Een pdf file ofzo?
 
Nogmaals m'n 'Sysex' truck melden,

Ik begin meestal met soundiver en SendSX (een midi monitor)
om te zien of die 't doet en welke data ie juiste verzend...
Daarna proberen te programeren, en kijken of't zelfde is...

Komt er dus op neer dat je dan niet in die sysex data sheets hoeft te bladeren...

Natuurl'k moet de driver er voor zijn,
maar er is ook nog unisyn en midi quest...
 
Ok, wat opgezocht. In onderstaande staat wat informatie uit de handleiding. Het lijkt erop dat datatype "DataPsn" het meest flexible is. Uitproberen zou ik zeggen.

If an encoder has DispType set to ‘0-16K’ then the options for DataType are as follows:

NONE: Sysex message does not contain a variable byte and a fixed message is sent every time the control is operated.

LSB-MSB: Sysex message contains two variable bytes which form an MSB and
LSB pair, allowing a 14-bit value to be
transmitted. The LSB precedes the MSB in the sysex message. The two bytes cannot be separated by non-variable
bytes but the position of the pair of bytes in the message can be edited.

MSB-LSB: This is the same as LSB-MSB except the MSB precedes the LSB in the sysex string.

ROLAND: Sysex message contains two variable bytes and one checksum byte. The format of the message is fixed such
that the last three bytes of the string are always MSB, then LSB and then checksum (excluding the F7 byte).

DataPsn (Data Position): This allows you to set the position of the variable data byte(s) in the sysex message. This value
will automatically be constrained by the Length setting. Note that if DataType is set to ROLAND then this value will be
fixed, as the format of ROLAND sysex messages cannot be edited.

To edit the value of each of the non-variable bytes in the sysex message scroll up to the sysex message page. All bytes
are displayed in hexadecimal format. By default the ReMOTE SL will place an F0h at the start and F7h at the end of the
message and set all other non-variable bytes to 00h. Variable bytes appear as ‘DV’ and a checksum byte will appear as ‘CS’
- these cannot be edited.

To edit a byte use the buttons or encoders in line with the ‘<<’ and ‘>>’ symbols to navigate the cursor to the desired byte
and then use the buttons, encoder or pot in line with ‘VALUE’ to set the value (range 00 to 7F). Scroll down after editing
the sysex message to return to the control settings.
 
Boele...hoeveel stappen heeft het accent ?

Want als ik het zo snel zie dan is bit 4 ( decimaal 8) de glide
en Bit 5 (decimaal 16) is pause (als ie gezet is, anders normal)
Dan zouden bit 0-3 (decimaal 0-8) dus het accent moeten zijn.

Dus als je het voor elkaar kan krijgen om op die novation de waardes van drie buttons bij elkaar op te laten tellen dan kan je dus doen wat jij wilt...

De sysex zegt letterlijk:
0sssgaaa
sss=0: normal
sss=1 pause
sss=2: previous
sss=3: first
sss=5: first+last
sss=6: chord
sss=7: random
g: glide on/off
aaa=0: silent
aaa>0: accent /4, /3, /2, /1, *1, *2, *3, *4

Maar dat optellen van die buttons, hoe doe je dat/
 
Tsja, ik weet zo niet wat een novation kan, maar dit zou volgens mij je setup moeten zijn:
eerste knop bepaalt je accent (range 0-7)
Tweede knop togglet tussen (waarde knop 1)+8 en (waarde knop 1 plus 0)
Derde knop varieert van (waarde knop 1)+0/16/32/48/64/80/96/112

Whale village had het makkelijker gemaakt door dit niet te combineren, da's in ieder geval duidelijk :-(

Edit: waarde knop 1 moet eigenlijk zijn "laatst verzonden waarde van knop 1, 2 of 3". Lastig!
 
pfff...Als jullie dit lukt ga ik ook zo'n novation kopen. Ik denk dat dit iets voor een software editor is die aan een midi CC knop hangt.
 
Ik ben zelf ook bezig geweest met de Remote SL en sysex.
Van de documentatie van de apparaten die ik wilde besturen werd ik vaak niet veel wijzer, temeer daar de materie totaal vreemd voor mij was.
Wat mij heeft geholpen is het programmaatje MidiOx.
Hiermee heb ik zo'n beetje alle sysex-informatie uit de betreffende apparaten en/of editors kunnen halen die ik wilde. Het voordeel is ook dat je meteen ziet of bepaalde parameters wel of niet aan te sturen zijn met de Remote.


groet

Tom
 
Dit is het betere bitneuken. :D
Maar gaat moeilijk zo niet onmogelijk worden om dit in een novation te proggen. Die kan niet met bitmaskers werken en 3 bits waardes zover ik weet van een x-station.
 
Ja, ook ik denk dat het niet kan, maar wist/weet het niet zeker.
Kijken wat de Blofeld uitstuurd bij het veranderen van een van de drie waardes is een goed idee (stuurt de Blofeld die sys-ex uit eigenlijk?). Ga ik vanavond eens proberen.
De heren van Waldorf zelf geven geen antwoord, dus die zijn waarschijnlijk druk bezig met een nieuw product :duivels:
 
Back
Top