Jump to content

MIDIbox Live - Trigger


ultra
 Share

Recommended Posts

i have started the design for the first of a series of ableton live controllers.

this controller will be a clip triggering device that automatically integrates with ableton live (that's right, no configuration or midi mapping whatsoever) using a liveapi script that i've been working on for quite a while. the hard part is done, which is a communication protocol over midi that allows a midibox to seamlessly communicate with ableton live. that means that you can build this box, plug it in via usb, select the control surface, and start triggering clips.

front panel design (tentative, adding more controls is possible and i'd like some feedback):

buttonpad-fp.gif

the buttonpads:

builder_btn_sm8x8_iso.jpg

this grid will allow control of an 8x6 grid of clips. i wanted 8x8, but there wasn't enough room. still, it's +1 over an apc40 ;). the 7th bottom row is for stopping clips, and the 9th row on the right is for scene triggering. the encoders on the left will select which set of clips are controlled by the grid (x/y). the screen will show ableton's red box that the apc40 uses so you can see which clips you are controlling (box is movable with the encoders):

launchpad-ableton-screenshot.png

underneath the buttonpads will be bi-color leds. automatic feedback from live will turn on the led of a clip is present (off if not), turn green if the clip is playing, turn red if the clip is stopped, and blink in beat time if the clip is queued for triggering. the stop buttons will light up red if a track doesn't have a clip playing (i suppose this is more for looks/consistency), and the scene buttons will show which scene is launched.

the case will be an easy to get, relatively inexpensive pac-tec pt10:

Pactec-PT-10-300x178.jpg

i am hoping to use the same case for the rest of the series of ableton live controllers.

i'm looking for feedback from anybody who would be interested in a kit. the kit is not yet guaranteed because i haven't yet asked tk, and i'd have to look into feasability/prices. i think this box could be pretty easily built for under $200. maybe much less. i would like to continue with a series of kits which will work in a modular fashion (picture 3 PT-10's on your desk, each with a different form of control) and all of which will communicate with live automatically, with no midi mapping. once i get going, i could create additional controllers pretty quickly because the hard part is done.

keep in mind that there's not much room left on the panel, so there will be no lcd. a few more buttons/knobs for additional functions are possible.

let me know what you think and what should be added.

thanks,

ultra

Edited by ultra
Link to comment
Share on other sites

sweet idea! does your live api support motorfaders? like if a fader is moved in ableton, it will move on the controller as well? and will the api support led-ring knob states like the apc40 does? because if your api will meet these two criteria, i'm going to sell my apc40 immediately and build my own abelton controller. with a hell lot of knobs!! :-D

Link to comment
Share on other sites

synchronizing a motorfader or led ring could be done pretty easily, since these values are automatically updated in the midibox if i write the code to do so. if you want to create something custom for yourself, you'll have to know how to code in C and python. otherwise i'm open to getting some help in designing the other controllers, which are a main/mixer type, and an instrument programmer/knobbox. ideally i'd have them in pt-10 cases since they're easy to find and work with, but i'm not sure if motorfaders, plus other devices, will fit into them.

Link to comment
Share on other sites

okay, as an user of the apc40, i'm pretty unhappy with its limitations.

the matrix doesn't support rgb-leds, everything is green. or red when launched. but you can't distinguish one clip from another. when looking for a specific clip you want to launch, you first have to process/think about the pattern in the ableton session, then you check back the pattern on the apc40, then you launch the clip. but all this processing/thinking/aiming about pushing the right clip is pretty time consuming and kills creativity and your flow.

so for example, if the api could tell the controller that the drum clips are violet and the synthesizer clips a blue and the matrix-leds therefore indicate the drum and synthesizer clips in their colors, it would be like being a child on christmas eve. or alice in wonderland with all the colors. :frantics: don't know if that's feasible but your impact on the artists using such a matrix would be huge.

