julienvoirin Posted February 17, 2011 Report Share Posted February 17, 2011 (edited) Some news I've worked during long nights to enhance the ChaosMatrix application. The hardest has been to understand all the philosophy of the original firmware. It's a good philosophy, well documented and there are some fun tricks. So now it has : - Bankstick support. Up to 8 BS of 32KB, each contains 100 patches. Possibility to save patch into bankstick and recall them later. Still possibility to save into Matrix1000. from that : - Naming of patch is possible (2nd page of EDIT), name is stored into bankstick with the parameters of the patch (in fact EditBuffer[0,1,2,3,4,5,6,7] is stored as in Matrix6) - Internal router : possibility to route incoming midi signals to 4 IIC modules output, each one deriving its midi channel from the midi channel mentioned in PATCH menu (e.g channel 2 on IIC1, channel 3 on IIC2, channel 4 on IIC3, channel 5 on IIC4, midichannel set up is channel 2 in PATCH). By editing device.h, you still can force midi signal to default core midi out (replace 0x12, 0x14, 0x16, 0x10 by 0x00). Possibility to edit up to 4 Matrix using a single ChaosMatrix. - single patch dump from Matrix1000 : possibility to store a single patch from a Matrix 1000 to a bankstick memory (last page of PATCH menu). Memory location is defined by the encoder. to improve : - Bank dump : possibility to get a full Bank of 100 patches from the Matrix 1000 directly stored into one BS. Doesn't work except for 1st patch. Don't know if the dump goes too fast for the algorythm or if the algorythm is not good. -arpegiator : it arpégiates !! UP motif for the moment, works in beta0.53 but still in test. Arpegiator needs an extra button called DIN_ARP, or code must be moved (move ui_arp.c in ui_patch.c for example) Rq : if using an ultracore, remove ALL jumpers for IIC u069 indicates user Bankstick 0, patch 69 m000 indicate patch 000 on the matrix1000 A special BIG UP to JackChaos, TK and Bill as i've used some of their code blocks [edit : post edit due to bug in code ; now WORK :shifty: ]MatrixBoxSource_JV_beta v0.53.zip Edited February 18, 2011 by julienvoirin Quote Link to comment Share on other sites More sharing options...
roman_f Posted February 20, 2011 Report Share Posted February 20, 2011 dear julienvoirin thats a perfect job! is it a 3u rack panel? do you think if it's possible to fit the sound-engine of matrix 1000 into the same rack-box? thank you Quote Link to comment Share on other sites More sharing options...
jackchaos Posted February 20, 2011 Author Report Share Posted February 20, 2011 I agree, Nice work Julien. Does the Arpeggiator work? Quote Link to comment Share on other sites More sharing options...
julienvoirin Posted February 20, 2011 Report Share Posted February 20, 2011 Matrix1000 can't fit the same rack as it is too deep it is a 3U rack for the moment i work on the firmware, especially a good manner to get back the matrix 6 patches (it doesn't have the same sysex system as the matrix 1000, but it has the patchname :rolleyes: the arpegiator works, but you need a normal midi keyboard (i mean, note on AND note off , 0x90 & 0x80) as my roland Juno2 doesn't do the job for example( only note on, note off are produced as note on with a velocity null). i am still working on the arp code, as today you can change arp speed (from 1/32 to several bars) need to implement octave, other pattern like updown and maybe "swing" once firmware rather well developed, i will do a real PCB -not veroboard with wires- (or not, i still do not know) Quote Link to comment Share on other sites More sharing options...
julienvoirin Posted February 21, 2011 Report Share Posted February 21, 2011 (edited) demo of the arpegiator using 1/16 sync speed and 2 bars sync speed it sends midi clock and start message to the drummachine next step : external sync clockMatrixBoxSource_JV_beta v0.62.zip Edited February 21, 2011 by julienvoirin Quote Link to comment Share on other sites More sharing options...
jackchaos Posted February 21, 2011 Author Report Share Posted February 21, 2011 You're officially in the 'fun phase' of development. Quote Link to comment Share on other sites More sharing options...
julienvoirin Posted February 21, 2011 Report Share Posted February 21, 2011 ??? because of the video ? Quote Link to comment Share on other sites More sharing options...
jackchaos Posted February 21, 2011 Author Report Share Posted February 21, 2011 Because you have the hardware working and you have the development environment working. As long as you still have flash ROM available, you can make it do whatever you want! That's the fun part. Quote Link to comment Share on other sites More sharing options...
julienvoirin Posted March 15, 2011 Report Share Posted March 15, 2011 (edited) MatrixBoxSource_JV_beta changelog TODO : arp patterns updown1, updown 2 hold function in arp + sustain pedal msg hold function in arp arp.c : optimise against ghost notes, stackflush, mclock.c : clean code with more comprehensive var & fcts multieditbuffer (enough memory ?) beta 0.80 : ARP now automatically synced to external MIDI beat clock. BPM shown as "EXT" in this case. Beat LED automaticcally beating at external tempo while receiving external MIDI beat clock. Heartbeat LED moved to SHIFT Led for easier handling. bug fixes : tempo ranged 49-251 without artifacts no more 0xf8 event on I2C outputs beta 0.71 : 3200 patches memories (8x100x4) : needs 8 BS of 64K autonaming of patch while getting them from Matrix1000 (bank 200-900) bug correction : encoder increment & decrement patch normally minors enhancements in display beta 0.62 : supports non standard midi note off messages (e.g from Roland Juno2 alpha) up & down motif in arp, tested and working :) beta 0.61 : code optimised for compatibility with Matrix 6 previous versions : initial relaease any help welcome :thumbsup: code size = 50 KBytes !!MatrixBoxSource_JV_beta v0.80_ext_clk.zip Edited March 15, 2011 by julienvoirin Quote Link to comment Share on other sites More sharing options...
xarolium Posted August 1, 2011 Report Share Posted August 1, 2011 Dear Julien, I bought a matrix 1000 and i would like to built the controler I know that i need : -Pic Core module -1x AIN -1x DIN -1x DOUT -1x I2C module But i don't know how did you connect the DIN, DOUT , AIN on your Pot, Switch and Led Could you please tell me how do you do ? Thank you Xarolium Quote Link to comment Share on other sites More sharing options...
julienvoirin Posted August 1, 2011 Report Share Posted August 1, 2011 (edited) hi xaro the easiest is to get : an Ultracore (as you will need 8 bankstick and I2C) one DINx4 module from smash tv one DOUTx4 " 4 analog multiplexer CD4051 (as you will solder them on the control surface containing pots ans switches) Things are connected as in midibox64. Unused analog inputs are clamped to ground. Then din, dout and pots are defined in the application : din.c & din.h pots.c and pots.h numbers refer to http://svnmios.midibox.org/filedetails.php?repname=svn.mios&path=%2Ftrunk%2Fdoc%2Fmios%2Fmios_din_dout_pin_numbers.txt din.c: Has to be filled in (DIN_ConfigMap[32]) The dins need to be listed in order that correspond to their pin number in the array. And of course each entry must point to the the DOUT pin for its corresponding LED. din.h has a few of the pins in din.c #defined to improve code readability wherever its used. So make sure anything in din.h that starts off with #define DIN_ or #define DOUT_ pots.c: Rearrange the entries in PotConfigMap[] to correspond to their pin positions. Then edit the #define POT_OSC1_***, POT_FILTER***, etc. in pots.h to match their config in pots.c i followed jackchaos design, i only defined different pin numbers in order to simplify my building (shorter wires and copper). i also add some more buttons ans leds to enhance functions. have a look and come back if needed. Cheers Edited August 1, 2011 by julienvoirin Quote Link to comment Share on other sites More sharing options...
xarolium Posted August 1, 2011 Report Share Posted August 1, 2011 (edited) thx for zour fast answer I already have the Ultracore but how did you connect the matrix 1000 in Midi? Midi In MX1000 to Midi Out Core Midi Out MX1000 to Midi In Core Keyboard out to Midi In I2C is it good like this ? An other thing . Why, in your din.h file do you define two time the DOUT pin 4. once for DOUT_DCO2_CLICK and the second for DOUT_DCO2_NOISE Is it the same Led? Edited August 1, 2011 by xarolium Quote Link to comment Share on other sites More sharing options...
julienvoirin Posted August 1, 2011 Report Share Posted August 1, 2011 i do not use the midi out of Matrix (no handshake). i only plug the i2c out to their midi in the only one time you will get midi data from Matrix is when you will save its presets in the bankstick ultracore uses its core midi in (receive midi notes, program change, CC, clock and forward them to I2C) and core midi out (program change, clock ...) Is it the same Led? yep, check Matrix 6 user manual Quote Link to comment Share on other sites More sharing options...
tonysnail Posted October 14, 2012 Report Share Posted October 14, 2012 Hello peeps! Did anyone ever successfully get this project working with a Matrix 6? The question's been asked a couple of times before in this thread, and other than a nod towards using a Behringer controller, very little was said.. I've got some old MB cores lying around from my SID-making days (successful they were too!), and I want to build a controller surface into the top of my Matrix 6 keyboard.. Best wishes, Carl Quote Link to comment Share on other sites More sharing options...
julienvoirin Posted October 14, 2012 Report Share Posted October 14, 2012 it does, but the code needs extra sysex if i will remember. my last code includes the M6 feature. now my opinion : editing the Matrix is OK, but automation can't be used in any DAW as the Matrix CPU is definitly too slow to avoid jitter effect. for example a filter sweep is awful. so considering the time to build it, it is finally more easier to simply use a software control like M1000-X. Quote Link to comment Share on other sites More sharing options...
Pitir Posted February 19, 2013 Report Share Posted February 19, 2013 (edited) I really want to build a dedicated hardware controller for my M1000. I have little to no experience but I got time and people around me that can help. I'm in an electronic workshop at my university where we learn the absolut basics. Trying to do some circuit bendings and stuff. Would it be a stupid idea to try build a fully Chaos Matrix? Do I need any other knowledge beside following the links and content on the Chaos wiki page? If I would try to build a more humble controller with just, say about 20 knobs that I assign to the most important stuff to tweak existing patches. No saving, no lcd display etc. Can you point me to the right direction of what I need? Parts, similar projects, articles... Any tips would make my day! I've seen a lot of diy midi controller kits and got really exited. But I seems they just for sending CC. A lot of diy DJ controllers for ableton etc. Can't find one that is designed for sending sysex strings. Or maybe I got it wrong, not realizing all these controlls can send sysex but no one is using it that way? I could just get a BCR2000, but I want my own organized and designed panel. And I want to learn for future projects. Best Peter Edited February 19, 2013 by Pitir Quote Link to comment Share on other sites More sharing options...
ilmenator Posted February 20, 2013 Report Share Posted February 20, 2013 Welcome here! For the MIDIbox part of the controller universe, you might want to look at the MB NG. It runs on the LPC17 core (much more powerful than the PIC core used in the Chaos Matrix) and can be configured to handle SysEx messages rather easily. Storage is done via SD cards. It is surely going to be more expensive than a used BCR2000, but you will be able to configure it exactly as you want. Do some reading and come back with more detailed questions here. Good luck, ilmenator Quote Link to comment Share on other sites More sharing options...
Pitir Posted February 20, 2013 Report Share Posted February 20, 2013 Thanks! Will look into the MB NG! Yes, the price isn't whats trigger me to build one. I want to made a good looking dedicated controller, designed och configurated as I want :) Quote Link to comment Share on other sites More sharing options...
julienvoirin Posted February 20, 2013 Report Share Posted February 20, 2013 if you want to really and only control Oberheim Matrix, you MUST build a matrix controller and not a generic one. definitly a great tool that helps me regularly to create new patch Quote Link to comment Share on other sites More sharing options...
Andy Birko Posted September 16, 2013 Report Share Posted September 16, 2013 (edited) Hi all, I just discovered this site and am way impressed. I'm the owner of a Matrix-6 that I bought new in 1985 and have been dreaming of a dedicated knobby controller for it forever. I have a Mackie C4 that I use now but it's a real hassle to have to fire up the computer and everything to get it going and it doesn't have a stand alone mode so taking it on the road is more complicated (I don't use a laptop live). Anyhow, I'm thrilled to have found this project and hope I can get to building one myself. I've still got a lot to learn about how to get the whole midibox thing up and running but, I was able to program embedded controllers at one point of my life so I'm sure I'll be able to figure it out again. My thoughts are to make something that sits on the keyboard, perhaps held in place with magnets or something like that. I would love to have it have that old Oberheim look. Does anyone know a source for the buttons that Oberheim used on the older synths like the OBx? They're the same ones that the Access programmer has. Don't know when I'll get started but again, really cool project! Edited September 16, 2013 by Andy Birko Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.