Studio One 7.2

Audio Plugin Hosts and other audio software applications discussion
Post Reply New Topic
RELATED
PRODUCTS
Fender Studio Pro

Post

SLiC wrote: Mon Aug 18, 2025 8:51 am Why does S1 get so little support from 3rd party hardware developers, is it something about the software?
It's a lack of support from Presonus, not NI
"Guys, the update clearly said studio one is not supported at launch, yet you still decided to update. They have told us they don't have time to work on this yet, but hope to in the future."

Post

Fornicras wrote: Mon Aug 18, 2025 1:54 pm
danielh02 wrote: Mon Aug 18, 2025 1:51 pm
stanft wrote: Mon Aug 18, 2025 12:12 pm
SLiC wrote: Mon Aug 18, 2025 8:51 am A little OT but weird that the NI MK3 keyboards now fully support Logic, Live, Cubase and Bitwig ..but no S1. Why does S1 get so little support from 3rd party hardware developers, is it something about the software?
Btw. this also applies to the current Arturia controllers. All major DAWs are supported ... except Studio One.
Same for Novation LaunchKeys. Excellent support in Logic, Live, Bitwig. Radio silence for S1.
I have Launchkey Mini MK4 and everything works in S1?
Keylab 88 MK2 also works okay on S1, don't know about the new ones.
Studio One has an XML languaje to program controllers. I've customized some: Akai APC/MPK, Korg nanos, Behringer BCR2000 and the last one: M-vave SMC (a really cheap surface running Mackie HUI protocol, you can buy 4 for the price of a cheap Novation controller)