oh and regarding the faders of the apc40. it's such a joke, i don't know who is using this thing for a professional live session on stage. because if you load a session into ableton, start some clips and then move a fader trying to increase the volume on a channel for example - it does nothing. first have you have to move the fader to the top and then it will do something. but the audience will be super happy if the fader first have to reach the maximum volume level before you can choose the right one you need. it's nearly impossible to use it in a professional way. if your api could eliminate this joke you probably could earn a huge sum from ableton, because the current situation is rather unsatisfying.

so enough with this rant, it's just the current situation with the apc40 and i'm looking forward to contribute something towards a better ableton controller. i'm a bad programmer, so maybe i should design a case or something.

Link to comment
Share on other sites

the problem with the colors is that i'm limited to 2 with a duo-led matrix. but i think that perhaps there's another way to identify which clips are loaded onto the trigger pad? perhaps a preview button that you simply hold while you tap a trigger, and then ableton live puts the red box around just that clip until you release the button. that is quite possible and also very easy. in fact, i think i'll implement that into the app right now. currently i'm using a trigger finger for this, but i'll get around to developing a control surface pcb soon that will include the livid buttonpads.

regarding issues with the faders, you can do whatever you want with motorfaders (if i were to use them in one of the projects). when the midibox first starts up, it asks live for whatever existing parameters are necessary. so the motorfaders could simply move to the appropriate location. also, when you open another live set, it'll adjust accordingly.

definitely not looking to earn anything from ableton. they don't support the liveapi hack, they just allow it to happen.

if you have more ideas regarding this button grid (keep in mind that a mixer type, dj type, and instrument type are in the future) please feel free to let me know.

ultra

Link to comment
Share on other sites

i haven't much discussed the other projects. ideally i'd like them all to fit into PT-10 cases as pictured above, but i'm not sure things like motorfaders will work well.

main mixer: will allow you to control 8 tracks of volume, pan, etc, bankable. also controls the transport, bpm, toggles session/arrangement view, and can include various other functions such as undo/redo, hide/show browser, hide/show detail, etc. for the most part it will look like a regular mixer. as an option, banking the tracks can cause the red grid to move, and the trigger box to change accordingly, and vice versa (all these boxes will have the ability to follow each other via the live script).

dj box: a 2 or 4 track box specifically designed for djing. will include volume controls and crossfader, as well as eq controls (non-detented rotary encoders) that automatically map to the eq device. it also can include encoders/buttons that allow you to select a scene and fire it. bpm control of course. crossfader assign is also possible, but as of right now that's one of the few live functions i haven't been able to figure out.

instrument programmer: i've been able to scan for available instruments and automap, in a sense, to their controls. my idea for an instrument programmer is one that detects the active instrument and adapts to it. initially, you'd have to set up the knob/switch box for how you would like the layout to be. but then these can be stored to an sd card, and recalled automatically. so whatever you're doing in live, editing a clip, instrument, etc, this box can follow and adapt.

lcd: this would be the last box i'd build, if i'd make it at all. it's possible to download track/clip/scene/device/device control names to the midibox and display them on an lcd. if i could find a big enough lcd to display the information i want, you could virtually eliminate a computer screen when playing live. it also could be used as an add-on for each box listed above. for example: you could show the names of the 8x6 clips and scenes that you have highlighted on screen. or, show the parameter names you're controlling with the instrument programmer. i have the ability to load almost any piece of information i want regarding live into the midibox. but it might make more sense to find a way to add the lcd to the other boxes.

just some thoughts, this is a lot of work and all in the future, but like i said the hard part is done and these things are all very possible.

ultra

Edited by ultra
Link to comment
Share on other sites

i'm a bad programmer, so maybe i should design a case or something.

the reason i want to use the pac-tec pt-10 is because it's compact, inexpensive, and easy to get. the idea is that anybody will be able to build this without having to build anything custom. if you know of another case, tell me plz.

Link to comment
Share on other sites

the reason i want to use the pac-tec pt-10 is because it's compact, inexpensive, and easy to get. the idea is that anybody will be able to build this without having to build anything custom. if you know of another case, tell me plz.

About RGB LEDs. i think krisschneider has a very good point. Is it impossible to do RGB LEDs? I would be sooo nice...

