superlewing

Forum Replies Created

Viewing 19 posts - 1 through 19 (of 19 total)
  • Author
    Posts
  • in reply to: JX-Programmer MKS-70 adaptation #46775
    superlewing
    Participant
      • Topics: 0
      • Replies: 19
      • Total: 19

      The UI combo content is just the displayed text string, in your case the combo would still send the values 0, 1, 2, 3.

      What you describe can be achieved by editing another field called sysexExpression I think, which is normally set to “modulatorValue”. If you change that to “modulatorValue*32”, the modulator will send 0, 32, 64, 92 to the sysex string.

      I tried this but found problems with parameter linking breaking. The current code is light enough and works well.

      in reply to: JX-Programmer MKS-70 adaptation #46011
      superlewing
      Participant
        • Topics: 0
        • Replies: 19
        • Total: 19

        Live’s external instrument is a nice idea but as you’ll need a second track to record audio anyway, I find it best to just use a separate input track to begin with. This also means you can layer the audio.

        in reply to: JX-Programmer MKS-70 adaptation #45290
        superlewing
        Participant
          • Topics: 0
          • Replies: 19
          • Total: 19

          Opuswerk, regarding keeping differences in the tone that’s a trivial matter of adding a new option to the listbox with a new ‘if’ section containing only the linking line.

          My drive for synchronising them when linked is that ableton only handles 128 parameters which doesn’t leave enough vst parameters to edit both tones, never mind what the mods would add.

          in reply to: JX-Programmer MKS-70 adaptation #45277
          superlewing
          Participant
            • Topics: 0
            • Replies: 19
            • Total: 19

            Yeah I just use the ‘dual detune’ control to accomplish that.

            I had to update the parameter numbering function to give priority to dynamic modulators , otherwise some go above 128 and ableton doesn’t pick them up. And yeah I noticed the essential aftertouch was missing too.

            Attachments:
            You must be logged in to view attached files.
            in reply to: JX-Programmer MKS-70 adaptation #45207
            superlewing
            Participant
              • Topics: 0
              • Replies: 19
              • Total: 19

              Thanks for the panel opuswerk, it looks great.

              I’ve added a switch to link all lower tone modulators to the upper tone, making a single stereo patch in dual mode or a 24 oscillator monosynth in unison mode! It sets the value ‘manually’ first which might send too much sysex at once but resending the patch from ctrlr would sort it. The function also resets key mode (to dual), balance and chase but you could comment that out easily.

              The patch key mode sysex function was missing so that’s working now.

              The Upper DCO1 tune modulator had a vst index of 0 which bound it to the modulator with index 1 for some reason, so I’ve bumped it up to something unique.

              I’ve also changed the dynamics list items from numbers to soft, linear and exponential to make it easier to understand.

              The upper tone’s visible vst names now use less than 8 characters where possible to increase readability on ableton’s push.

              Seems to be working ok but please lemme know if I’ve missed anything.

              Possemo thanks for your offer of soldering, will have to see if the PWM sounds are worth the hassle of shipping from London the capital of England. As for the rest of the firmware I think it’ll be a while before I exhaust the MKS70’s myriad of parameters.

              Attachments:
              You must be logged in to view attached files.
              in reply to: JX-Programmer MKS-70 adaptation #44517
              superlewing
              Participant
                • Topics: 0
                • Replies: 19
                • Total: 19

                Yeah there’s no way I’m taking a soldering iron to those old boards.

                Opuswerk’s did you get any further with the vstIndex etc? Really looking forward to setting this up so will have a look tonight if you’ve a more recent version of the panel

                in reply to: JX-Programmer MKS-70 adaptation #40875
                superlewing
                Participant
                  • Topics: 0
                  • Replies: 19
                  • Total: 19

                  Yeah you only need to run that function once, then save the panel and the vstIndex will be saved. If you wanted to resize all sliders it could be repurposed along the lines of

                  //get all modulators
                  //if modulator type is slider
                  //set height to X

                  But there’s a lot of trial and error and the documentation is sparse (though I’m massively thankful to atom that this program runs smoothly).

                  Params show up in Push in the same order you set them in Live. So if there are more than 16 or so it will hide them by default, and you have to enable them one by one as per this page. It takes a while figuring out the grouping but totally worth it for screenless MKS tweaking.

                  in reply to: JX-Programmer MKS-70 adaptation #40868
                  superlewing
                  Participant
                    • Topics: 0
                    • Replies: 19
                    • Total: 19

                    When I mangled the panel before I used this temporary method to iterate through the panel and set the vst param indexes sequentially, just assign it to a button a click it:

                    setVstIndexesSequenctially = function(mod, value)
                    n = panel:getNumModulators()
                    for i=0,n-1 do
                    panel:getModulatorByIndex(i):setPropertyInt(“vstIndex”, i)
                    end
                    end

                    VST parameter names are more intensive. Surprisingly I found differentiating between upper and lower tones in the VST names pointless, firstly because you have to set up the params by nudging them in the vst window making it obvious which is A or B based on where they are in abletons vst sliders. Secondly because after push shortens them, more than 8 characters quickly turns to gibberish.

                    So ‘DCO1 Tun’ is far more readable than ‘A DCO1 Tune’. Push really opens the MKS up in this way.

                    I can have a look at the names when I’m back next week, probably after a gigantic coffee.

                    in reply to: JX-Programmer MKS-70 adaptation #40860
                    superlewing
                    Participant
                      • Topics: 0
                      • Replies: 19
                      • Total: 19

                      Just waiting on a second MIDI cable to test it properly but can’t wait.

                      The VST parameter issue is caused by some VST indexes to be out of Ableton’s range of 512. Simple to fix but might mess up existing automation if other hosts can see those params.

                      I also plan to update the VST paramater name attribute to something meaningful for push’s 8 character display but that won’t mess with anything else.

                      in reply to: JX-Programmer MKS-70 adaptation #39708
                      superlewing
                      Participant
                        • Topics: 0
                        • Replies: 19
                        • Total: 19

                        Opuswerk did you get anywhere with the panel? Just got my MKS fixed up and would love to get her set up properly

                        in reply to: JX-Programmer MKS-70 adaptation #33166
                        superlewing
                        Participant
                          • Topics: 0
                          • Replies: 19
                          • Total: 19

                          For the link mode all the modulators are prelinked by name. When link is activated a function iterates through all the modulators ending in ‘B’ and switches the link mode to sysex. Bit of a hack but it works.

                          According to the midi spec chorus and envs receive 0-31, 32-63 etc range so I just put *32 in the sysex value function. This was much cleaner but a problem arose implementing the linking where instead of original list values being sent to the twin lists(0-3), the multiplied sysex value was being sent (0-127) so I changed them to sliders.

                          Yeah sorry for gutting your return functions, mostly out of laziness as I needed cleaner names but couldn’t be bothered to update the variable names for functions I wouldn’t use. It’d be a few minutes to copy them in again.

                          It’s easy to spend too much time perfecting this sort of thing without ever making any actual music.

                          in reply to: JX-Programmer MKS-70 adaptation #33156
                          superlewing
                          Participant
                            • Topics: 0
                            • Replies: 19
                            • Total: 19

                            The MKS70 sadly broke at the weekend but here’s how far I got.

                            All params are now tested working except bank and patch changes which are disabled as they were messing up volatile patches on bulk dump
                            Modulators have short names to show up on hardware controllers
                            Panel B has slider controls instead of list boxes to make them linkable for control of both voices at once
                            Sacked off a bunch of scripts where the sysex function parameter is sufficient
                            Added a link mode which links any modulator ending with A to the same named ending with B
                            Also provisioned for doing that to a subset of params based on containing an underscore or something. Sounds great with different envs etc hard panned.

                            The idea was to dial up patches from a control surface which are then saved with each track rather than use the MKS memory but this functionality can be easily reinstated.

                            Attachments:
                            You must be logged in to view attached files.
                            in reply to: JX-Programmer MKS-70 adaptation #30241
                            superlewing
                            Participant
                              • Topics: 0
                              • Replies: 19
                              • Total: 19

                              That’s great, many thanks. I’ll let you know how I get on

                              in reply to: JX-Programmer MKS-70 adaptation #30234
                              superlewing
                              Participant
                                • Topics: 0
                                • Replies: 19
                                • Total: 19

                                I’ll be retrieving my MKS70 this weekend, do you’ve an updated panel I can test or is everything working smoothly with this one?

                                Thanks

                                in reply to: JX-Programmer MKS-70 adaptation #17664
                                superlewing
                                Participant
                                  • Topics: 0
                                  • Replies: 19
                                  • Total: 19

                                  Here is the MIDI ctrlr sees when changing patch on the MKS 70

                                  [19:13:13:000334]: RAW:[f0 41 36 00 24 30 01 29 40 f7]
                                  [19:13:13:000367]: RAW:[f0 41 36 00 24 30 01 29 40 f7]
                                  [19:13:13:000372]: RAW:[f0 41 36 00 24 30 01 12 40 f7]
                                  [19:13:13:000398]: RAW:[f0 41 36 00 24 30 01 18 00 f7]
                                  [19:13:13:000403]: RAW:[f0 41 36 00 24 30 01 33 00 f7]
                                  [19:13:13:000403]: RAW:[c0 25]
                                  [19:13:13:000403]: RAW:[c1 0b]
                                  [19:13:13:000403]: RAW:[c0 25]
                                  [19:13:13:000406]: RAW:[f0 41 34 00 24 30 01 25 00 f7]
                                  [19:13:13:000427]: RAW:[f0 41 35 00 24 30 01 41 54 54 41 43 4b 20 4f 4e 20 53 55 53 54 41 49 4e 20 40 6e 07 52 59 00 00 7b 00 00 00 25 00 00 40 01 7f 00 01 4e 0b 00 00 40 01 7f 00 01 00 5a 01 14 00 00 00 f7]
                                  [19:13:13:000431]: RAW:[f0 41 34 00 24 20 01 25 00 f7]
                                  [19:13:13:000455]: RAW:[f0 41 35 00 24 20 01 55 4e 43 48 4f 52 55 53 45 44 00 00 60 3b 00 00 00 60 00 3c 4b 00 01 00 00 00 60 60 7f 7f 00 00 60 20 48 05 00 65 41 60 60 75 20 00 00 5b 5b 00 22 00 10 20 00 05 73 32 20 00 40 f7]
                                  [19:13:13:000459]: RAW:[f0 41 34 00 24 20 02 0b 00 f7]
                                  [19:13:13:000482]: RAW:[f0 41 35 00 24 20 02 41 54 54 41 43 4b 2d 50 41 44 20 00 60 3a 00 00 00 40 65 47 6e 00 00 00 00 00 00 60 7f 7f 00 00 60 00 3a 10 00 30 40 00 60 66 1b 4f 40 00 6e 00 06 02 01 00 00 07 7f 26 0f 00 40 f7]

                                  Let me know if I can help further

                                  in reply to: JX-Programmer MKS-70 adaptation #17647
                                  superlewing
                                  Participant
                                    • Topics: 0
                                    • Replies: 19
                                    • Total: 19

                                    opuswerk, many thanks for this. The MKS would be useless to me without!

                                    I have one suggestion, I’ve been exporting the DLL from ctrlr to work with ableton live and push. It would be really helpful if the parameter names in the code were more descriptive. Many of them are just ENV-1-4 etc.

                                    I’ll have time to test the new version over the weekend and will try to get some midi output to you.

                                    in reply to: JX-Programmer MKS-70 adaptation #16257
                                    superlewing
                                    Participant
                                      • Topics: 0
                                      • Replies: 19
                                      • Total: 19

                                      It seems like most of the knobs are working. Altering the VCF Q knob always sets it to zero always and there’s a couple others which might do the same. The MKS70 is new to me so it’s hard to tell.

                                      The selectors just set a specific value whatever is selected, VCO shape will always set to noise for example.

                                      The patch selectors do work so I’ve been having fun getting to know this beast a bit. Lemme know if there’s anything I can do to help this along.

                                      in reply to: JX-Programmer MKS-70 adaptation #16240
                                      superlewing
                                      Participant
                                        • Topics: 0
                                        • Replies: 19
                                        • Total: 19

                                        I’ll have a look tonight. Yesterday I managed to get a couple knobs affecting tone A but it was patchy at best.

                                        in reply to: JX-Programmer MKS-70 adaptation #16237
                                        superlewing
                                        Participant
                                          • Topics: 0
                                          • Replies: 19
                                          • Total: 19

                                          Thanks opuswerk, this is shaping up nicely!

                                          I’m on 1.08 and happy to help testing tone B.

                                        Viewing 19 posts - 1 through 19 (of 19 total)
                                        Ctrlr