The code: (it's easily adaptable to other Mixer surfaces... <?xml version="1.0" encoding="utf-8"?>
<ControlSurface>
<!-- ******************************************************************************************** -->
<!-- CONTROL DEFINITIONS -->
<!-- ******************************************************************************************** -->
<Controls>
<!-- ******************************************************************************************** -->
<!-- Faders -->
<!-- ******************************************************************************************** -->

<Control name="fader[0]" type="fader" options="public transmit receive"> <MidiMessage status="#E0" channel="0"/> </Control>
<Control name="fader[1]" type="fader" options="public transmit receive"> <MidiMessage status="#E0" channel="1"/> </Control>
<Control name="fader[2]" type="fader" options="public transmit receive"> <MidiMessage status="#E0" channel="2"/> </Control>
<Control name="fader[3]" type="fader" options="public transmit receive"> <MidiMessage status="#E0" channel="3"/> </Control>
<Control name="fader[4]" type="fader" options="public transmit receive"> <MidiMessage status="#E0" channel="4"/> </Control>
<Control name="fader[5]" type="fader" options="public transmit receive"> <MidiMessage status="#E0" channel="5"/> </Control>
<Control name="fader[6]" type="fader" options="public transmit receive"> <MidiMessage status="#E0" channel="6"/> </Control>
<Control name="fader[7]" type="fader" options="public transmit receive"> <MidiMessage status="#E0" channel="7"/> </Control>

<Control name="faderTouch[0]" type="trigger" options="receive"> <MidiMessage status="#90" address="#68"/> </Control>
<Control name="faderTouch[1]" type="trigger" options="receive"> <MidiMessage status="#90" address="#69"/> </Control>
<Control name="faderTouch[2]" type="trigger" options="receive"> <MidiMessage status="#90" address="#6A"/> </Control>
<Control name="faderTouch[3]" type="trigger" options="receive"> <MidiMessage status="#90" address="#6B"/> </Control>
<Control name="faderTouch[4]" type="trigger" options="receive"> <MidiMessage status="#90" address="#6C"/> </Control>
<Control name="faderTouch[5]" type="trigger" options="receive"> <MidiMessage status="#90" address="#6D"/> </Control>
<Control name="faderTouch[6]" type="trigger" options="receive"> <MidiMessage status="#90" address="#6E"/> </Control>
<Control name="faderTouch[7]" type="trigger" options="receive"> <MidiMessage status="#90" address="#6F"/> </Control>


<!-- ******************************************************************************************** -->
<!-- Buttons + LEDs -->
<!-- ******************************************************************************************** -->

<!-- Record Ready -->
<Control name="recordButton[0]" type="trigger" options="receive"> <MidiMessage status="#90" address="#00"/> </Control>
<Control name="recordButton[1]" type="trigger" options="receive"> <MidiMessage status="#90" address="#01"/> </Control>
<Control name="recordButton[2]" type="trigger" options="receive"> <MidiMessage status="#90" address="#02"/> </Control>
<Control name="recordButton[3]" type="trigger" options="receive"> <MidiMessage status="#90" address="#03"/> </Control>
<Control name="recordButton[4]" type="trigger" options="receive"> <MidiMessage status="#90" address="#04"/> </Control>
<Control name="recordButton[5]" type="trigger" options="receive"> <MidiMessage status="#90" address="#05"/> </Control>
<Control name="recordButton[6]" type="trigger" options="receive"> <MidiMessage status="#90" address="#06"/> </Control>
<Control name="recordButton[7]" type="trigger" options="receive"> <MidiMessage status="#90" address="#07"/> </Control>

<Control name="recordLED[0]" options="transmit"> <MidiMessage status="#90" address="#00"/> </Control>
<Control name="recordLED[1]" options="transmit"> <MidiMessage status="#90" address="#01"/> </Control>
<Control name="recordLED[2]" options="transmit"> <MidiMessage status="#90" address="#02"/> </Control>
<Control name="recordLED[3]" options="transmit"> <MidiMessage status="#90" address="#03"/> </Control>
<Control name="recordLED[4]" options="transmit"> <MidiMessage status="#90" address="#04"/> </Control>
<Control name="recordLED[5]" options="transmit"> <MidiMessage status="#90" address="#05"/> </Control>
<Control name="recordLED[6]" options="transmit"> <MidiMessage status="#90" address="#06"/> </Control>
<Control name="recordLED[7]" options="transmit"> <MidiMessage status="#90" address="#07"/> </Control>

<!-- Solo -->
<Control name="soloButton[0]" type="trigger" options="receive"> <MidiMessage status="#90" address="#08"/> </Control>
<Control name="soloButton[1]" type="trigger" options="receive"> <MidiMessage status="#90" address="#09"/> </Control>
<Control name="soloButton[2]" type="trigger" options="receive"> <MidiMessage status="#90" address="#0A"/> </Control>
<Control name="soloButton[3]" type="trigger" options="receive"> <MidiMessage status="#90" address="#0B"/> </Control>
<Control name="soloButton[4]" type="trigger" options="receive"> <MidiMessage status="#90" address="#0C"/> </Control>
<Control name="soloButton[5]" type="trigger" options="receive"> <MidiMessage status="#90" address="#0D"/> </Control>
<Control name="soloButton[6]" type="trigger" options="receive"> <MidiMessage status="#90" address="#0E"/> </Control>
<Control name="soloButton[7]" type="trigger" options="receive"> <MidiMessage status="#90" address="#0F"/> </Control>

<Control name="soloLED[0]" options="transmit"> <MidiMessage status="#90" address="#08"/> </Control>
<Control name="soloLED[1]" options="transmit"> <MidiMessage status="#90" address="#09"/> </Control>
<Control name="soloLED[2]" options="transmit"> <MidiMessage status="#90" address="#0A"/> </Control>
<Control name="soloLED[3]" options="transmit"> <MidiMessage status="#90" address="#0B"/> </Control>
<Control name="soloLED[4]" options="transmit"> <MidiMessage status="#90" address="#0C"/> </Control>
<Control name="soloLED[5]" options="transmit"> <MidiMessage status="#90" address="#0D"/> </Control>
<Control name="soloLED[6]" options="transmit"> <MidiMessage status="#90" address="#0E"/> </Control>
<Control name="soloLED[7]" options="transmit"> <MidiMessage status="#90" address="#0F"/> </Control>

<!-- Mute -->
<Control name="muteButton[0]" type="trigger" options="receive"> <MidiMessage status="#90" address="#10"/> </Control>
<Control name="muteButton[1]" type="trigger" options="receive"> <MidiMessage status="#90" address="#11"/> </Control>
<Control name="muteButton[2]" type="trigger" options="receive"> <MidiMessage status="#90" address="#12"/> </Control>
<Control name="muteButton[3]" type="trigger" options="receive"> <MidiMessage status="#90" address="#13"/> </Control>
<Control name="muteButton[4]" type="trigger" options="receive"> <MidiMessage status="#90" address="#14"/> </Control>
<Control name="muteButton[5]" type="trigger" options="receive"> <MidiMessage status="#90" address="#15"/> </Control>
<Control name="muteButton[6]" type="trigger" options="receive"> <MidiMessage status="#90" address="#16"/> </Control>
<Control name="muteButton[7]" type="trigger" options="receive"> <MidiMessage status="#90" address="#17"/> </Control>

<Control name="muteLED[0]" options="transmit"> <MidiMessage status="#90" address="#10"/> </Control>
<Control name="muteLED[1]" options="transmit"> <MidiMessage status="#90" address="#11"/> </Control>
<Control name="muteLED[2]" options="transmit"> <MidiMessage status="#90" address="#12"/> </Control>
<Control name="muteLED[3]" options="transmit"> <MidiMessage status="#90" address="#13"/> </Control>
<Control name="muteLED[4]" options="transmit"> <MidiMessage status="#90" address="#14"/> </Control>
<Control name="muteLED[5]" options="transmit"> <MidiMessage status="#90" address="#15"/> </Control>
<Control name="muteLED[6]" options="transmit"> <MidiMessage status="#90" address="#16"/> </Control>
<Control name="muteLED[7]" options="transmit"> <MidiMessage status="#90" address="#17"/> </Control>

<!-- Select -->
<Control name="selectButton[0]" type="trigger" options="receive"> <MidiMessage status="#90" address="#18"/> </Control>
<Control name="selectButton[1]" type="trigger" options="receive"> <MidiMessage status="#90" address="#19"/> </Control>
<Control name="selectButton[2]" type="trigger" options="receive"> <MidiMessage status="#90" address="#1A"/> </Control>
<Control name="selectButton[3]" type="trigger" options="receive"> <MidiMessage status="#90" address="#1B"/> </Control>
<Control name="selectButton[4]" type="trigger" options="receive"> <MidiMessage status="#90" address="#1C"/> </Control>
<Control name="selectButton[5]" type="trigger" options="receive"> <MidiMessage status="#90" address="#1D"/> </Control>
<Control name="selectButton[6]" type="trigger" options="receive"> <MidiMessage status="#90" address="#1E"/> </Control>
<Control name="selectButton[7]" type="trigger" options="receive"> <MidiMessage status="#90" address="#1F"/> </Control>

<Control name="selectLED[0]" options="transmit"> <MidiMessage status="#90" address="#18"/> </Control>
<Control name="selectLED[1]" options="transmit"> <MidiMessage status="#90" address="#19"/> </Control>
<Control name="selectLED[2]" options="transmit"> <MidiMessage status="#90" address="#1A"/> </Control>
<Control name="selectLED[3]" options="transmit"> <MidiMessage status="#90" address="#1B"/> </Control>
<Control name="selectLED[4]" options="transmit"> <MidiMessage status="#90" address="#1C"/> </Control>
<Control name="selectLED[5]" options="transmit"> <MidiMessage status="#90" address="#1D"/> </Control>
<Control name="selectLED[6]" options="transmit"> <MidiMessage status="#90" address="#1E"/> </Control>
<Control name="selectLED[7]" options="transmit"> <MidiMessage status="#90" address="#1F"/> </Control>


<!-- ******************************************************************************************** -->
<!-- V-Pots -->
<!-- ******************************************************************************************** -->

<Control name="vpot[0]" title="V-Pot 1" type="relative" options="receive public"/>
<Control name="vpot[1]" title="V-Pot 2" type="relative" options="receive public"/>
<Control name="vpot[2]" title="V-Pot 3" type="relative" options="receive public"/>
<Control name="vpot[3]" title="V-Pot 4" type="relative" options="receive public"/>
<Control name="vpot[4]" title="V-Pot 5" type="relative" options="receive public"/>
<Control name="vpot[5]" title="V-Pot 6" type="relative" options="receive public"/>
<Control name="vpot[6]" title="V-Pot 7" type="relative" options="receive public"/>
<Control name="vpot[7]" title="V-Pot 8" type="relative" options="receive public"/>

<!-- V-Select -->
<Control name="vpotSelect[0]" type="trigger" options="receive"> <MidiMessage status="#90" address="#20"/> </Control>
<Control name="vpotSelect[1]" type="trigger" options="receive"> <MidiMessage status="#90" address="#21"/> </Control>
<Control name="vpotSelect[2]" type="trigger" options="receive"> <MidiMessage status="#90" address="#22"/> </Control>
<Control name="vpotSelect[3]" type="trigger" options="receive"> <MidiMessage status="#90" address="#23"/> </Control>
<Control name="vpotSelect[4]" type="trigger" options="receive"> <MidiMessage status="#90" address="#24"/> </Control>
<Control name="vpotSelect[5]" type="trigger" options="receive"> <MidiMessage status="#90" address="#25"/> </Control>
<Control name="vpotSelect[6]" type="trigger" options="receive"> <MidiMessage status="#90" address="#26"/> </Control>
<Control name="vpotSelect[7]" type="trigger" options="receive"> <MidiMessage status="#90" address="#27"/> </Control>
<!-- ******************************************************************************************** -->
<!-- Buttons + LEDs -->
<!-- ******************************************************************************************** -->

<!-- Fader Banks -->
<Control name="faderBankLeft" type="trigger" options="receive"> <MidiMessage status="#90" address="#2E"/> </Control>
<Control name="faderBankRight" type="trigger" options="receive"> <MidiMessage status="#90" address="#2F"/> </Control>
<Control name="faderChanLeft" type="trigger" options="receive"> <MidiMessage status="#90" address="#30"/> </Control>
<Control name="faderChanRight" type="trigger" options="receive"> <MidiMessage status="#90" address="#31"/> </Control>

<!-- F1 - F8 -->
<Control name="F1" title="F1" type="trigger" options="receive public"> <MidiMessage status="#90" address="#36"/> </Control>
<Control name="F2" title="F2" type="trigger" options="receive public"> <MidiMessage status="#90" address="#37"/> </Control>
<Control name="F3" title="F3" type="trigger" options="receive public"> <MidiMessage status="#90" address="#38"/> </Control>
<Control name="F4" title="F4" type="trigger" options="receive public"> <MidiMessage status="#90" address="#39"/> </Control>
<Control name="F5" title="F5" type="trigger" options="receive public"> <MidiMessage status="#90" address="#3A"/> </Control>
<Control name="F6" title="F6" type="trigger" options="receive public"> <MidiMessage status="#90" address="#3B"/> </Control>
<Control name="F7" title="F7" type="trigger" options="receive public"> <MidiMessage status="#90" address="#3C"/> </Control>
<Control name="F8" title="F8" type="trigger" options="receive public"> <MidiMessage status="#90" address="#3D"/> </Control>

<!-- Transport -->
<Control name="markerButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#54"/> </Control>
<Control name="nudgeButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#55"/> </Control>
<Control name="cycleButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#56"/> </Control>
<Control name="dropButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#57"/> </Control>
<Control name="replaceButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#58"/> </Control>
<Control name="clickButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#59"/> </Control>
<Control name="soloButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#5A"/> </Control>

<Control name="markerLED" options="transmit"> <MidiMessage status="#90" address="#54"/> </Control>
<Control name="nudgeLED" options="transmit"> <MidiMessage status="#90" address="#55"/> </Control>
<Control name="cycleLED" options="transmit"> <MidiMessage status="#90" address="#56"/> </Control>
<Control name="dropLED" options="transmit"> <MidiMessage status="#90" address="#57"/> </Control>
<Control name="replaceLED" options="transmit"> <MidiMessage status="#90" address="#58"/> </Control>
<Control name="clickLED" options="transmit"> <MidiMessage status="#90" address="#59"/> </Control>
<Control name="soloLED" options="transmit"> <MidiMessage status="#90" address="#5A"/> </Control>

<Control name="rewindButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#5B"/> </Control>
<Control name="ffButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#5C"/> </Control>
<Control name="stopButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#5D"/> </Control>
<Control name="playButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#5E"/> </Control>
<Control name="recordButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#5F"/> </Control>

<Control name="rewindLED" options="transmit"> <MidiMessage status="#90" address="#5B"/> </Control>
<Control name="ffLED" options="transmit"> <MidiMessage status="#90" address="#5C"/> </Control>
<Control name="stopLED" options="transmit"> <MidiMessage status="#90" address="#5D"/> </Control>
<Control name="playLED" options="transmit"> <MidiMessage status="#90" address="#5E"/> </Control>
<Control name="recordLED" options="transmit"> <MidiMessage status="#90" address="#5F"/> </Control>

<!-- Navigation -->
<Control name="upButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#60"/> </Control>
<Control name="downButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#61"/> </Control>
<Control name="leftButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#62"/> </Control>
<Control name="rightButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#63"/> </Control>
<Control name="zoomButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#64"/> </Control>
<Control name="scrubButton" type="trigger" options="receive"> <MidiMessage status="#90" address="#65"/> </Control>

<Control name="zoomLED" options="transmit"> <MidiMessage status="#90" address="#64"/> </Control>
<Control name="scrubLED" options="transmit"> <MidiMessage status="#90" address="#65"/> </Control>

<!-- Display LEDs -->
<Control name="smpteLED" options="transmit"> <MidiMessage status="#90" address="#71"/> </Control>
<Control name="beatsLED" options="transmit"> <MidiMessage status="#90" address="#72"/> </Control>
<Control name="rudesoloLED" options="transmit"> <MidiMessage status="#90" address="#73"/> </Control>

</Controls>

<!-- ******************************************************************************************** -->
<!-- TEMPLATE DEFINITIONS -->
<!-- ******************************************************************************************** -->

<Templates>

<!-- ******************************************************************************************** -->
<!-- Plug-in Controls -->
<!-- ******************************************************************************************** -->

<Template name="PlugControlMapping">
<foreach variable="$ch" count="8">
<Strip name="vpot[$ch]" onConnect="onConnectPlugControl($ch)"/>
<Strip name="fader[$ch]" onConnect="onConnectPlugControl($ch)"/>
</foreach>
</Template>

<!-- ******************************************************************************************** -->
<!-- Channel strips connected to alias parameters -->
<!-- ******************************************************************************************** -->

<Template name="ChannelStripAliasMapping">
<foreach variable="$ch" count="8">
<Value control="fader[$ch]" param="faderValue$ch"/>
<Touch control="faderTouch[$ch]" param="faderValue$ch"/>
<Relative control="vpot[$ch]" param="potValue$ch"/>
<Value control="ledRing[$ch]" param="potValue$ch"/>
<DefaultValue control="vpotSelect[$ch]" param="potValue$ch"/>

</foreach>
</Template>

<!-- ******************************************************************************************** -->
<!-- 8 Channel Strips -->
<!-- ******************************************************************************************** -->

<Template name="AllChannelStrips">
<foreach variable="$ch" count="8">
<Strip onConnect="onConnectChannel($ch)">
<!-- Inserts + Sends (used for script interaction) -->
<Bank target="Inserts" name="InsertsBankElement">
<foreach variable="$insertIndex" count="8">
<Strip onConnect="onConnectChannelInsert($ch,$insertIndex)"/>
</foreach>
</Bank>
<Bank target="Sends" name="SendsBankElement">
<foreach variable="$sendIndex" count="8">
<Strip onConnect="onConnectChannelSend($ch,$sendIndex)"/>
</foreach>
</Bank>

<!-- Note: faders + vpots are connected to alias parameters -->
<!-- xxxx -->
<Value control="fader[$ch]" param="volume"/>
<Touch control="faderTouch[$ch]" param="volume"/>
<Relative control="vpot[$ch]" param="pan"/>
<DefaultValue control="vpotSelect[$ch]" param="pan"/>
<!-- xxxx -->
<Toggle control="recordButton[$ch]" param="recordArmed"/>
<Value control="recordLED[$ch]" param="recordArmed"/>

<Toggle control="soloButton[$ch]" param="solo" options="momentary"/>
<Value control="soloLED[$ch]" param="solo"/>

<Toggle control="muteButton[$ch]" param="mute" options="momentary"/>
<Value control="muteLED[$ch]" param="mute"/>

<Toggle control="selectButton[$ch]" param="selected"/>
<Command control="selectButton[$ch]" command.category="Console" command.name="Show Instrument Editor"/>
<Value control="selectLED[$ch]" param="selected"/>

<Value control="stereo[$ch]" param="stereo"/>
<Value control="meter[$ch][0]" param="level1"/>
<Value control="meter[$ch][1]" param="level2"/>
</Strip>
</foreach>
</Template>
</Templates>


<Mappings>


<!-- ******************************************************************************************** -->
<!-- MIXER MAPPING -->
<!-- ******************************************************************************************** -->

<DeviceMapping device="MixerConsole" name="MixerMapping">
<!-- 8 Channel Strips -->
<PlacementBank target="RemoteBank" pagesize="8" name="ChannelBankElement">

<include template="AllChannelStrips"/>

<!-- Bank Scroll Buttons -->

<Variant control="optionButton">
<!-- [option] not pressed -->
<Group>
<ScrollButton control="faderChanLeft" direction="stepleft"/>
<ScrollButton control="faderChanRight" direction="stepright"/>
<ScrollButton control="faderBankLeft" direction="pageleft"/>
<ScrollButton control="faderBankRight" direction="pageright"/>
</Group>
<!-- [option] pressed -->
<Group>
<Command control="faderChanLeft" command.category="Presets" command.name="Previous"/>
<Command control="faderChanRight" command.category="Presets" command.name="Next"/>
<Command control="faderBankLeft" command.category="Devices" command.name="Previous Device in Rack"/>
<Command control="faderBankRight" command.category="Devices" command.name="Next Device in Rack"/>
</Group>
</Variant>

</PlacementBank>
<Toggle control="soloButton" param="anySolo"/>
<Value control="soloLED" param="anySolo"/>
<Value control="rudesoloLED" param="anySolo"/>
</DeviceMapping>

<!-- ******************************************************************************************** -->
<!-- TRANSPORT MAPPING -->
<!-- ******************************************************************************************** -->

<DeviceMapping device="TransportPanel">
<!-- <Toggle control="cycleButton" param="loop"/> -->
<Command control="cycleButton" command.category="Transport" command.name="Toggle Loop"/>
<Value control="cycleLED" param="loop"/>

<!-- <Toggle control="dropButton" param="punch"/> -->
<Command control="dropButton" command.category="Transport" command.name="Autopunch"/>
<Value control="dropLED" param="punch"/>

<!-- <Toggle control="playButton" param="start"/> -->
<Command control="playButton" command.category="Transport" command.name="Start"/>
<Value control="playLED" param="start"/>

<!-- <Toggle control="stopButton" param="stop"/> -->
<Command control="stopButton" command.category="Transport" command.name="Stop"/>
<Value control="stopLED" param="stop"/>

<Value control="recordLED" param="record"/>
<Value control="ffLED" param="fastForward"/>
<Value control="rewindLED" param="rewind"/>

<Variant control="markerButton" options="lock" statusled="markerLED">
<!-- [marker] not on-->
<Group>

<Touch control="ffButton" param="fastForward"/>
<Touch control="rewindButton" param="rewind"/>
<Toggle control="recordButton" param="record"/>

</Group>

<!-- [marker] on -->
<Group>

<Command control="recordButton" command.category="Marker" command.name="Insert"/>
<Command control="rewindButton" command.category="Marker" command.name="Goto Previous Marker"/>
<Command control="ffButton" command.category="Marker" command.name="Goto Next Marker"/>

</Group>
</Variant>

</DeviceMapping>

</Mappings>
</ControlSurface>

Post

A repost of that XML:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<ControlSurface>
  <!-- ******************************************************************************************** -->
  <!-- CONTROL DEFINITIONS -->
  <!-- ******************************************************************************************** -->
  <Controls>
    <!-- ******************************************************************************************** -->
    <!-- Faders -->
    <!-- ******************************************************************************************** -->

    <Control name="fader[0]" type="fader" options="public transmit receive"><MidiMessage status="#E0" channel="0"/></Control>
    <Control name="fader[1]" type="fader" options="public transmit receive"><MidiMessage status="#E0" channel="1"/></Control>
    <Control name="fader[2]" type="fader" options="public transmit receive"><MidiMessage status="#E0" channel="2"/></Control>
    <Control name="fader[3]" type="fader" options="public transmit receive"><MidiMessage status="#E0" channel="3"/></Control>
    <Control name="fader[4]" type="fader" options="public transmit receive"><MidiMessage status="#E0" channel="4"/></Control>
    <Control name="fader[5]" type="fader" options="public transmit receive"><MidiMessage status="#E0" channel="5"/></Control>
    <Control name="fader[6]" type="fader" options="public transmit receive"><MidiMessage status="#E0" channel="6"/></Control>
    <Control name="fader[7]" type="fader" options="public transmit receive"><MidiMessage status="#E0" channel="7"/></Control>

    <Control name="faderTouch[0]" type="trigger" options="receive"><MidiMessage status="#90" address="#68"/></Control>
    <Control name="faderTouch[1]" type="trigger" options="receive"><MidiMessage status="#90" address="#69"/></Control>
    <Control name="faderTouch[2]" type="trigger" options="receive"><MidiMessage status="#90" address="#6A"/></Control>
    <Control name="faderTouch[3]" type="trigger" options="receive"><MidiMessage status="#90" address="#6B"/></Control>
    <Control name="faderTouch[4]" type="trigger" options="receive"><MidiMessage status="#90" address="#6C"/></Control>
    <Control name="faderTouch[5]" type="trigger" options="receive"><MidiMessage status="#90" address="#6D"/></Control>
    <Control name="faderTouch[6]" type="trigger" options="receive"><MidiMessage status="#90" address="#6E"/></Control>
    <Control name="faderTouch[7]" type="trigger" options="receive"><MidiMessage status="#90" address="#6F"/></Control>


    <!-- ******************************************************************************************** -->
    <!-- Buttons + LEDs -->
    <!-- ******************************************************************************************** -->

    <!-- Record Ready -->
    <Control name="recordButton[0]" type="trigger" options="receive"><MidiMessage status="#90" address="#00"/></Control>
    <Control name="recordButton[1]" type="trigger" options="receive"><MidiMessage status="#90" address="#01"/></Control>
    <Control name="recordButton[2]" type="trigger" options="receive"><MidiMessage status="#90" address="#02"/></Control>
    <Control name="recordButton[3]" type="trigger" options="receive"><MidiMessage status="#90" address="#03"/></Control>
    <Control name="recordButton[4]" type="trigger" options="receive"><MidiMessage status="#90" address="#04"/></Control>
    <Control name="recordButton[5]" type="trigger" options="receive"><MidiMessage status="#90" address="#05"/></Control>
    <Control name="recordButton[6]" type="trigger" options="receive"><MidiMessage status="#90" address="#06"/></Control>
    <Control name="recordButton[7]" type="trigger" options="receive"><MidiMessage status="#90" address="#07"/></Control>

    <Control name="recordLED[0]" options="transmit"><MidiMessage status="#90" address="#00"/></Control>
    <Control name="recordLED[1]" options="transmit"><MidiMessage status="#90" address="#01"/></Control>
    <Control name="recordLED[2]" options="transmit"><MidiMessage status="#90" address="#02"/></Control>
    <Control name="recordLED[3]" options="transmit"><MidiMessage status="#90" address="#03"/></Control>
    <Control name="recordLED[4]" options="transmit"><MidiMessage status="#90" address="#04"/></Control>
    <Control name="recordLED[5]" options="transmit"><MidiMessage status="#90" address="#05"/></Control>
    <Control name="recordLED[6]" options="transmit"><MidiMessage status="#90" address="#06"/></Control>
    <Control name="recordLED[7]" options="transmit"><MidiMessage status="#90" address="#07"/></Control>

    <!-- Solo -->
    <Control name="soloButton[0]" type="trigger" options="receive"><MidiMessage status="#90" address="#08"/></Control>
    <Control name="soloButton[1]" type="trigger" options="receive"><MidiMessage status="#90" address="#09"/></Control>
    <Control name="soloButton[2]" type="trigger" options="receive"><MidiMessage status="#90" address="#0A"/></Control>
    <Control name="soloButton[3]" type="trigger" options="receive"><MidiMessage status="#90" address="#0B"/></Control>
    <Control name="soloButton[4]" type="trigger" options="receive"><MidiMessage status="#90" address="#0C"/></Control>
    <Control name="soloButton[5]" type="trigger" options="receive"><MidiMessage status="#90" address="#0D"/></Control>
    <Control name="soloButton[6]" type="trigger" options="receive"><MidiMessage status="#90" address="#0E"/></Control>
    <Control name="soloButton[7]" type="trigger" options="receive"><MidiMessage status="#90" address="#0F"/></Control>

    <Control name="soloLED[0]" options="transmit"><MidiMessage status="#90" address="#08"/></Control>
    <Control name="soloLED[1]" options="transmit"><MidiMessage status="#90" address="#09"/></Control>
    <Control name="soloLED[2]" options="transmit"><MidiMessage status="#90" address="#0A"/></Control>
    <Control name="soloLED[3]" options="transmit"><MidiMessage status="#90" address="#0B"/></Control>
    <Control name="soloLED[4]" options="transmit"><MidiMessage status="#90" address="#0C"/></Control>
    <Control name="soloLED[5]" options="transmit"><MidiMessage status="#90" address="#0D"/></Control>
    <Control name="soloLED[6]" options="transmit"><MidiMessage status="#90" address="#0E"/></Control>
    <Control name="soloLED[7]" options="transmit"><MidiMessage status="#90" address="#0F"/></Control>

    <!-- Mute -->
    <Control name="muteButton[0]" type="trigger" options="receive"><MidiMessage status="#90" address="#10"/></Control>
    <Control name="muteButton[1]" type="trigger" options="receive"><MidiMessage status="#90" address="#11"/></Control>
    <Control name="muteButton[2]" type="trigger" options="receive"><MidiMessage status="#90" address="#12"/></Control>
    <Control name="muteButton[3]" type="trigger" options="receive"><MidiMessage status="#90" address="#13"/></Control>
    <Control name="muteButton[4]" type="trigger" options="receive"><MidiMessage status="#90" address="#14"/></Control>
    <Control name="muteButton[5]" type="trigger" options="receive"><MidiMessage status="#90" address="#15"/></Control>
    <Control name="muteButton[6]" type="trigger" options="receive"><MidiMessage status="#90" address="#16"/></Control>
    <Control name="muteButton[7]" type="trigger" options="receive"><MidiMessage status="#90" address="#17"/></Control>

    <Control name="muteLED[0]" options="transmit"><MidiMessage status="#90" address="#10"/></Control>
    <Control name="muteLED[1]" options="transmit"><MidiMessage status="#90" address="#11"/></Control>
    <Control name="muteLED[2]" options="transmit"><MidiMessage status="#90" address="#12"/></Control>
    <Control name="muteLED[3]" options="transmit"><MidiMessage status="#90" address="#13"/></Control>
    <Control name="muteLED[4]" options="transmit"><MidiMessage status="#90" address="#14"/></Control>
    <Control name="muteLED[5]" options="transmit"><MidiMessage status="#90" address="#15"/></Control>
    <Control name="muteLED[6]" options="transmit"><MidiMessage status="#90" address="#16"/></Control>
    <Control name="muteLED[7]" options="transmit"><MidiMessage status="#90" address="#17"/></Control>

    <!-- Select -->
    <Control name="selectButton[0]" type="trigger" options="receive"><MidiMessage status="#90" address="#18"/></Control>
    <Control name="selectButton[1]" type="trigger" options="receive"><MidiMessage status="#90" address="#19"/></Control>
    <Control name="selectButton[2]" type="trigger" options="receive"><MidiMessage status="#90" address="#1A"/></Control>
    <Control name="selectButton[3]" type="trigger" options="receive"><MidiMessage status="#90" address="#1B"/></Control>
    <Control name="selectButton[4]" type="trigger" options="receive"><MidiMessage status="#90" address="#1C"/></Control>
    <Control name="selectButton[5]" type="trigger" options="receive"><MidiMessage status="#90" address="#1D"/></Control>
    <Control name="selectButton[6]" type="trigger" options="receive"><MidiMessage status="#90" address="#1E"/></Control>
    <Control name="selectButton[7]" type="trigger" options="receive"><MidiMessage status="#90" address="#1F"/></Control>

    <Control name="selectLED[0]" options="transmit"><MidiMessage status="#90" address="#18"/></Control>
    <Control name="selectLED[1]" options="transmit"><MidiMessage status="#90" address="#19"/></Control>
    <Control name="selectLED[2]" options="transmit"><MidiMessage status="#90" address="#1A"/></Control>
    <Control name="selectLED[3]" options="transmit"><MidiMessage status="#90" address="#1B"/></Control>
    <Control name="selectLED[4]" options="transmit"><MidiMessage status="#90" address="#1C"/></Control>
    <Control name="selectLED[5]" options="transmit"><MidiMessage status="#90" address="#1D"/></Control>
    <Control name="selectLED[6]" options="transmit"><MidiMessage status="#90" address="#1E"/></Control>
    <Control name="selectLED[7]" options="transmit"><MidiMessage status="#90" address="#1F"/></Control>


    <!-- ******************************************************************************************** -->
    <!-- V-Pots -->
    <!-- ******************************************************************************************** -->

    <Control name="vpot[0]" title="V-Pot 1" type="relative" options="receive public"/>
    <Control name="vpot[1]" title="V-Pot 2" type="relative" options="receive public"/>
    <Control name="vpot[2]" title="V-Pot 3" type="relative" options="receive public"/>
    <Control name="vpot[3]" title="V-Pot 4" type="relative" options="receive public"/>
    <Control name="vpot[4]" title="V-Pot 5" type="relative" options="receive public"/>
    <Control name="vpot[5]" title="V-Pot 6" type="relative" options="receive public"/>
    <Control name="vpot[6]" title="V-Pot 7" type="relative" options="receive public"/>
    <Control name="vpot[7]" title="V-Pot 8" type="relative" options="receive public"/>

    <!-- V-Select -->
    <Control name="vpotSelect[0]" type="trigger" options="receive"><MidiMessage status="#90" address="#20"/></Control>
    <Control name="vpotSelect[1]" type="trigger" options="receive"><MidiMessage status="#90" address="#21"/></Control>
    <Control name="vpotSelect[2]" type="trigger" options="receive"><MidiMessage status="#90" address="#22"/></Control>
    <Control name="vpotSelect[3]" type="trigger" options="receive"><MidiMessage status="#90" address="#23"/></Control>
    <Control name="vpotSelect[4]" type="trigger" options="receive"><MidiMessage status="#90" address="#24"/></Control>
    <Control name="vpotSelect[5]" type="trigger" options="receive"><MidiMessage status="#90" address="#25"/></Control>
    <Control name="vpotSelect[6]" type="trigger" options="receive"><MidiMessage status="#90" address="#26"/></Control>
    <Control name="vpotSelect[7]" type="trigger" options="receive"><MidiMessage status="#90" address="#27"/></Control>
    <!-- ******************************************************************************************** -->
    <!-- Buttons + LEDs -->
    <!-- ******************************************************************************************** -->

    <!-- Fader Banks -->
    <Control name="faderBankLeft" type="trigger" options="receive"><MidiMessage status="#90" address="#2E"/></Control>
    <Control name="faderBankRight" type="trigger" options="receive"><MidiMessage status="#90" address="#2F"/></Control>
    <Control name="faderChanLeft" type="trigger" options="receive"><MidiMessage status="#90" address="#30"/></Control>
    <Control name="faderChanRight" type="trigger" options="receive"><MidiMessage status="#90" address="#31"/></Control>

    <!-- F1 - F8 -->
    <Control name="F1" title="F1" type="trigger" options="receive public"><MidiMessage status="#90" address="#36"/></Control>
    <Control name="F2" title="F2" type="trigger" options="receive public"><MidiMessage status="#90" address="#37"/></Control>
    <Control name="F3" title="F3" type="trigger" options="receive public"><MidiMessage status="#90" address="#38"/></Control>
    <Control name="F4" title="F4" type="trigger" options="receive public"><MidiMessage status="#90" address="#39"/></Control>
    <Control name="F5" title="F5" type="trigger" options="receive public"><MidiMessage status="#90" address="#3A"/></Control>
    <Control name="F6" title="F6" type="trigger" options="receive public"><MidiMessage status="#90" address="#3B"/></Control>
    <Control name="F7" title="F7" type="trigger" options="receive public"><MidiMessage status="#90" address="#3C"/></Control>
    <Control name="F8" title="F8" type="trigger" options="receive public"><MidiMessage status="#90" address="#3D"/></Control>

    <!-- Transport -->
    <Control name="markerButton" type="trigger" options="receive"><MidiMessage status="#90" address="#54"/></Control>
    <Control name="nudgeButton" type="trigger" options="receive"><MidiMessage status="#90" address="#55"/></Control>
    <Control name="cycleButton" type="trigger" options="receive"><MidiMessage status="#90" address="#56"/></Control>
    <Control name="dropButton" type="trigger" options="receive"><MidiMessage status="#90" address="#57"/></Control>
    <Control name="replaceButton" type="trigger" options="receive"><MidiMessage status="#90" address="#58"/></Control>
    <Control name="clickButton" type="trigger" options="receive"><MidiMessage status="#90" address="#59"/></Control>
    <Control name="soloButton" type="trigger" options="receive"><MidiMessage status="#90" address="#5A"/></Control>

    <Control name="markerLED" options="transmit"><MidiMessage status="#90" address="#54"/></Control>
    <Control name="nudgeLED" options="transmit"><MidiMessage status="#90" address="#55"/></Control>
    <Control name="cycleLED" options="transmit"><MidiMessage status="#90" address="#56"/></Control>
    <Control name="dropLED" options="transmit"><MidiMessage status="#90" address="#57"/></Control>
    <Control name="replaceLED" options="transmit"><MidiMessage status="#90" address="#58"/></Control>
    <Control name="clickLED" options="transmit"><MidiMessage status="#90" address="#59"/></Control>
    <Control name="soloLED" options="transmit"><MidiMessage status="#90" address="#5A"/></Control>

    <Control name="rewindButton" type="trigger" options="receive"><MidiMessage status="#90" address="#5B"/></Control>
    <Control name="ffButton" type="trigger" options="receive"><MidiMessage status="#90" address="#5C"/></Control>
    <Control name="stopButton" type="trigger" options="receive"><MidiMessage status="#90" address="#5D"/></Control>
    <Control name="playButton" type="trigger" options="receive"><MidiMessage status="#90" address="#5E"/></Control>
    <Control name="recordButton" type="trigger" options="receive"><MidiMessage status="#90" address="#5F"/></Control>

    <Control name="rewindLED" options="transmit"><MidiMessage status="#90" address="#5B"/></Control>
    <Control name="ffLED" options="transmit"><MidiMessage status="#90" address="#5C"/></Control>
    <Control name="stopLED" options="transmit"><MidiMessage status="#90" address="#5D"/></Control>
    <Control name="playLED" options="transmit"><MidiMessage status="#90" address="#5E"/></Control>
    <Control name="recordLED" options="transmit"><MidiMessage status="#90" address="#5F"/></Control>

    <!-- Navigation -->
    <Control name="upButton" type="trigger" options="receive"><MidiMessage status="#90" address="#60"/></Control>
    <Control name="downButton" type="trigger" options="receive"><MidiMessage status="#90" address="#61"/></Control>
    <Control name="leftButton" type="trigger" options="receive"><MidiMessage status="#90" address="#62"/></Control>
    <Control name="rightButton" type="trigger" options="receive"><MidiMessage status="#90" address="#63"/></Control>
    <Control name="zoomButton" type="trigger" options="receive"><MidiMessage status="#90" address="#64"/></Control>
    <Control name="scrubButton" type="trigger" options="receive"><MidiMessage status="#90" address="#65"/></Control>

    <Control name="zoomLED" options="transmit"><MidiMessage status="#90" address="#64"/></Control>
    <Control name="scrubLED" options="transmit"><MidiMessage status="#90" address="#65"/></Control>

    <!-- Display LEDs -->
    <Control name="smpteLED" options="transmit"><MidiMessage status="#90" address="#71"/></Control>
    <Control name="beatsLED" options="transmit"><MidiMessage status="#90" address="#72"/></Control>
    <Control name="rudesoloLED" options="transmit"><MidiMessage status="#90" address="#73"/></Control>

  </Controls>

  <!-- ******************************************************************************************** -->
  <!-- TEMPLATE DEFINITIONS -->
  <!-- ******************************************************************************************** -->

  <Templates>

    <!-- ******************************************************************************************** -->
    <!-- Plug-in Controls -->
    <!-- ******************************************************************************************** -->

    <Template name="PlugControlMapping">
      <foreach variable="$ch" count="8">
        <Strip name="vpot[$ch]" onConnect="onConnectPlugControl($ch)"/>
        <Strip name="fader[$ch]" onConnect="onConnectPlugControl($ch)"/>
      </foreach>
    </Template>

    <!-- ******************************************************************************************** -->
    <!-- Channel strips connected to alias parameters -->
    <!-- ******************************************************************************************** -->

    <Template name="ChannelStripAliasMapping">
      <foreach variable="$ch" count="8">
        <Value control="fader[$ch]" param="faderValue$ch"/>
        <Touch control="faderTouch[$ch]" param="faderValue$ch"/>
        <Relative control="vpot[$ch]" param="potValue$ch"/>
        <Value control="ledRing[$ch]" param="potValue$ch"/>
        <DefaultValue control="vpotSelect[$ch]" param="potValue$ch"/>

      </foreach>
    </Template>

    <!-- ******************************************************************************************** -->
    <!-- 8 Channel Strips -->
    <!-- ******************************************************************************************** -->

    <Template name="AllChannelStrips">
      <foreach variable="$ch" count="8">
        <Strip onConnect="onConnectChannel($ch)">
          <!-- Inserts + Sends (used for script interaction) -->
          <Bank target="Inserts" name="InsertsBankElement">
            <foreach variable="$insertIndex" count="8">
              <Strip onConnect="onConnectChannelInsert($ch,$insertIndex)"/>
            </foreach>
          </Bank>
          <Bank target="Sends" name="SendsBankElement">
            <foreach variable="$sendIndex" count="8">
              <Strip onConnect="onConnectChannelSend($ch,$sendIndex)"/>
            </foreach>
          </Bank>

          <!-- Note: faders + vpots are connected to alias parameters -->
          <!-- xxxx -->
          <Value control="fader[$ch]" param="volume"/>
          <Touch control="faderTouch[$ch]" param="volume"/>
          <Relative control="vpot[$ch]" param="pan"/>
          <DefaultValue control="vpotSelect[$ch]" param="pan"/>
          <!-- xxxx -->
          <Toggle control="recordButton[$ch]" param="recordArmed"/>
          <Value control="recordLED[$ch]" param="recordArmed"/>

          <Toggle control="soloButton[$ch]" param="solo" options="momentary"/>
          <Value control="soloLED[$ch]" param="solo"/>

          <Toggle control="muteButton[$ch]" param="mute" options="momentary"/>
          <Value control="muteLED[$ch]" param="mute"/>

          <Toggle control="selectButton[$ch]" param="selected"/>
          <Command control="selectButton[$ch]" command.category="Console" command.name="Show Instrument Editor"/>
          <Value control="selectLED[$ch]" param="selected"/>

          <Value control="stereo[$ch]" param="stereo"/>
          <Value control="meter[$ch][0]" param="level1"/>
          <Value control="meter[$ch][1]" param="level2"/>
        </Strip>
      </foreach>
    </Template>
  </Templates>


  <Mappings>


    <!-- ******************************************************************************************** -->
    <!-- MIXER MAPPING -->
    <!-- ******************************************************************************************** -->

    <DeviceMapping device="MixerConsole" name="MixerMapping">
      <!-- 8 Channel Strips -->
      <PlacementBank target="RemoteBank" pagesize="8" name="ChannelBankElement">

        <include template="AllChannelStrips"/>

        <!-- Bank Scroll Buttons -->

        <Variant control="optionButton">
          <!-- [option] not pressed -->
          <Group>
            <ScrollButton control="faderChanLeft" direction="stepleft"/>
            <ScrollButton control="faderChanRight" direction="stepright"/>
            <ScrollButton control="faderBankLeft" direction="pageleft"/>
            <ScrollButton control="faderBankRight" direction="pageright"/>
          </Group>
          <!-- [option] pressed -->
          <Group>
            <Command control="faderChanLeft" command.category="Presets" command.name="Previous"/>
            <Command control="faderChanRight" command.category="Presets" command.name="Next"/>
            <Command control="faderBankLeft" command.category="Devices" command.name="Previous Device in Rack"/>
            <Command control="faderBankRight" command.category="Devices" command.name="Next Device in Rack"/>
          </Group>
        </Variant>

      </PlacementBank>
      <Toggle control="soloButton" param="anySolo"/>
      <Value control="soloLED" param="anySolo"/>
      <Value control="rudesoloLED" param="anySolo"/>
    </DeviceMapping>

    <!-- ******************************************************************************************** -->
    <!-- TRANSPORT MAPPING -->
    <!-- ******************************************************************************************** -->

    <DeviceMapping device="TransportPanel">
      <!-- <Toggle control="cycleButton" param="loop"/> -->
      <Command control="cycleButton" command.category="Transport" command.name="Toggle Loop"/>
      <Value control="cycleLED" param="loop"/>

      <!-- <Toggle control="dropButton" param="punch"/> -->
      <Command control="dropButton" command.category="Transport" command.name="Autopunch"/>
      <Value control="dropLED" param="punch"/>

      <!-- <Toggle control="playButton" param="start"/> -->
      <Command control="playButton" command.category="Transport" command.name="Start"/>
      <Value control="playLED" param="start"/>

      <!-- <Toggle control="stopButton" param="stop"/> -->
      <Command control="stopButton" command.category="Transport" command.name="Stop"/>
      <Value control="stopLED" param="stop"/>

      <Value control="recordLED" param="record"/>
      <Value control="ffLED" param="fastForward"/>
      <Value control="rewindLED" param="rewind"/>

      <Variant control="markerButton" options="lock" statusled="markerLED">
        <!-- [marker] not on-->
        <Group>

          <Touch control="ffButton" param="fastForward"/>
          <Touch control="rewindButton" param="rewind"/>
          <Toggle control="recordButton" param="record"/>

        </Group>

        <!-- [marker] on -->
        <Group>

          <Command control="recordButton" command.category="Marker" command.name="Insert"/>
          <Command control="rewindButton" command.category="Marker" command.name="Goto Previous Marker"/>
          <Command control="ffButton" command.category="Marker" command.name="Goto Next Marker"/>

        </Group>
      </Variant>

    </DeviceMapping>

  </Mappings>
</ControlSurface>
[Core i7 8700 | 32GB DDR4 | Win11 x64 | Studio One 7 Pro | WASAPI ]

Post

Is anyone else having strange behavior from Studio One 7 licensing?

Studio One told me my license was not active on my computer. But I was just using it last night, and I haven't deactivated it recently.

When I try to activate it, I get a pop-up saying "The License has not been issued for this application version!" even though my Studio One Pro 7 license is valid until the end of the year.

My assumption is either the license server is down, orthey're tweaking the backend right now.
THIS MUSIC HAS BEEN MIXED TO BE PLAYED LOUD SO TURN IT UP

Post

jamcat wrote: Wed Aug 20, 2025 4:52 pm Is anyone else having strange behavior from Studio One 7 licensing?

Studio One told me my license was not active on my computer. But I was just using it last night, and I haven't deactivated it recently.

When I try to activate it, I get a pop-up saying "The License has not been issued for this application version!" even though my Studio One Pro 7 license is valid until the end of the year.

My assumption is either the license server is down, orthey're tweaking the backend right now.
Same here, just happened - just go to your account and log in.

Post

HcDoom wrote: Wed Aug 20, 2025 6:17 pm Same here, just happened - just go to your account and log in.
I was already logged into my account. I logged out and back in at my.presonus.com. I've tried doing offline authorization. All to no avail. I can't actually log out of my user account in Studio One. It says:
Studio One 7 popup message wrote: ⚠️

Studio One

No permissions to change application passwords.

PreSonus_UserAccount
PreSonus_StudioOne_OAuth

Please use Keychain Access to delete passwords.

[ OK ]
Is there a particular process that worked for you?
THIS MUSIC HAS BEEN MIXED TO BE PLAYED LOUD SO TURN IT UP

Post

It finally activated.
The thing is though, I have a perpetual license, so it should never ever be able to become deactivated under any circumstance. So Fender can just arbitrarily deactivate my software and prevent it from opening. I do not like what I've discovered today.
THIS MUSIC HAS BEEN MIXED TO BE PLAYED LOUD SO TURN IT UP

Post

I just clicked on the icon in Studio One that lead me directly to my presonus webpage and it was authorized automatically. But yes, its weird - this never ever happened before! I wonder whats going on in the background?

Post

jamcat wrote: Wed Aug 20, 2025 9:02 pm So Fender can just arbitrarily deactivate my software and prevent it from opening. I do not like what I've discovered today.
That is disturbing. I agree that a perpetual license should not deactivate on its own, once it has been activated (it makes it less perpetual).
[Core i7 8700 | 32GB DDR4 | Win11 x64 | Studio One 7 Pro | WASAPI ]

Post

Not on 'its own'. It's AI. As you can see. And it uses nice alliterations. Cherry on top!

Post

tonedef71 wrote: Thu Aug 21, 2025 6:13 am
jamcat wrote: Wed Aug 20, 2025 9:02 pm So Fender can just arbitrarily deactivate my software and prevent it from opening. I do not like what I've discovered today.
That is disturbing. I agree that a perpetual license should not deactivate on its own, once it has been activated (it makes it less perpetual).
The "call home" principle very popular today allow this, so licenses are not true perpetual unless it's able to call home.

I ran Cakewalk by Bandlab 2019 and when after 6 months got nagscreen to reactivate I never got that working, I got nagscreen reminders still. Did not want to sit and suddenly just not working at all, so uninstalled and went back to true challenge/response with Sonar Artist 2015.

As I understand it new Sonar is having "call home" stuff as well.

Samplitude started with P3-based serials, which "call home" every month. They offered me immediately a P2-based serial when I said computer is not online.

You could say Windows itself is "call home" meaning updates are mandatory every 5 weeks. But so far the Windows Update Blocker has worked for 8 months now so Windows 11 works completely locally.

So if Presonus/Fender did "call home" for StudioOne as well is not good. 2018 as I ran StudioOne 4.x all help was "online" so they started to think that everybody is online with their computers.
- so maybe license is now "call home" as well

All the software I use have offline help, Sonar(old one), Samplitude ProX8, PowerDirector 16, Finale 27(sadly gone)
- good thinking

I can understand the "piracy" thing, doing something monthly or so is harder to crack, and if many installs is "calling home" on the same serial that license can be shut down.

Steinberg dropped the Syncrosoft/Steinberg key as I understand this year, servers are shut down and everybody forced to upgrade now or loose license.
- so I lost my license but no love lost in that process anyway

I wonder how long this policy of Presonus will last. Some kind of death wish, it seems to me.

Post

Studio One has always been pirated within days of release. Presonus licence protection is completely useless and just causes problems for paying customers.

That being said, isn't there an option to download your licence from MyPresonus and use it for offline authorization? Or did they remove that option for 7?

Post

lfm wrote: Thu Aug 21, 2025 6:53 am
tonedef71 wrote: Thu Aug 21, 2025 6:13 am
jamcat wrote: Wed Aug 20, 2025 9:02 pm So Fender can just arbitrarily deactivate my software and prevent it from opening. I do not like what I've discovered today.
That is disturbing. I agree that a perpetual license should not deactivate on its own, once it has been activated (it makes it less perpetual).
... so licenses are not true perpetual unless it's able to call home...
:o
Studio One, Logic
macOS
–– -
http://ansolas.de

Post

lfm wrote: Thu Aug 21, 2025 6:53 am ... so licenses are not true perpetual unless it's able to call home...
I actually found this to NOT be the case. Once I was able to authorize again, this fiasco prompted me to go into my.presonus.com and generate a new offline authorization as a backup. In my first attempt, I deleted my authorization online and then turned off wi-fi, then I opened Studio One 7. This created a situation where Studio One was authorized locally, but that authorization was no longer valid, and Studio One was offline. And Studio One opened just fine. It didn’t need to be online, and since it wasn’t, it wasn’t able to check and see that my authorization was no longer valid.

So that is not the problem. The problem was that something happened on PreSonus’ end that made Studio One think the valid license I had was invalid for my version of Studio One. Once it got the kill command from the license server, it wouldn’t open until it got the OK from the server again.

I could not use offline authorization either, because the the license files that were created were embedding the newly invalidated license. I had to create a NEW offline authorization once the issue was fixed, because apparently my old license became invalid forever with whatever they broke yesterday.

What we learned is this is how the new quasi-subscription service will work. It was acting as though my update privileges had expired and I had a new version of Studio One installed that wasn’t covered by my license. The key is the message I was getting, that “The License has not been issued for this application version!”

What is disturbing to me is that apparently PreSounus can pull the rug out from under a valid perpetual license remotely with just a server hiccup. Their system needs to be far more robust so valid licenses aren’t subject to false deactivation so easily.

This fiasco has shaken my confidence not in the honesty of the licensing system they’ve created, but rather in its competence. It looks like they have build a bad system poorly.
THIS MUSIC HAS BEEN MIXED TO BE PLAYED LOUD SO TURN IT UP

Post

It pinged every key with every version by the looks of it. They best get their act together and soon is all I can say.

Post Reply

Return to “Hosts & Applications (Sequencers, DAWs, Audio Editors, etc.)”