Link to comment
Share on other sites

i have the ability to load almost any piece of information i want regarding live into the midibox.

ultra, that's awesome! :-D

okay i understand what you are planning. easy kits for diy. well, as you are bound to a duo-color matrix there's nothing i can think of what can be added. the preview button sounds reasonable. doesn't eliminate the time factor when doing something on the fly, but at least it's less prone to pushing the wrong button.

as for the instrument programmer. maybe you could add a battery of switches to switch on/off certain synthesizer features. sometimes you have menus with 3 or more features you want to select, but you can only choose between them via midi. for instance, midi value "1" is a saw wave, "64" is a sin wav and "128" is a square wave. sometimes i want to switch an osc on the fly, but i haven't seen a controller which features a programmable switch to switch between those 3 states. the apc40 has a switch to select different devices in a track, but a lot more of them are required if you want to do awesome stuff.

for the dj box: if motorfaders are supported it would be awesome, because of above mentioned problems. if they fit a pactec-10 it would be ideal.

the lcd controller is a good idea, too. my dream controller would have a matrix of those switches:

http://www.rjselectronics.com/?Q5_Programmable_LCD_Key

so yeah, i'll keep on dreaming :ahappy:

the reason i want to use the pac-tec pt-10 is because it's compact, inexpensive, and easy to get. the idea is that anybody will be able to build this without having to build anything custom. if you know of another case, tell me plz.

unfortunately, i don't know a suitable case. i thought about building one myself. and if one is build, 5 or more can be built simultaneously for giving something back to the community.

Link to comment
Share on other sites

hi ultra,

can your api read out the clip description and its colors from ableton? if so, i am thinking about getting myself a basic midibox

and a development kit -- http://www.screenkeys.com/prod_democomII.shtml -- for above mentioned lcd-keys and see how far i'll get.

can't promise much, i'm totally new to programming, but i'm thinking: if i won't do it, who else will do?

best

martin aka kris

Link to comment
Share on other sites

the screen keys would be fun to play with, but i can't see a midibox driving enough of them for a clip grid.

i don't think there's any support for a matrix of rgb leds. i certainly don't want to design it or write a driver, not that i'd know how. i'm not that advanced of a programmer. i think that if we can't have infinite colors, then two should be enough. what would you use the third color for? apparently there's a configuration of the blm that will strobe the red/green for a yellow effect, tho i'm not even sure that's necessary.

i am able to read clip names and colors into the midibox, but to implement it i would need a specific purpose since i'm no longer making this in the same way i was before.

i do think it's a shame to have the ability to read clip names and not put them on the midibox. if i could find a bigger case, i'd add an lcd. also, features i might want to add later should have an lcd anyway. but the problem is finding the right case that's easily available and at the right price. i see this box as also being useful as a drum programmer and step sequencer, and i'd need an lcd for configuration.

also, a big lcd would be needed to display clip names for 8 tracks and six rows, plus scene name. if you wanted even 6 characters per clip name, you'd need 62 chars across, including spaces. i'm not sure the DOGXL will even have this. there are probably displays that are this big, but i'm not sure if any drivers are written (also would have to be cheap and readily available).

Link to comment
Share on other sites

i do think it's a shame to have the ability to read clip names and not put them on the midibox.

that's what i'm talking about. my problem is, that when the clip matrix gets crowded, you're no longer able to differentiate between the clips.

especially when more than 8 tracks will be used in a session and you are browsing with the red box. i'll make a video tomorrow to show you what i mean. it's just a big timekiller, thinking which clip in ableton corresponds to which button on the matrix.

my idea was that your api is telling the midibox the name and color of the clip which then will be routed to a seperate module with the lcd-switches.

as your api seems to already tell the midibox the clip's name, it would be awesome if the api could additionally tell the MB the clip's color.

but as i do not know how much work this will involve, i'm already happy that your api is supporting motorfaders and clipnames.

so i guess i should put my money where my mouth is, sell my apc40 asap and get a core32 module and a development kit for the lcd-switches.

basic idea:

