spiffo

Forum Replies Created

Viewing 18 posts - 21 through 38 (of 38 total)
  • Author
    Posts
  • in reply to: Appending Number to Modulator Name #118690
    spiffo
    Participant
      • Topics: 12
      • Replies: 38
      • Total: 50
      • β˜…

      Ooops, my bad. I forgot I haven’t finished creating all 256 Modulators yet!

      Actually both methods work fine, for the record πŸ™‚

      in reply to: uiPanelCanvasRectangle – the funniest thing #118637
      spiffo
      Participant
        • Topics: 12
        • Replies: 38
        • Total: 50
        • β˜…

        Yep you’re right, if I search for ’24 pixels’ I find the other posts, unfortunately I didn’t use that as a search term when I first looked for an answer!

        Thanks, goodweather!

        in reply to: 2 questions about panel:sendMidiMessageNow #118621
        spiffo
        Participant
          • Topics: 12
          • Replies: 38
          • Total: 50
          • β˜…

          Can I just confirm that you are using 5.3.201 ?

          in reply to: 2 questions about panel:sendMidiMessageNow #118578
          spiffo
          Participant
            • Topics: 12
            • Replies: 38
            • Total: 50
            • β˜…

            OK, have a look at this one from yesterday.

            Attachments:
            You must be logged in to view attached files.
            in reply to: 2 questions about panel:sendMidiMessageNow #118575
            spiffo
            Participant
              • Topics: 12
              • Replies: 38
              • Total: 50
              • β˜…

              OK, slight issue, Defining your variables in a ‘Intialize Panel’ Script first then using something like:

              OP4_Fine_Tune:setValue(ACED_Data:getByte(2), true)

              To set Modulator Values works fine for a Modulator with multiple values, however, try the same thing with a Button that only has a True or False state like:

              OP1_Ratio_Fix_Button:setValue(ACED_Data:getByte(15), true)

              And all sort of weird things happen, from Ctrlr Crashes to nil value errors,C-1 errors, etc. You name it, I’ve seen it in the past 2 hours, but eventually I spotted the common issue.

              There must be a different way for setting a Modulator that only has a True or False Value?

              • This reply was modified 3 years, 11 months ago by spiffo.
              in reply to: 2 questions about panel:sendMidiMessageNow #118572
              spiffo
              Participant
                • Topics: 12
                • Replies: 38
                • Total: 50
                • β˜…

                dnaldoog

                Number 1 Absolutely, I just commented out a whole load of unecessary Console Calls, you’re right they are only in there so I can figure out where it got to and what state it’s in.

                Number 2 Yep, I understand, I think I’ll go with the Variable route. I just created a Script for Panel Load anyway so I can place the Variable Definitions in there. At the moment it has a table I just created for the Internal Patch Names, this is for syncronisation of Internal Patch Names so they can be displayed correctly in their Performance Mode Slots rather than just I01, I02…etc

                Number 3 Thanks for all the extra work, you’ve given me, LOL

                Number 4 It also occurs to me that the more I speed up the Ctrlr Panel the more delays I’ll have to add to stop the poor old DX11 doing a MIDI Buffer Full, Ha Ha, but seriously thanks, I’ll get right on it!

                πŸ™‚ spiffo

                • This reply was modified 3 years, 11 months ago by spiffo.
                • This reply was modified 3 years, 11 months ago by spiffo.
                in reply to: 2 questions about panel:sendMidiMessageNow #118569
                spiffo
                Participant
                  • Topics: 12
                  • Replies: 38
                  • Total: 50
                  • β˜…

                  Yep, just Tested it in Midi-Ox, Parameter Changes must be sent with the MIDI Ch Hex set to 10, assuming Rx Ch on DX11 set to Midi Ch 1

                  On a side issue I’ve just spent the last hour trying to figure out why my MidiMesseageRx Script was always being triggered twice. After banging my head against the wall for a bit I decided to swap the iRig Midi 2 Interface out for my Roland Quad Capture one and low and behold it doesn’t get triggered twice anymore just the once like it should do.

                  So for whatever reason this iRig Midi 2 Interface seems to be permanently echoing it’s Ins to Outs and vice versa, so that’s nice πŸ™

                  Cheers for all your help, I’m going to have to give up for today, just had a shout from work, need to go out!

                  in reply to: 2 questions about panel:sendMidiMessageNow #118563
                  spiffo
                  Participant
                    • Topics: 12
                    • Replies: 38
                    • Total: 50
                    • β˜…

                    Just to answer the question better:

                    β€˜myChannel β€˜ is the channel number as returned from the panel property panelMidiOutputChannelDevice

                    This returns a channel number from 1-16, but MIDI needs 0-15, so take the Ctrlr channel number 1-16 i.e. panelMidiOutputChannelDevice-1 which will be a number from 0-15 then add it to 16
                    channel 1 = 0x00+0x10=0x10 so you’ll see 10 as your channel number in the sysex output.
                    If you change your channel number out to channel 10 on Ctrlr, that’s:

                    panelMidiOutputChannelDevice=10
                    panelMidiOutputChannelDevice -1 = 0x09 (MIDI channel 10)

                    add Yamaha’s 0x10 or 16 to get your correct sysex value.

                    … you will see 19h in the sysex message as your channel. That’s 19 hex, not decimal.

                    I’m not sure why Yamaha adds 16 to the channel number in the first place though.

                    I didn’t understand this at first but after a cup of tea I think it’s sunk in:

                    Yes for some reason the Yamaha HEX Code for MIDI Channel 1 is inserted as 11 or 0001 0001 in Binary, and the plus 16 you are referring is that first 1 in the Hex or 16 if you counting in Decimal from the rhs.

                    Actually thinking about it, why do we need the -1?
                    If the Panel MIDI Channel is 1 and we take 1 off we get Zero so the HEX would be 10 and I’m pretty sure you send 11 for MIDI Channel 1, in fact I just tested it and it works whether you take the 1 off or you don’t, now I’ve confused myself again πŸ™

                    • This reply was modified 3 years, 11 months ago by spiffo.
                    in reply to: 2 questions about panel:sendMidiMessageNow #118557
                    spiffo
                    Participant
                      • Topics: 12
                      • Replies: 38
                      • Total: 50
                      • β˜…

                      Again thanks for your prompt help!

                      So in summary:

                      ..value.. so you can append on the front and the back, Got it πŸ™‚

                      % means there’s something to put in here and you’ll find it after the comma
                      2 means it’s 2 digits long?
                      x means it should be inserted as Hex?

                      Got it, I think!

                      This is working fine, it cycles around simulating the pushing of all 32 Internal Patch Memory Buttons, so I can capture all the Patch Names of the 32 Internal Memories and store them in a Table I think, but haven’t got that far yet:

                      MidiChannel=panel:getProperty(“panelMidiOutputChannelDevice”)-1

                      for i = 1,32 do

                      presetnumber = 75 + i

                      — Send a simulated ‘Play-Single’ Button Press On/Off

                      local Play_Single_On = string.format(“F0 43 %2x 13 76 7F F7”, 16+MidiChannel)
                      local Play_Single_Off = string.format(“F0 43 %2x 13 76 00 F7”, 16+MidiChannel)

                      panel:sendMidiMessageNow(CtrlrMidiMessage(Play_Single_On))
                      panel:sendMidiMessageNow(CtrlrMidiMessage(Play_Single_Off))

                      os.execute(sleep(25))

                      — Send a simulated ‘Internal’ Button Press On/Off

                      local Internal_On = string.format(“F0 43 %2x 13 70 7F F7”, 16+MidiChannel)
                      local Internal_Off = string.format(“F0 43 %2x 13 70 00 F7”, 16+MidiChannel)

                      panel:sendMidiMessageNow(CtrlrMidiMessage(Internal_On))
                      panel:sendMidiMessageNow(CtrlrMidiMessage(Internal_Off))

                      os.execute(sleep(25))

                      — Send a simulated ‘1-32’ Button Press On/Off

                      local PresetSysExOn = string.format(“F0 43 %2x 13 %2x 7F F7”,16+MidiChannel, presetnumber)
                      local PresetSysExOff = string.format(“F0 43 %2x 13 %2x 00 F7”,16+MidiChannel, presetnumber)

                      panel:sendMidiMessageNow(CtrlrMidiMessage(PresetSysExOn))
                      panel:sendMidiMessageNow(CtrlrMidiMessage(PresetSysExOff))

                      os.execute(sleep(25))

                      console (“Loop no.”..i)
                      console (“presetnumber is: “..presetnumber)

                      end

                      Thoughts:

                      %2x or %.2x seems to work fine!

                      local mySysex=”F0 43 “..16+MidiChannel..” 13 “..value..” 7F F7″) this does NOT work, definitely seems to need Hex Formatting, so I used the %2x approach!

                      in reply to: 2 questions about panel:sendMidiMessageNow #118540
                      spiffo
                      Participant
                        • Topics: 12
                        • Replies: 38
                        • Total: 50
                        • β˜…

                        Thanks guys, so some further questions then:

                        First Panel Properties:
                        In the Panel Modulator Properties when you specify a SysEx Formula you put xx for the Data from the Modulator to be inserted, correct? And I assumed that the 1y was for the Panel’s MIDI Channel to be inserted, is that correct or incorrect, I think it’s correct as I just tested it and it seems to work.

                        Second LUA Scripts:
                        In Proton’s , you are using the .. to append the variable into the string, do you need the .. after the variable as well? You don’t normally do that if appending a Variable?

                        dnaldoog’s script: So your function passes in 2 parameters mod (for the Panel’s Midi Channel) and value (for my variable I want to insert in the SysEx string). You then specify a variable called myChannel which is the Panel’s MIDI Channel and you make it negative? You then build a string with 2 Hex Codes missing which you specify at the end of the string as 16+myChannel which is 16 minus the actual MIDI Channel? And value which is a variable I want to insert? Also why is it %2X and %.2X shouldn’t they both be %.2X ?

                        Sorry to be a bit verbose, but more poor brain is trying to understand what’s going on πŸ™‚

                        Learning as I go, spiffo.

                        • This reply was modified 3 years, 11 months ago by spiffo.
                        • This reply was modified 3 years, 11 months ago by spiffo.
                        • This reply was modified 3 years, 11 months ago by spiffo.
                        • This reply was modified 3 years, 11 months ago by spiffo.
                        in reply to: uiPanelCanvasRectangle – the funniest thing #118469
                        spiffo
                        Participant
                          • Topics: 12
                          • Replies: 38
                          • Total: 50
                          • β˜…

                          OK, more testing with a new panel, consistently 24 pixels is subtracted from the Exported Panel Height, so the quick and dirty solution is just to add 24 pixels on before you choose to Export.

                          Bizarre!

                          in reply to: uiPanelCanvasRectangle – the funniest thing #118468
                          spiffo
                          Participant
                            • Topics: 12
                            • Replies: 38
                            • Total: 50
                            • β˜…

                            OK, some further testing, if I save as .panel my changes get saved.

                            If I Export to Compressed Binary & Resources .bpanelz (for porting to other computers) then my changes do NOT get saved ????

                            spiffo
                            Participant
                              • Topics: 12
                              • Replies: 38
                              • Total: 50
                              • β˜…

                              Yep

                              bit7, bit6, bit5 & bit 4 are always Zero, according to the Yamaha DX11 MIDI Spec
                              bit3, bit2, bit1 & bit 0 set Operators 1 to 4 On/Off

                              So the HEX value to send ends up with a Max of 0F and a Min of 00

                              My code was throwing up:

                              Error Message: No matching overload found, candidates: void setModulatorValue(CtrlrModulator&,int,bool,bool,bool)

                              I just change the line to:

                              panel:getModulatorByName(“OP_ON_OFF_BYTE”):setModulatorValue(byte93Int, true, true, true)

                              And now it works fine!

                              I’m not sure why there was a var in there, I must have copied that from somewhere else, they are all supposed to be a Boolean right?

                              Anyways thanks for your propmt help as always, learning as I go!

                              in reply to: Change Modulator Display Values #118290
                              spiffo
                              Participant
                                • Topics: 12
                                • Replies: 38
                                • Total: 50
                                • β˜…

                                It needed to be a uiFixedSlider or a uiFixedImageSlider!

                                I knew it would be something easy, thanks dnaldoog, I’ll crack on!

                                in reply to: Help getting ASCII Characters into uiLabel #118224
                                spiffo
                                Participant
                                  • Topics: 12
                                  • Replies: 38
                                  • Total: 50
                                  • β˜…

                                  OK, so that seems a lot more elegant, use string.format to form a 10 Character String from 10 Bytes starting at Byte 76 in my Memory Block called VCED_Data !

                                  I’m trying to learn this LUA as I go along, basically winging it by copying bits of code, trial & error, and some programming knowledge from way back in school.

                                  Yep I’ve got the Yamaha MIDI Implementation in front of me, I can follow most of it and with a bit of Trial & Error I’ve managed to work out which Byte is which. I’ve managed to extract the correct Bytes to throw at the right uiSliders. But this afternoon I just couldn’t get that HEX Code converted to ASCII and displayed in a uiLabel, I’ll give your method a go first thing tomorrow.

                                  Thanks!

                                  in reply to: Recommended Ctrlr version? #86656
                                  spiffo
                                  Participant
                                    • Topics: 12
                                    • Replies: 38
                                    • Total: 50
                                    • β˜…

                                    The same thing happens to me with the 5.5.2 Version.

                                    I use the next one down the v5.4.29 and I don’t have any issues with that.

                                    in reply to: 5.4.29 malware detected during install #86652
                                    spiffo
                                    Participant
                                      • Topics: 12
                                      • Replies: 38
                                      • Total: 50
                                      • β˜…

                                      I got the same thing from Norton Security, I ignored it!

                                      in reply to: Korg MS2000 #81184
                                      spiffo
                                      Participant
                                        • Topics: 12
                                        • Replies: 38
                                        • Total: 50
                                        • β˜…

                                        I found this on Korg’s Website, looks useful!

                                        Attachments:
                                        You must be logged in to view attached files.
                                      Viewing 18 posts - 21 through 38 (of 38 total)
                                      Ctrlr