MIDIbox CV V2 Concept
#41
Posted 23 January 2012 - 00:16
#42
Posted 24 January 2012 - 17:42
The bassline sequencer is up&running!
![]()
Specs:
- each CV channel has a dedicated sequencer (-> 8 bassline sequencers are running in parallel)
- typical 303ish entry with Key/Octave/Gate/Glide/Accent
- optionally sequenced values can be entered directly (fader at the left side) for direct CV modulation independent from note values
- 8 sequences per channel, each sequence has 32 steps
- EnvMod and Accent are forwarded to the modulation matrix
- selectable resolutions (e.g. 96th, 48th, 32th, 16th... but also triple and dotted measures)
- selectable gatelength (used for all steps)
Best Regards, Thorsten.
#43
Posted 13 February 2012 - 05:17
Haha no shit, this looks amazing!
#44
Posted 23 February 2012 - 18:02
I almost missed this point, wow cool! Do you think we could get into quantising external CV signals? That would be killerBut the possibility to route analog input signals into the modulation matrix is on the agenda
So my suggestion I've not seen in the thread yet would be to also support some analogue trigger in and outs, for example to sync external analogue LFOs, sequencers etc.
#45
Posted 26 April 2012 - 23:12
Any new updates?
#46
Posted 26 April 2012 - 23:18
There is still no HW control surface, but I will probably implement another editor with Ctrlr so that MBCV can be configured with a common computer as well.
Best Regards, Thorsten.
Buy TK a Beer Disclaimer: buying TK a beer gets you absolutely nothing in return likesuchas firmware enhancements, technical advices and MIDIbox troubleshooting assistance.
#47
Posted 27 April 2012 - 15:51
Even if we could re-use the mb-6582 control surface PCB as one potential mb-cv2 control surface, it would be good. (I'd like more sets of knobs, personally, as tweaking two filters or two envelopes at the same time is quite common). The ability to do that and record all the knob twists to a track would be amazing! The ability to record and replicate anything I do w/ my modular in the MIDI realm would be amazing
#48
Posted 27 April 2012 - 15:57
I'm personally more interested in the physical control surface. I like to play my synths like instruments.. (very hands on.. I dislike screens and menus when it comes to my old analog gear)
Even if we could re-use the mb-6582 control surface PCB as one potential mb-cv2 control surface, it would be good. (I'd like more sets of knobs, personally, as tweaking two filters or two envelopes at the same time is quite common). The ability to do that and record all the knob twists to a track would be amazing! The ability to record and replicate anything I do w/ my modular in the MIDI realm would be amazing.
I agree with you, but I'm pretty sure TK is planning on a physical control surface. He just wanted to get the basic design down where it is more fluid and cheaper (in software). Even if he doesn't, I wouldn't think it would be too difficult for someone else to add.
For today, though, you can accomplish basically the same thing with a MIDI controller and CTRLR and could even build a customer MIDIBox controller if you so desired. You could even put those two things together in the same box such that the difference would be almost indistinguishable from a native control surface.
#49
Posted 30 April 2012 - 16:31
Building a new semi-modular synth around this midibox cv2 project seems like a very good idea, though.
I might have the wrong idea about this project, though. Since I found this thread from the other post where the guy was asking about some SID functionality, the first thing that popped in my head was patch recall. Basically, I was thinking i'd sort of permanently assign cv outs to osc's, filters, vca's, etc. Then be able to adjust all the settings and save it as a patch. Basically a little synth like the sid, only all analog. (and only one voice, instead of 4(or8))
Is that possible, or have a gone too far outside of the "midi-cv" box?
-Edit, I just read the midi-cv page and it has answered a lot of questions, and I see it's basically designed w/ patch recall in mind. This new one w/ the LFOs and EG's and all is a LOT more useable in that area, tho.. I'm excited!
Edited by wicked1, 30 April 2012 - 17:55.
#50
Posted 30 April 2012 - 17:11
Is that possible, or have a gone too far outside of the "midi-cv" box?
I don't have one yet (the old or new MBCV), but to my knowledge, you're not too far off. The new MBCV will have patch recall, in addition to LFOs and all sorts of fancy things. It will eventually also have a hardware control surface option (but the software control surface is being designed first). Obviously you still need something that makes noise and speaks CV but sounds like you already have that covered.
#51
Posted 30 April 2012 - 17:35
If you've got a little 3 osc synth, I can think of a lot of reasons you'd want to be able to fade each osc in/out of the mix. Would u rather have 3 VCF's or 3 VCA's? (Trying to think of a good way to assign the 8 available cv's)
so like, 3xOSC to 3x filters to mixer to one VCA, or 3xOSC to 3xVCA to mixer to one filter.. then maybe a final vca?
#52
Posted 30 April 2012 - 17:43
Would u rather have 3 VCF's or 3 VCA's? (Trying to think of a good way to assign the 8 available cv's)
so like, 3xOSC to 3x filters to mixer to one VCA, or 3xOSC to 3xVCA to mixer to one filter.. then maybe a final vca?
My personal opinion on that is that analog filters make me really excited. So I will always pick VCF first I think. My application will be for an external filter for my SID and GameBoy so I will be adding additional capabilities as opposed to going all analog and won't have too much of a problem there. I do eventually want to move to an analog modular setup (or something like that).
Either way, you could always, in the worst case, just build multiple MBCVs if you need more CV inputs. I would think, in that case, having a 3xOSC, 3xVCA in one, and VCF's in another would make the most sense? I suppose that's not quite as ideal as it could be but still rather flexible I would think.
#53
Posted 30 April 2012 - 19:14
Either way, you could always, in the worst case, just build multiple MBCVs if you need more CV inputs. I would think, in that case, having a 3xOSC, 3xVCA in one, and VCF's in another would make the most sense? I suppose that's not quite as ideal as it could be but still rather flexible I would think.
If it could be possible to do that and save it all under one patch, w/ one "brain".. (I need to read up on MB stuff again
That would be great!! (But I'm kind of liking the new simple semi-modular synth idea right now.. My modular has grown to the size of my first apartment, and can't leave the house. A little midi-capable analog synth w/ all these time synchronized lfo's and eg's would be amazing (still 16cv's vs the 8 would be ideal))
Edited by wicked1, 30 April 2012 - 19:15.
#54
Posted 13 August 2012 - 21:43
Could be an amazing hybrid Digi osc/Analogue filter hybrid, all it would need is for this to be modded slightly to have a MIDI out to trigger the Bassboys and the ability to add 12 controls for the Bassboys
#55
Posted 14 September 2012 - 22:30
since on year I try to get some buchla modules done, but unfortunately things go slow. One module will be a midi2cv module. So I follow this thread since the beginning with a lot of pleasure.
Last Christmas I got the iPad2 and I use it a lot for music and all sort of things.
Since I got an lpc17 core module for my seq4 and an old aout cv interface ( max525) I was very happy to see this development here with the new midi2cv module.
I bought lemur (most expensive app ever) and tried the new midi2cv v2 app trough the websvn. It worked very unstable like described in an other topic, because of an broken aout driver. I waited a couple of month (went to china in the summer) and then Since the last update it works beautyfull and it is absolutely incredible to sit in front of my modular and have my iPad in my hand and control CVs, without any cable. Very nice. Thank you Thorsten for that experience.
After some time playing around I thought it would be nice to play with the multiball object which is inside lemur and to have a simple keyboard.
I looked at the code inside the lemur midi2cv file and figured out some things. But as so often not enough. Multiball is sending data to the same address as the octave knob for example. I works but not nice.
I am absolutely at he beginning to dig in but I don't understand this whole OSC NRPN thing. I just don't know what the core understand. And because i have a hard time scripting as well we understand each other not so good.
I found nothing in the forum about this so I need to ask here and hope for support. At the moment I am really stuck at the point to program a button in lemur which sends a note_on to the core which updates the cv of channel 1 and sets the gate1 high.
Thanks for all your enlightment in this matter.
Chris
#56
Posted 16 September 2012 - 20:33
glad to hear that you already managed to get to this point!
The low-level function which sends NRPN controllers is sendNRPN(nrpnNumber, nrpnValue)
Both parameters are 14 bits.
decl chn = 0;
decl nrpnNumberMsb = (nrpnNumber >> 7) & 0x7f;
decl nrpnNumberLsb = (nrpnNumber >> 0) & 0x7f;
decl nrpnValueMsb = (nrpnValue >> 7) & 0x7f;
decl nrpnValueLsb = (nrpnValue >> 0) & 0x7f;
if( nrpnNumberMsb != lastNrpnAddressMsb ) {
lastNrpnAddressMsb = nrpnNumberMsb;
midiout(0, {0xb0 + chn, 0x63, nrpnNumberMsb});
}
if( nrpnNumberLsb != lastNrpnAddressLsb ) {
lastNrpnAddressLsb = nrpnNumberLsb;
midiout(0, {0xb0 + chn, 0x62, nrpnNumberLsb});
}
midiout(0, {0xb0 + chn, 0x06, nrpnValueMsb});
midiout(0, {0xb0 + chn, 0x26, nrpnValueLsb});
oscout(0, '/1/nrpn', {nrpnNumber, nrpnValue});
As you can see, there is a check if the last MSB or LSB of the address byte has already been sent.
Both variables need to be initialized in - this is done in resetNRPN(), called from init() - and init() will be executed "on load" as you can see in the Execution field.
// initialize with invalid values lastNrpnAddressLsb = 0xff; lastNrpnAddressMsb = 0xff;
This should do the trick in a new panel.
If you doing modifications in my own panel, I would propose to call sendCVNRPN(), because it adds the selected channel to the NRPN number.
Best Regards, Thorsten.
Buy TK a Beer Disclaimer: buying TK a beer gets you absolutely nothing in return likesuchas firmware enhancements, technical advices and MIDIbox troubleshooting assistance.
#57
Posted 21 September 2012 - 15:23
thanks for your answer and help.
during the week i managed to work on my code every day for a few hours. I found out a couple of things. First thing i wanted to build was this standard keyboard:
http://midibox.org/f...-1348235779.png

Since i could`t find anything about note_on and NRPN a tried the: Note Events: /<chn>/note <key-number> <velocity> line found at the "MIDIO128 V3" under "Supported OSC Packet Formats" page.
oscout(0, /1/note, {value, value2}); --> sends out a noteon with the note (value) and velocity (value2)
oscout(0, /1/note, {48, x}); --> sends out a noteon with the note 48 and x = (1) button pressed: velocity (1) (Gate high) () and x=0 button depressed: velocity (0) (Gate low). As long as the script is connected to "On Expression" and (x).
With this i managed to get to this code for the white and black keys. It is heavily copied from the Sequencer keys and i guess is too complicated. But it works. Only drawback so far is that there is sometimes no Note_off and the gate stays high. But so far i am very satisfied by this.
On the weekend i will scale it down for the iPhone.
Next will be the Multiball elements.
Christoph
decl changes = nonnull(x - last_x);
decl i;
decl cv_2 = '/8/note';
if( selectedCvChannels & (1 << 6) )
cv_2 = '/7/note';
if( selectedCvChannels & (1 << 5) )
cv_2 = '/6/note';
if( selectedCvChannels & (1 << 4) )
cv_2 = '/5/note';
if( selectedCvChannels & (1 << 3) )
cv_2 = '/4/note';
if( selectedCvChannels & (1 << 2) )
cv_2 = '/3/note';
if( selectedCvChannels & (1 << 1) )
cv_2 = '/2/note';
if( selectedCvChannels & (1 << 0) )
cv_2 = '/1/note';
decl value;
decl whiteKeys = {0, 2, 4, 5, 7, 9, 11};
for(i=0; i<sizeof(changes); ++i) {
decl ix = changes[i];
if( x[ix] ) {
decl oct = floor(127*StepValue.x / 12);
decl value = 12*oct + whiteKeys[ix];
StepValue.x = value / 127.0;
oscout(0, cv_2, {{value}, x[ix]});
}
else {
decl oct = floor(127*StepValue.x / 12);
decl value = 12*oct + whiteKeys[ix];
StepValue.x = value / 127.0;
oscout(0, cv_2, {value, 0});
}
}
last_x = x;
Attached Files
#58
Posted 21 November 2012 - 09:58
Sorry for the newbe ask but there is a concept that is not clear for me ( cause I am a beast in english ):
This new CV will generate ADSR voltage (built in envelope generators and LFOs ) while the V1 make it receiving CC message ?
or better : I can open ( modulate )the filter or the VCA with the Envelope Generator and not only with a knob ( encoder ) on a control surface ?
Thanks for any clarification
regards
Antix
#59
Posted 21 November 2012 - 23:17
yes, that's correct.
The PIC based MBCV V1 doesn't provide modulation sources for the CV outputs
Best Regards, Thorsten.
Buy TK a Beer Disclaimer: buying TK a beer gets you absolutely nothing in return likesuchas firmware enhancements, technical advices and MIDIbox troubleshooting assistance.
#60
Posted 18 December 2012 - 22:21
I'm looking forward to experimenting with all these great features that you are building into the code. : )
I just ordered my first LPC module and LPC1769.
cheers~
Jay
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users





