Forum Replies Created
-
AuthorPosts
-
Hey,
I’ve just picked up a Matrix 1000 too, just waiting for it to be delivered. I’ll give it a quick service, swap the transformer and fuse over to 250v and then start exploring the Matrix 1000 panel.
Good times….
M.
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalI never saw that, it looks cool but they are out of stock on the kits. Any idea when will they come back ? I got into soldering stuff now so that would be a cool project to do at some point.
Hey Atom, did you get a chance to follow this up?
Just finished mine, so I’m showing it off…
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalHey Ataom, congratulations and good luck with the new job.
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalI never saw that, it looks cool but they are out of stock on the kits. Any idea when will they come back ? I got into soldering stuff now so that would be a cool project to do at some point.
Hi Atom,
Only just stumbled upon your reply. You can get yourself on the latest waiting list here:
http://www.e-licktronic.com/forum/viewtopic.php?f=16&t=153
Vincent at Elicktronic will email you when they become available again.The company is based on the French Island of Réunion so postal charges are a bit high, but the kit is very good quality and the PCB’s are very well made. Mine took about two weeks to get to the UK.
I am checking resister values at present and organising them into bags… I don’t want any cock-ups on this one.
- This reply was modified 10 years, 3 months ago by lfo2vco.
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalHi Christopher,
I think you have quite a task on you hands there, I was struggling to made sense of the MIDI implementation charts. Not that I am much of an expert.
I have attached a text file with a excerpt from the page on the link below:
http://www.gmarts.org/data/jv-midiman.htmI think the data you require is in here, under the address column. The bytes are listed as hexadecimal, so you will need to convert the Hex to Decimal using the Ctrlr MIDI calculator (A0 = 10, on the tenth line no less! 0B =11 and so on). The Controller values are at the end of the line.
Use the Ctrlr MIDI Monitor to grab the data from a Sysex Tone Edit Dump and interrogate it byte by byte. Use one patch as a reference and stick to it, as you say tweak a parameter and see where it changes. I printed a copy and then wrote notes on it as I went. I also copied the data I grabbed in to a text editor and using a mono spaced font such as Courier I compared it line for line.
I think the actual data you require will start on the ninth or tenth byte after all the Sysex IDs and stuff. See below:
status data byte status
F0H, 41H, dev, 6AH, 12H, aaH, bbH, ccH, ddH, eeH, … ffH, sum F7HByte Remarks
F0H = Exclusive status
41H = ID number (Roland)
dev = device ID (dev: 10H)
6AH = model ID (JV-1010)
12H = command ID (DT1)
aaH = address MSB
bbH = address
ccH = address
ddH = address LSB
eeH = data : The actual data to be transmitted.
Multi-byte data is transmitted in the address order.
ffH = data
sum = checksum
F7H = EOX (End Of Exclusive)Attachments:
You must be logged in to view attached files.Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalHi Rexxe,
I think this is what you are asking for:
http://sourceforge.net/p/ctrlrv4/code/HEAD/tree/Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalDecember 21, 2013 at 12:27 am in reply to: JX8Programer BUG – Saving Patch to Disk. Any Idea? #16837Pleased to help a fellow lame musician ; )
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalI think I am safe in saying that would definately require a Lua Method. It is be well beyond my scripting abilities, but there are some very clever people on this forum. They may be able to offer assistance.
I am assuming you are not up to speed with Lua?
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalHi Makasi, I opened the panel in Ctrlr (revision 1590) on a Mac and Save worked fine, no errors.
What version of Ctrlr are you using? It looks like it could be a Lua syntax error, have you altered anything on the panel at all?
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalOK the panel is now in Downloads, have fun all you Kiwi-3P owners!
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalHi Electro,
It is a work in progress, so Atom is adding and adapting features based on user feedback. So you will find some feature may work, but by the same token Atom may change or remove them as he sees fit.
At present you will need to write a method in Lua to transmit .syx files to your device. The program manager is Atom’s attempt to simplify that task and negate the need for a Lua method, however the function of no two MIDI devices is the same. This is a big undertaking and may take some time for Atom to resolve.
Lets us know how you get on with the Lua method.
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalhey thanks for spreading the buzz.. this is some premo shit
thx again. working like a charm. Nice trade off in this thread – i helped you out, you turn around and help me out. Thanks again!Pleasure is all mine : )
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalNovember 27, 2013 at 8:16 pm in reply to: any1 got working ctrlr vst with Nord Lead 2 Panel on cubase 7? #15902Hi Deebee, the panel you are using is was created in an older version of Ctrlr. Ctrlr has since been updated and the panel will need to be amended to work correctly. That is why it is in the Panels Depreciated folder.
You will most likely need to update some of the panel elements and then export it from the Ctrlr VST as a VST instance. I would suggest making any changes in the standalone app as it is easier and then opening in the VST to export.
Maybe someone with more knowledge can point Deebee to what is likely to be out of date in his panel.
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalOK this panel has been totally overhauled now. All the CC messages have been replaced with Sysex, also the panel responds to messages from the Kiwi-3P.
I have introduced Load Patch, Save Patch, Save As Patch, Rename Patch and Initialise Patch functions. There is also a feature to save and load patches to and from disk as Sysex files.
Quick demo movie here:
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalMavericks is supposed to be super efficient and kind to laptops… if you believe the hype!
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalJust out of curiousity is it the machine spec that’s stopping you upgrading Atom?
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalYep it’s a bugger the way this download installs. I was hoping it was a Disk Image so I could save installing it till a more convenient time. But then I guess it will be on the Apple servers for a while.
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalHi Luke,
I did the same thing regarding the Combobox contents first time around. I’m no expert just passing on what Atom and Msepsis have taught me.
The Combo contnets are a linear list from top to bottom, so you only need to put:
16′
8′
4′Then in Lua reference the items something like this:
dcoOneRangeMessage = function(mod, value) -- Get the combo's value comboValue = DCO1Range:getModulatorValue() -- Send appropriate sysex based on combo's value if comboValue == 00 then mySysex = CtrlrMidiMessage({0xF0, 0x7F, 0x7F, 0x7F, 0x60, 0x01, 0x00, 0xb0, 0x08, 0x00, 0xF7}) panel:sendMidiMessageNow(mySysex) elseif comboValue == 01 then mySysex = CtrlrMidiMessage({0xF0, 0x7F, 0x7F, 0x7F, 0x60, 0x01, 0x00, 0xb0, 0x08, 0x20, 0xF7}) panel:sendMidiMessageNow(mySysex) elseif comboValue == 02 then mySysex = CtrlrMidiMessage({0xF0, 0x7F, 0x7F, 0x7F, 0x60, 0x01, 0x00, 0xb0, 0x08, 0x40, 0xF7}) panel:sendMidiMessageNow(mySysex) end end
So comboValue == 00 is the first item, 01 the second and so on.
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalI have pasted some info that should help, this is from the previous thread.
Count the bits from right to left thus: 76543210
So getBitRangeAsInt(0,2) means starting at the first bit (0) get two bits (2)Some of the combobox bytes are expressed like this in the Kiwi-3P user manual:
Byte (20) DCO1 Wave/Range,
Data Type 0000yyxx,
xx =DCO 1 Range 00=16′ 01=8’10=4′
yy =DCO 1 Wave 00=Saw 01=Pulse 10=SquareSo the on receiving the MIDI message from the synth Lua treats it like this:
byte = programData:getByte(20) bi = BigInteger(byte) panel:getModulatorByName("DCO 1 Range"):setValueMapped(bi:getBitRangeAsInt(0,2), false) panel:getModulatorByName("DCO 1 Waveform"):setValueMapped(bi:getBitRangeAsInt(2,2), false)
And to get the data into Byte 20 for a Sysex dump Lua treats it like this:
dco1range = panel:getModulatorByName("DCO 1 Range") dco1waveform = panel:getModulatorByName("DCO 1 Waveform") bi = BigInteger(0) bi:setBitRangeAsInt (0,2,dco1range:getValue()) bi:setBitRangeAsInt (2,2,dco1waveform:getValue()) byte20 = bi:getBitRangeAsInt(0,7)
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystalHi Luke,
Msepis helped me out when I started my panel, hte following it what he advised and I think it may help you too:
One question regarding sysex, I’m hoping that the panel will be able to reflect patch changes made on the 3P. Will this require extra scripting or settings to be made in the Ctrlr panel?
yes.. you will need to get familiar with getting data and assigning values to modulators (knobs, sliders, buttons, etc).. Basically what you need to do is create a program change knob (or two buttons, – and +) that send a multimessage to your synth. first message is a program change, second message is a sysex program dump request.
Then on your panel itself (just click on “blank” space on your panel) go to the properties on the far right and look for “called when the panel receives a MIDI message”.
You’ll need to create a Lua method there called something like midiMessageRecieved. You need to create some hook that determines whether the message coming in is a program dump. Best ways to do this is ether by getting the nth byte to see if it is equal to your synth’s message ID for a program dump, or get the size of the message to compare to what a program dump’s byte length is. Here’s some example code of getting the 4th byte to see if it is equal to 0×10 (0x before a number represents HEX) which in my synths’s case indicates the message is a program dump from the synth:
midiMessageReceived = function(midiMessage) --this is a comment, it is ignored by the lua interpreter --create a variable "IDM" which is the value of the 4th byte of any incoming MIDI message: IDM = midiMessage:getLuaData():getByte(4) --is the fourth byte of incoming midi message equal to 0x10? if IDM == 0x10 then --if yes, then run another method called "assignValues" assignValues(midiMessage) --this next line is just a console message that alerts you that the script has run this far. View these in the "Lua Console" console ("program change sent, standby for panel update...") end end
IF the message is a program dump from the synth, you’ll then get the bytes that contain the values for your parameters, assign them to a variable (each one) and then assign that variable as the value for each modulator on your panel.
Here’s a shortened example of my “assignValues” method:function assignValues(midiMessage) -- create a variable that contains all bytes of program data from the synths program dump, get this info from synth's manual: programData = midiMessage:getData():getRange(7,256) -- cool, we've got everything, all we need to do now is actually assign the values to the modulators. --NOTE: use "setValueMapped" if the modulator is a combobox with custom values. --use "setModulatorValue" if the modulator is a typical modulator with a value range of, say 0-127 panel:getModulatorByName("Osc 1 Octave"):setValueMapped(programData:getByte(1), false) panel:getModulatorByName("Osc 1 Semitone"):setValueMapped(programData:getByte(2), false) panel:getModulatorByName("Osc 1 Detune"):setModulatorValue(programData:getByte(3), false, false, false) --continue for ALL parameters within your program dump.. . end
The complete thread is here:
Here is some noise I organised into an acceptable format:
https://soundcloud.com/lfo2vco/a-dark-crystal -
AuthorPosts