memorysplice

Forum Replies Created

Viewing 20 posts - 21 through 40 (of 59 total)
  • Author
    Posts
  • in reply to: Sysex dump with multiple separate messages #65699
    memorysplice
    Participant
      • Topics: 14
      • Replies: 59
      • Total: 73

      I am getting a error message

      Error message: [string “receivedMidi”]:89: attempt to index global ‘programData’ (a nil value)

      in reply to: Sysex dump with multiple separate messages #65698
      memorysplice
      Participant
        • Topics: 14
        • Replies: 59
        • Total: 73

        daimondamps can you break down how the code works so I can utilize it ?

        in reply to: Sysex dump with multiple separate messages #65693
        memorysplice
        Participant
          • Topics: 14
          • Replies: 59
          • Total: 73

          Trying now. Thank you!

          in reply to: Sysex dump with parameters dumping to two bytes "ms" "ls" #65690
          memorysplice
          Participant
            • Topics: 14
            • Replies: 59
            • Total: 73

            Thank you. Will try now and get back.

            in reply to: Sysex dump with parameters dumping to two bytes "ms" "ls" #65682
            memorysplice
            Participant
              • Topics: 14
              • Replies: 59
              • Total: 73

              After doing some digging around, I found this to possibly work with. Does anyone have any thoughts?

              You commented out the name of your script and the “end”.. Those two elements should be like the bun of your sandwich, so to speak, and they shouldn’t be commented out with double dashes. One goes at the top, one goes at the bottom. This concept is important to grasp. When you start a function you must end a function.

              it should be something like:

              [code:1jfd3aiv]Patch Configure = function(modulator, newValue)

              FilterMsb = midiMessage:getLuaData():getByte(54)
              FilterLsb = midiMessage:getLuaData():getByte(55)

              FilterValue = (FilterMsb*16)+(FilterLsb)

              panel:getModulatorByName(“VCF Cutoff”):setModulatorValue(FilterValue, false, false, false)

              end[/code:1jfd3aiv]

              Source of post

              • This reply was modified 8 years, 4 months ago by memorysplice. Reason: add source of post
              in reply to: Sysex dump with multiple separate messages #65577
              memorysplice
              Participant
                • Topics: 14
                • Replies: 59
                • Total: 73

                One more thing, Part of the dump in question as messages that are broken into multiple “ms” “ls” byte messages how do I utilize lua code to update the parameters for my panel?

                in reply to: Sysex dump with multiple separate messages #65341
                memorysplice
                Participant
                  • Topics: 14
                  • Replies: 59
                  • Total: 73

                  Fixed it. Some kind of midi loop issue.

                  in reply to: Sysex dump with multiple separate messages #65339
                  memorysplice
                  Participant
                    • Topics: 14
                    • Replies: 59
                    • Total: 73

                    I got it to properly dump and thank you! I do have a problem. When I press a note on the synth, it will click output a bunch of sysex paramater changing the synth and the panel to 0. What are your thoughts?

                    in reply to: Sysex dump with multiple separate messages #65249
                    memorysplice
                    Participant
                      • Topics: 14
                      • Replies: 59
                      • Total: 73

                      I am going to try this on a much simpler synth to master first I just want to walk over everything over with you first.

                      Here are 3 of the 4 messages that I am sending

                      Message 1
                      F0 41 10 00 00 7B 11 00 20 00 00 00 00 60 F7
                      Message 2
                      F0 41 10 00 00 7B 11 00 20 10 00 00 00 50 F7
                      Message 3
                      F0 41 10 00 00 7B 11 00 20 20 00 00 00 40 F7
                      and so on

                      Here are 3 examples of sysex dumps that I am receiving from the synth in question.

                      
                      address is in [ ] 
                      bytes are in " "
                      message 1
                          [ F0 41 10 00 00 7B 12 00  20 00 00 ]
                          " 01 7F 00 7F 00 7F 00 7F 00 00 00 00 00  00 00 00 14 00 00 00 00 00 00 00 00 00 00 00 00  00 00 00 5C " 
                      73 = checksum 
                      F7 = End of Message
                      
                      message 2
                      
                      00  [ F0 41 10 00 00 7B 12 00  20 10 00 ]
                          " 00 0B 3C 49 49 10  1E 32 "
                      27 = checksum
                      F7 = End of Message
                      
                      message 3
                      
                      00  [ F0 41 10 00 00 7B 12 00  20 20 00 ]
                          " 00 00 00 00 00 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 20  00 00 00 00 00 " 
                      40 = Checksum 
                      F7 = End of message
                      
                      • This reply was modified 8 years, 5 months ago by memorysplice.
                      • This reply was modified 8 years, 5 months ago by memorysplice.
                      • This reply was modified 8 years, 5 months ago by memorysplice.
                      in reply to: Sysex dump with multiple separate messages #65240
                      memorysplice
                      Participant
                        • Topics: 14
                        • Replies: 59
                        • Total: 73

                        I do have a question in regards to the “assignValues script”

                        
                        function assignValues(midiMessage,var)
                        	panel:getModulatorByName("Portamento"):setModulatorValue(programData:getByte(0), false,var,false) -- assign the first byte of programData memoryBlock to it's correspondent modulator
                        panel:getModulatorByName("Osc1 Volme"):setModulatorValue(programData:getByte(1), false,var,false) -- assign the second byte of programData memoryBlock to it's correspondent modulator. 
                        .
                        .
                        .
                        -- And so on till the last byte.
                        end
                        

                        Do I use continue to use this script or am I missing something?

                        • This reply was modified 8 years, 5 months ago by memorysplice.
                        in reply to: Sysex dump with multiple separate messages #65231
                        memorysplice
                        Participant
                          • Topics: 14
                          • Replies: 59
                          • Total: 73

                          I think this is something I can run with! Thank you! I will try right now.

                          in reply to: Sysex dump with multiple separate messages #65230
                          memorysplice
                          Participant
                            • Topics: 14
                            • Replies: 59
                            • Total: 73

                            Thank you for your patience. I greatly appreciate you and everyone else trying to help.

                            in reply to: Sysex dump with multiple separate messages #65215
                            memorysplice
                            Participant
                              • Topics: 14
                              • Replies: 59
                              • Total: 73

                              Thank you for your guidance. I do understand everything you told me yet, but I will try to figure out where to go from here.

                              in reply to: Sysex dump with multiple separate messages #65207
                              memorysplice
                              Participant
                                • Topics: 14
                                • Replies: 59
                                • Total: 73

                                The reason why I asked is because I just figured out how to transmit more than 1 sysex message with a button to trigger specific midi dump responses.

                                in reply to: Sysex dump with multiple separate messages #65206
                                memorysplice
                                Participant
                                  • Topics: 14
                                  • Replies: 59
                                  • Total: 73

                                  Is there a way to setup a ctrlr script to lets say I request 4 specific sysex dumps and get back 4 messages that reference the synth common and the the 3 parts that make up the synth. “the 3 partials that make up the 1st part of the JD-Xi.” How would I go about doing that?

                                  in reply to: Sysex dump with multiple separate messages #65117
                                  memorysplice
                                  Participant
                                    • Topics: 14
                                    • Replies: 59
                                    • Total: 73

                                    Thank you for looking around, daimondamps. I know how to read the sysex dump. My problem is writhing out the lua code to accept a dump and update the panel from multiple sysex messages. As for the panel that stephen uploaded, he is building on what I started and he as far as I know does not know anything about coding in lua.

                                    in reply to: Sysex dump with multiple separate messages #65022
                                    memorysplice
                                    Participant
                                      • Topics: 14
                                      • Replies: 59
                                      • Total: 73

                                      Yes! Here is a link for the JD-Xi sysex. Click to download sysex spec

                                      I figured out how to trigger a smaller dump that only outputs the Digital Synth 1 and 2 and the analog synth with only 14 messages vs 55.

                                      f0 41 10 00 00 00 0e 11 19 01 00 00 00 6e 7f 7f z5 f7`

                                      Here is what I have been using before that works.


                                      — Called when a panel receives a midi message (does not need to match any modulator mask)
                                      — @midi CtrlrMidiMessage object

                                      midiMessageReceived = function(midiMessage)

                                      s = midiMessage:getSize()

                                      if s == 45 then — if size match the expected size of the dump requested
                                      PatchDataLoaded = midiMessage:getData() — create a memoryblock with the data dump
                                      programData = midiMessage:getData():getRange(11,45-11) — create a memory block with the synth engine data, leaving the header
                                      assignValues(midiMessage,false) — call a script to assign each byte to each modulator.
                                      end
                                      end

                                      function assignValues(midiMessage,var)
                                      panel:getModulatorByName(“Letter 1”):setModulatorValue(programData:getByte(1), false, false, false)
                                      — panel:getModulatorByName(“Letter 2”):setModulatorValue(programData:getByte(2), false, false, false)
                                      — panel:getModulatorByName(“Letter 3”):setModulatorValue(programData:getByte(3), false, false, false)
                                      — panel:getModulatorByName(“Letter 4”):setModulatorValue(programData:getByte(4), false, false, false)
                                      — panel:getModulatorByName(“Letter 5”):setModulatorValue(programData:getByte(5), false, false, false)
                                      — panel:getModulatorByName(“Letter 6”):setModulatorValue(programData:getByte(6), false, false, false)
                                      — panel:getModulatorByName(“Letter 7”):setModulatorValue(programData:getByte(7), false, false, false)
                                      — panel:getModulatorByName(“Letter 8”):setModulatorValue(programData:getByte(8), false, false, false)
                                      end`

                                      I am not sure how to implement the code with what I have.

                                      in reply to: Sysex dump with multiple separate messages #65017
                                      memorysplice
                                      Participant
                                        • Topics: 14
                                        • Replies: 59
                                        • Total: 73

                                        Got to trying to utilize your example dasfaker. I am running into problems and I am not sure what questions to ask to move further. Any thoughts?

                                        in reply to: Sysex dump with multiple separate messages #64784
                                        memorysplice
                                        Participant
                                          • Topics: 14
                                          • Replies: 59
                                          • Total: 73

                                          Thank you! This is exactly what I needed!

                                          in reply to: Sysex dump with multiple separate messages #64735
                                          memorysplice
                                          Participant
                                            • Topics: 14
                                            • Replies: 59
                                            • Total: 73

                                            Can you post a code example on how to do that please so I can follow along?

                                          Viewing 20 posts - 21 through 40 (of 59 total)
                                          Ctrlr