Question about Instr. MIDI Control device

hey everyone,

trying to write a script that will programatically change VSTi presets - i’m using Instr Midi Control device as a way to send program change messages to each VSTi.

my question: is there way to set the “Linked Instrument” property of the device programmatically? doesn’t seem to be one of the available DeviceParameters.

sh

No that is not supported in the Lua API, i would have liked that option very much to become an available feature myself, but for the hacks i wrote for the midi control device, there are now native solutions :).

is there a native way to do this in v3??

sh

The only part where the linked instument is done automatically is if you have it currently selected in the instruments list when you drop the device to the DSP rack.
There are no other means to change this option, neither natively or in Lua. (if you could have done it natively, there would definitely have been a LUA api call for that.)

ah i see - thanks for the help!

another script dream crushed!!

this thread did cause me to finally download the beta and explore a little though :)

sh

Here’s a hackaround for this:

thanks! i checked out the active_preset_data xml for the instr midi control device, and it doesn’t seem like the “linked instrument” is part of the data. am i missing something?

  
>>> print(renoise.song().tracks[1].devices[2].active_preset_data)  
<?xml version="1.0" encoding="UTF-8"?>  
<filterdevicepreset doc_version="10"><br>
  <deviceslot type="MidiControlDevice"><br>
    <ismaximized>true</ismaximized><br>
    <controllervalue0><br>
      <value>63.5</value><br>
    </controllervalue0><br>
    <controllernumber0>-1</controllernumber0><br>
    <controllername0>Untitled</controllername0><br>
    <controllertype0>PB</controllertype0><br>
    <controllervalue1><br>
      <value>127</value><br>
    </controllervalue1><br>
    <controllernumber1>-1</controllernumber1><br>
    <controllername1>Untitled</controllername1><br>
    <controllertype1>CP</controllertype1><br>
    <controllervalue2><br>
      <value>0.0</value><br>
    </controllervalue2><br>
    <controllernumber2>-1</controllernumber2><br>
    <controllername2>Untitled</controllername2><br>
    <controllertype2>CC</controllertype2><br>
    <controllervalue3><br>
    <br>
    ...<br>
<br>
<br>```

</controllervalue3></deviceslot></filterdevicepreset>