Komplete Kontrol Scale mode in Maschine - Any coders up for this?

colonyrecords
colonyrecords Member Posts: 7 Member

I want to be able to use the KK Scale feature in maschine with other external midi keyboards even when my Komplete Kontrol keyboard isnt connected. If the KK keyboard is connected and Scale mode button is on , scales work correctly from non NI midi keyboards in Maschine. I think i found the file responsible for this but dont have enough coding knowledge to edit it. Its the “Komplete Kontrol2.lua” file within the Maschine 3 app (on mac os)


GPT said something below for example. Any smart guys on this forum up for the challenge? NI should really just open the scales mode up in the first place.


function KompleteKontrol2:onScaleButton(Pressed)
-- Force scale mode to always be active without hardware interaction
local ScaleEngine = NI.DATA.getScaleEngine(App)

if ScaleEngine then
    -- Emulate scale activation without the button press
    local ActiveParam = NI.HW.getScaleEngineActiveParameter(App)
    
    if ActiveParam then
        -- Force the scale engine to stay active
        ActiveParam:setValue(true)  -- Ensure scale mode is on
    end

    -- Make sure we're in the scale page, and navigate there if not
    if self.ActivePageID ~= NI.HW.PAGE_SCALE then
        self:changePage(NI.HW.PAGE_SCALE)
    end

    -- Force the LEDs to show scale is active
    self:updateArpScaleLEDs()
end

end



or


function KompleteKontrol2:onScaleButton(Pressed)
-- Force scale mode to always be active without hardware interaction
local ScaleEngine = NI.DATA.getScaleEngine(App)

if ScaleEngine then
    -- Emulate activation without hardware button press
    local ActiveParam = NI.HW.getScaleEngineActiveParameter(App)
    if ActiveParam then
        ActiveParam:setValue(true)  -- Force scale mode to be active
    end

    -- Optionally, ensure the software enters scale mode without needing the keyboard
    if self.ActivePageID ~= NI.HW.PAGE_SCALE then
        self:changePage(NI.HW.PAGE_SCALE)
    end

    -- Update the LEDs to reflect the active scale mode
    self:updateArpScaleLEDs()
end

end

Comments

  • D-One
    D-One Moderator Posts: 3,627 mod
    edited December 2024

    I am no dev but from what i can tell all that code is about how and when to use ScaleEngine, specifically on S-Series keyboards, if theres a way to make it work on external MIDI it wont be in that file as it just related to how KK-S talks to the software afaik… It's ScaleEngine itself that would need tweaking and that's on the compiled binary. :( I hope someone can prove me wrong tho.

  • colonyrecords
    colonyrecords Member Posts: 7 Member

    damn.. I was hoping it wouldn’t be too difficult. All I want is the Scale mode turned on for my other midi keyboards without pushing the scale button on the Komplete keyboard.

Back To Top