Hmmm ok thanks for the explanation. It sounds perfect for the shift function who is shaky at the moment…
Basically i use “message” variable from midi_callback function to make condition. Same for large FX with lot of parameters it could be very useful.
Open the door of a lot more complex configuration…
The code i use for the Scheduler was that :
Scheduler:add_task(self,self.send_sysex_message,delay,self,unpack(text_msg))
Last self and unpack(text_msg) are the arguments to pass to the send sysex message function. But i’m not sure that’s the way to use it…
send_sysex_message is your function pasted in my class and Scheduler+ScheduledTask are in my class too.
So from what i’ve understand the send_sysex_message will be call in x sec. with the arguments passed as 4th arguments to the add_task function… But i’m sure i missed something ^^
I’ve had a look at the UIButton Class who use it when i init the axiom class and see you’ve created a variable equal to Scheduler function in Display Class to use in UIButton class but i’m not sure to really understand what’s the interest to do that ?
I’ll have to look more carefully, i have soooo things to do for a good driver that i start something, then continue something else, etc, etc…
For the rest, little by little, when a function is done, i remove a lot of things and keep the minimum. The only function from Duplex i will keep in my code is the midi_callback cause i’ve changed little things but i’m sure a more skilled coder could find a way to use it as the others in order to make the code more easy to read and more light.
Maybe the sysex callback too but i haven’t done the function who need to receive sysex yet… (mode change for faders or encoders only)
For the Instr function, it’s all coding -> decoding a file and return that in result readable for duplex configuration file… more easy to say than to do and usable only with vsti were you could save a custom default midi mapping. But that’s enough !
DirectLink seem’s not so cool than M-Audio want to claim, i’ve seen a lot of users complaining about the lack of possibility, all is hardcoded and if something is not as the user would want to then he could do nothing. The Instr function is ok on internal instrument from DAW and seem a lot more buggy and unusable when using with vsti.
So finally i think the best way to use directlink is to code his own program. What a shame for M-Audio ^^
And without directlink there’s no bidirectionnal, no lights, no parameters name, 7 useless boutons… so the choice are limited.
I’ll do some more change and give you the files
(yeah i don’t want to give you a file full of tests, beginners errors etc ^^)
The goal is to do a driver everyone on Renoise could use i think… and maybe i made a mistake to not use the configurations files (or only for the easy thing like mixer vol etc) as it give the driver less flexibility…