post-7120-047166100 1285173645_thumb.jpg

Link to comment
Share on other sites

i don't think there's any support for a matrix of rgb leds. i certainly don't want to design it or write a driver, not that i'd know how. i'm not that advanced of a programmer. i think that if we can't have infinite colors, then two should be enough. what would you use the third color for? apparently there's a configuration of the blm that will strobe the red/green for a yellow effect, tho i'm not even sure that's necessary.

i am able to read clip names and colors into the midibox, but to implement it i would need a specific purpose since i'm no longer making this in the same way i was before.

The blm_x driver can handle RGB LEDs:

http://svnmios.midibox.org/listing.php?repname=svn.mios32&path=%2Ftrunk%2Fmodules%2Fblm_x%2F

You could ask "this" for integration assistance.

also, a big lcd would be needed to display clip names for 8 tracks and six rows, plus scene name. if you wanted even 6 characters per clip name, you'd need 62 chars across, including spaces. i'm not sure the DOGXL will even have this. there are probably displays that are this big, but i'm not sure if any drivers are written (also would have to be cheap and readily available).

a DOGXL driver already exists under http://svnmios.midibox.org/listing.php?repname=svn.mios32&path=%2Ftrunk%2Fmodules%2Fapp_lcd%2Fuc1610%2F

It has been created by Phil Taylor, and was also tested by Wilba

However, with the 4x6 small_font only 40x13 characters could be displayed. You would need two displays (the driver supports this)

Best Regards, Thorsten.

Link to comment
Share on other sites

krisschneider: apparently tk's link to the blm will allow 7 colors (per bugfight, thanks). i do have the ability to not only read live's clip colors, but set them as well. perhaps the grid could be limited to these 7 colors. for instance, if you try to select one of the 60 colors in live that doesn't exist to us, it just forces it to the nearest color. also, preset patterns could be stored in the midibox and set in live. but this is all details, the blm is a bit daunting to me and i have no idea how it looks via code, but i am thinking this is worth doing and i'll figure it out as i go

The blm_x driver can handle RGB LEDs:

thank you tk, this will be perfect if i can get the leds to actually fit under the buttonpads.

However, with the 4x6 small_font only 40x13 characters could be displayed. You would need two displays (the driver supports this)

again, thanks. 80 lines across two displays would get me 7 chars + a space per clip name, plus an additional 7 chars on the left side for something else (assuming 4 tracks + scene names on second display). i think this is worth doing as well, and i'd really like to find a way to put the lcds in the same box as the clip matrix. it just stinks that there aren't many desktop type cases available. if i removed another row of clips, it would fit into that seq case, but i'm not sure how you feel about handling non-seq orders with this tk.

Link to comment
Share on other sites

no kidding nils, my seq went thru so many iterations as i learned more about electronics. ended up costing me a lot of money.

i've made a new layout for the clip trigger device:

buttonpad-fp3.gif

now i have 2 dogxl lcds, a custom FPE case, and plenty of room for additional controls.

going the custom case route is more expensive, but in the end i'll have exactly what i want. for a main mixer box, motorfaders are absolutely possible. so is showing track names, eq and other parameter values, etc. now anything is possible.

Link to comment
Share on other sites

@tk: great to hear that rgb-leds are supported! i guess it doesn't make a difference if they are smd-mounted? at least if you are ignoring having them soldered.

@ultra: 7 colors are more than sufficient! if your api forces ableton's colors to the nearest possible color, great. at least you can distinguish them. haven't made a video for you so far. my condo is in a mess and i'm lazy to clean it up before making this video. hope i'll find some energy soon.

aren't the dogxl-displays a little bit of an overkill? but looks definitely interesting! have you thought about track selection buttons and solo buttons? you would have to add 2 more button rows, but they come handy. for example, selecting a track and changing the parameters of a plugin.

or mute all other channels out.

for some visualization for what a rgb-matrix could look like, i made a rendering of my rgb lcd-switch matrix idea:

post-7120-036740200 1285342990_thumb.jpg

Edited by krisschneider
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...