Home Forums General Using Ctrlr Callback Error

This topic contains 21 replies, has 3 voices, and was last updated by dnaldoog dnaldoog 2 days ago.

Viewing 20 posts - 1 through 20 (of 22 total)
  • Author
    Posts
  • #73116

    Gecko
    Participant

    Hello,

    When I try to use Ctrlr stand alone or plugin, it gives me a “Callback Error – Initialize Values”.

    Any Idea on how to fix this? I’m using a Jv-1080, a Motu Interface and Ableton 8. The 1080 works perfectly with other editors.

    • This topic was modified 3 weeks, 2 days ago by  Gecko.
    Attachments:
    You must be logged in to view attached files.
    #73120

    human fly
    Participant

    try to ‘ren’ the console command in the initializeValues() method.
    something isn’t declared or the console() command is wrong.
    it may still not run, depending on the panel.

    did you post earlier that it ran ok in the Ctrlr.dll?

    #73122

    Gecko
    Participant

    Hi there Human Fly.

    did you post earlier that it ran ok in the Ctrlr.dll? – Nope.

    I am sorry, I don’t know code. Could you briefly explain?

    “-try to ‘ren’ the console command in the initializeValues() method.”
    “-something isn’t declared or the console() command is wrong.”

    • This reply was modified 3 weeks, 1 day ago by  Gecko.
    #73124

    human fly
    Participant

    i don’t know what panel you are using – is it the JayVee, or your own?
    (presumably not if you’re not coding)
    hard to say what’s wrong, tbh. it is just what that error message says.
    the panel probably needs that file when it loads.

    #73127

    Gecko
    Participant

    Can you tell me the name of the file the program is asking?

    Yeah, I don’t code. Have no idea about coding, I am a Musician/Producer etc.

    I am using this panel, the only one I found for my Roland JV1080:

    Jay-V (Roland JV/XP family panel)

    Thanks.

    #73128

    human fly
    Participant

    i just loaded JayV in Ctrlr standalone here – i downloaded it at the
    same place, assume it’s still the same.

    no error message here – but it isn’t connected to a JV. have you tried
    running JayVee as a Ctrlr standalone?(if you are running it inside the
    CtrlrVST.dll – you can ‘export a restricted instance’ from there, and get
    a ‘hardcopy’ of the dll that you can put in the plugins folder.

    anyway: looking at the lua editor of the bpanelz, ‘initialiseValues’ method
    -double click to view it- has an entry:

    --
    -- Called when the panel has finished loading
    --
    initializeValues = function()
    	displayText("Initializing...")
    	console("======== Trying to decode modulators ======")

    and it is having a problem at ‘console’. you don’t need that line,
    it doesn’t do anything. so just input ‘–‘ (2 hyphens) before
    ‘console’ to disable that line – it greys out.

    now go: file>save and compile, it will go ‘OK’ in the bottom box
    of the code page.

    there’s a 2nd ‘console’ command a bit lower, so do the
    same thing there, minimize the lua editor, and re-save the file
    with a new name, eg JayVee_MyEdit1, with the extension *.bpanelz
    (‘export>export compressed binary and resources – so that it includes
    resources such as images, fonts, etc.)

    so then try to load that, either in the ctrlr standalone, or in
    the ctrlrVST.dll – check midi devices in/out –
    maybe that will work. there is not much lua in this panel, so if
    the communication methods work, retrieving data from the JV, and
    assigning values to the panel, you’ll get 2 way communication.
    probably best to try an 1<>1 connection without other devices first.

    hopefully it will run just by disabling those ‘console’ entries.

    you will find out if ‘initializeValues’ runs on next startup, as
    it’s the panel startup method.

    #73130

    Gecko
    Participant

    Thanks so much Human Fly.

    – but it isn’t connected to a JV. have you tried
    running JayVee as a Ctrlr standalone? –

    Yep. That message pops up in Stand Alone mode and in Vst mode. When I click ok it takes me to the panel, but it glitches. – Most sliders and buttons don’t work on the Jv (Only one or two does), Ctrlr can’t recall the names of the patches nor it configurations, etc –

    And when I try to get Ctrlr working with the JV I only use the JV connected to the interface.

    Tomorrow when I’m in the studio, coffee mug at hand will try that and post back. Thanks again!

    #73133

    Gecko
    Participant

    Hey Human Fly.

    I disabled the two commands for the console, did the rest, and when it loaded it did not gave me any error message. Only odd thing was that where the part that displays the patches was gone.

    Thought that maybe when I selected the midi ins and outs it would sync, and it didn’t sync and gave me this error. (Screenshot)

    And the .dll isn’t sending midi out. I can monitor it from my Interface.

    I have used both the Out and Thru midi ports on the JV. Tried sending only midi though Ableton and it was receiving and sending ok, having the JV receiving and reacting ok.

    I have configured the panel at the best of my Midi knowledge (Plugin Options, Midi Thru), and tried all combinations. Can you give me a bump and tell me what you think would be the best options for this instance?

    Thanks a bunch!

    • This reply was modified 2 weeks, 6 days ago by  Gecko.
    • This reply was modified 2 weeks, 6 days ago by  Gecko.
    • This reply was modified 2 weeks, 6 days ago by  Gecko.
    • This reply was modified 2 weeks, 6 days ago by  Gecko.
    • This reply was modified 2 weeks, 6 days ago by  Gecko.
    #73139

    human fly
    Participant

    ok, well we tried to hack it.. i think *just disabling the ‘console’ part*
    was enough, – if the rest runs. because that stuff is needed for the midi
    communication. it’s normal it won’t display any patch name etc. if you removed
    all the lua that produces it 🙂

    you can probably still open another midi port, and run the output of the
    editor into something like midiox, if you’re on a PC. you need a virtual
    midiport such as loopbe1 (or Mac equivalent of these)

    i’m fairly sure the panel sends out sysex: the message boxes look ok,
    and i think i ran this one myself to read off the sysex at one point.

    there is something strange with the JV in how waveforms change: you
    have to send 3 bytes there, or it turns up a blank waveform slot.
    you’d think it would be enough to send bank and number, but it wants
    wavegroup too (ie expansion board?)

    btw: i’ve done a Novation RemoteSL midi template for the JV (patch edit)
    -i cut it down a bit where waveform selection happens, so i get just
    synth-type waveforms; seems to work pretty well (last time i tried it),
    and makes editing the JV very simple. let me know if you want it because
    i’ve messed up all old links by moving my files.

    #73140

    Gecko
    Participant

    Thanks Human Fly!

    – you can probably still open another midi port, and run the output of the
    editor into something like midiox, if you’re on a PC. you need a virtual
    midiport such as loopbe1 (or Mac equivalent of these) –

    Sure, gonna try that tomorrow for sure. I can use a visual patch vst librarian if it works for the JV in my PC.

    – i’m fairly sure the panel sends out sysex: the message boxes look ok,
    and i think i ran this one myself to read off the sysex at one point. –

    I don’t know if I brought it once to successfully send SysEx messages, but I sure got responses from two of the knobs in one of the panels once, this last week when I was playing around with it. Before actually focusing in making it work 100%, could have been CC or SysEx.

    – there is something strange with the JV in how waveforms change: you
    have to send 3 bytes there, or it turns up a blank waveform slot.
    you’d think it would be enough to send bank and number, but it wants
    wavegroup too (ie expansion board?) –

    Yep, I think that the expansion boards have waveforms in it too, not too sure though.

    – btw: i’ve done a Novation RemoteSL midi template for the JV (patch edit)
    -i cut it down a bit where waveform selection happens, so i get just
    synth-type waveforms; seems to work pretty well (last time i tried it),
    and makes editing the JV very simple. let me know if you want it because
    i’ve messed up all old links by moving my files. –

    Sure, I appreciate it! Atm I’m using the JV manually, was drawn to the idea of having endless patches in Vst form, but I like to use all the tools I can get my hands on, and sounds very useful! I have a mpd32 that could go really well with handling Midi Messages. Send me an Inbox! and Thanks again!

    • This reply was modified 2 weeks, 6 days ago by  Gecko.
    • This reply was modified 2 weeks, 6 days ago by  Gecko.
    #73145
    dnaldoog
    dnaldoog
    Participant

    That error is due to a change in the code for the latest version, so to fix it try using an older version or if you can do it, go into the lua source code and everywhere you see the word console, put two (minus signs) — in front of console(“….”) – click on save and compile all and it should work

    • console(“message is here”) becomes
    • –console(“message is here”)

    If you want to keep the console message printing to the console window (but maybe you don’t need it) then do:

    • console(String(“message is here”))

    NOTE: must be ‘String’ not ‘string’

    Regards,

    P.S. Oh – I think Human Fly already told you this!

    #73146

    Gecko
    Participant

    To a certain degree! Human fly was very helpful, yes.

    I have to try placing this:

    console(String(“message is here”)) In the LUA editor. Hope it gets synced.

    ( I’m guessing placing the “String” code without placing the hyphens on “Console”?)

    Next day in which I have some room for experimentation and getting down to try to make the JV editor work with Ctrlr I’ll try placing the “String” command.

    I was thinking, is there anywhere on the Ctrlr JV panel where you have to place the JV ID? (Unit# – 17 through 32) I looked for it, did not find it.

    Thanks dnaldoog!

    #73147

    human fly
    Participant

    lol. to a certain extent … in fact dnaldoog is much clearer
    than me. just do as he suggests!! just disable the ‘console’
    bits by ‘commenting them out’ with those two minus/hyphen symbols.

    why, > there seems to be a problem with the most recent version of
    Ctrlr with the ‘console()’ command, which is like ‘print()’ with
    other languages/environments. ie: it DID work – and does on the
    version i’m using for PC – but is now, apparently, according to
    pôsts, broken, causing Ctrlr to crash that method (current workaround is to
    use console(toString(etc) ), which is what dnaldoog mentions)

    my fault then: if you just ‘comment out’ the 2 ‘console’ lines,
    and resave the file – my first suggestion – you should get a
    loadable version. (you don’t need those ‘console’ entries, all
    they do is ‘print’ out the text in the brackets to an interface
    called ‘the console’ – and here, they are just used by the programmer
    for checking eg: you don’t need them, and this should be all that is
    stopping it from running)

    #73148

    Gecko
    Participant

    Thanks human fly, will try that! Maybe I’ll load up an older version of Ctrlr as well when I have time.

    lol I meant to a certain degree bc dnaldoog mentioned the “String” part of the code, which wasn’t mentioned before. So I was resuming that part!

    I’ll post back the results once I have a few hours to mess around with the Panel in hopes it can help future developments or current ones!

    • This reply was modified 2 weeks, 3 days ago by  Gecko.
    #73150

    human fly
    Participant

    just keep the current version, and comment out the 2 console entries.

    #73151

    Gecko
    Participant

    console(String(“message is here”)) In the LUA editor.

    ‘–‘ (2 hyphens) before
    ‘console’ to disable that line – it greys out.

    Got it!

    #73258

    Gecko
    Participant

    Hey Guys, had a bunch of work, and couldn’t sit down with the JV till today.

    Tried the String method, but didn’t work. Gave me all kinds of error messages. Open it up in Stand Alone mode, even so that it gave me an error message at the begging, I was able to place my Sound Interface as Input – Output but couldn’t place the mpd32 as Device. But I moved the knobs and the Midi Message in from the JV lit. ATM couldn’t get the signal from the mpd32 to the JV. The name of the patches did not load.

    I copied the code I have in my latest edit, the one with the Strings message written in it, no hyphens, just in case it is use for you guys. When I hit Save and Compile it did gave me this error message in the bottom box:

    Compile: initializeValues – FAILED
    ERROR: [string “initializeValues”]:19: ‘)’ expected (to close ‘(‘ at line nitializevalues 18) near ‘formula’

    There was a line which had an extra apostrophe, tried with and without it:
    –console(string(“Trying to decode modulator “..string.format(“%s”,v)))

    Here’s the code of my latest edit:

    —————————————————————————-


    — Called when the panel has finished loading

    initializeValues = function()
    displayText(“Initializing…”)
    console(String(“======== Trying to decode modulators ======”))
    local memoryItem = “FF”

    — Modulator list by sysex offset.
    — Keys/indexes are two byte hex strings (like “00 4C”)
    modulatorListByMemory = {}
    modulatorSpecialListByMemory = {}

    local max = panel:getNumModulators()
    for v=1,max,1 do
    local modulatorRef = panel:getModulatorByIndex(v)
    if (modulatorRef ~= nil and (modulatorRef:getProperty(“modulatorIsStatic”)==”0″)) then
    console(String(“Trying to decode modulator “..string.format(“%s”,v))
    formula = string.format(“%s”,modulatorRef:getMidiMessage():getProperty(“midiMessageSysExFormula”))
    if formula ~= nil then
    console(String(“Sysex formula: “..formula))
    string.sub(formula, 22, 5) should work but somehow it does not…
    if (string.len(formula) == 35) then
    sysexAddress=string.sub(formula , 22 )
    sysexAddress=string.sub(sysexAddress , 1 , 5 )
    console(String(“Sysex address: “..sysexAddress))
    modulatorListByMemory[sysexAddress] = modulatorRef
    — Special modulators that have 2-byte values. It will be treated differently.
    elseif (string.len(formula) == 38) then
    sysexAddress=string.sub(formula , 22 )
    sysexAddress=string.sub(sysexAddress , 1 , 5 )
    console(String(“Sysex address: “..sysexAddress))
    modulatorSpecialListByMemory[sysexAddress] = modulatorRef

    end
    end
    end
    end
    console(String(“======== Modulator decode end ======”))
    end
    console(String(“======== Modulator decode end ======”)): “..formula)
    —————————————————-
    Bottom Box

    Compile: initializeValues – FAILED
    ERROR: [string “initializeValues”]:19: ‘)’ expected (to close ‘(‘ at line nitializevalues 18) near ‘formula’

    ——————————————————————————–

    Only did the input of the String message in the Initialize Tab.

    #73260

    human fly
    Participant

    here’s a little present for you anyway 🙂
    but you’ll have to get hold of a novation remoteSL,
    preferably mk1

    https://app.box.com/s/up0kxs6srr7a1hhvntai9y4w12twspq7

    remoteSL RolandJV1080 v03(beta)

    no more mousing! and you can zip through the thing
    doublequick – i had to restrict waveform selection
    because of the novation’s limitations – it’s a bit
    heath robinson, what i’ve done, but it sort of works,
    and you can avoid some of the less useful onboard
    waveforms that way – why why did roland design this
    synth like this?(because it’s an all purpose module)

    i did it a while ago, so i forget exactly what i would
    change on it – it’s called ‘beta’ because this was
    the 1st usable version, but it gives good control over
    wave gain stages, and over the fx if you want to use
    them with more subtlety, ie as spatialisation parameters,
    rather than as fullblown gushing reverbs etc.
    (and in the same vein, with a Ctrlr panel, i feel one
    would wish to ‘automap’ to the plugin, to have the same
    sort of quick knobby control – but that’s just one
    approach, of course)

    #73262

    Gecko
    Participant

    Hey, thanks! Definitely gonna use this! ATM is impossible for me to even get an used remoteSL because of where I am, (Caracas Venezuela), but I’m gonna surely try to mimic the use with the MPD32. By any chance do you have the list of the CC Number Messages? Thanks again human fly!

    #73263

    Gecko
    Participant

    Alright, I see the
    “There was a line which had an extra apostrophe, tried with and without it:
    –console(string(“Trying to decode modulator “..string.format(“%s”,v)))”

    Instead of “String”. Weird. Gonna check it probably tomorrow.

Viewing 20 posts - 1 through 20 (of 22 total)

You must be logged in to reply to this topic.

Comments are closed.