Sign in to follow this  
Followers 0
Sasha

Ableton Live controler/audio mixer

116 posts in this topic

It started like this quite long ago.

212447810_510279fd46.jpg

And, after months of regular juggling and struggling here is the result..

2233376620_dd6d88ac2c.jpg

More details, bigger view and mouse over notes at my flickr page: Ableton Live MIDI Controller/Audio Mixer

All comments and suggestions are welcome. Thank you.

Share this post


Link to post
Share on other sites

Great layout...like all your fascinating projects :)

Best Regards

Share this post


Link to post
Share on other sites

Thanks. I would like to see my projects getting done, already.

Sometimes, I have feeling I just draw all the time. But more I draw less I work by hands. I guess.  ;D

Share this post


Link to post
Share on other sites

nice layout Sasha.

are those Halo Rings I see around the buttons and encoders/pots?

Share this post


Link to post
Share on other sites

Thanks David. Not sure what is Halo rings but white circles are acrylic subpanel that holds pots. I would like to illuminate it if I have time to do it. It takes time if you want to do it right (not like Korg Zero! ...beter) If not it still looks better than just plane black panel.

Share this post


Link to post
Share on other sites

hi sasa

err it really pays off to do some art work (which i haven t done) amazing stuff. I was dropping by cause i ve read your blog on flickr and just wanted to warn you to check before hand connectivity issues with a usb sound card connected with a usb midi stream throguh a hub.Try to get a quality hub not the cheap stuff, multichannel soundcards need quite a bit of usb bandwidth and i had some problems with cheapo hubs, especially on windoz like dropsout and even disconnection.

cheers

simone

Share this post


Link to post
Share on other sites

Thank you for warning me Simone. I bought USB 2 hub, so using few USB 1 devices with it shouldn`t be a problem. Maya44 is USB 1 and USB MIDI interface is also v1. Anyway, I will try it extensively before integration, but I can always buy better hub. The one I bought wasn`t cheapest but all I found seams pretty cheap. Up to 10EUR.

Share this post


Link to post
Share on other sites

like it sasha it is your usual high standard

Share this post


Link to post
Share on other sites

Sasha that is very nice indeed, and ive never seen a controller so dedicated to ableton before.

Do commercial controllers like this exist?

I honestly never seen one so suited to ableton.

Jeez man, better license the design if thats the case, i could easily see a company cloning it.

Share this post


Link to post
Share on other sites

Thank you both.  ;)

Do commercial controllers like this exist?

Unfortunately, they don`t. Big, serious manufacturers obviously dont want to design so dedicated controller for only one software as not all using Live, or Traktor. Making it universal they take widest target group and only specialization for specific software are lexan layouts.

Jeez man, better license the design if thats the case, i could easily see a company cloning it.

Let they steel it. If I am manufacturer I would take all precautions steps, but as a DIYer it makes not much sense. Maybe one day some of them sees my potentials and employ me. I like to think tat way ;)

Share this post


Link to post
Share on other sites

well first of all, great controller i actually would like to have if you interested to make kits or something ;D ;D

second, the LCD display is great choice  ;D ;D

and, from my own POV, LEDs showing sounding volume of each channel should be moved closer to the buttons of these channels. Now, they are close to opposite channel buttons, altrough vertical lines separating each channel is coming straight down on them to intensify (can't find the correct word ::) their dedication. i think this situation is confusing.

i assume this is tabletop version, and i'd love to see some typography on faceplate describing what kind of creature we're upon to. ableton-custom--turbo-controller-live  ;) with signature of the name  ::)

Share this post


Link to post
Share on other sites
ive never seen a controller so dedicated to ableton before. Do commercial controllers like this exist?

Yes, one new controller exist and will be available next June for about 700$. The Vestax VCM-600.

http://www.djdeals.com/vestaxVCM600.htm

Pretty nice indeed but no encoder !!

080118a-sm.jpg

Share this post


Link to post
Share on other sites
well first of all, great controller i actually would like to have if you interested to make kits or something

Thank you Vlad. I could offer construction kit but I dont have plan to make all in one Wilbabeast style controller. 

and, from my own POV, LEDs showing sounding volume of each channel should be moved closer to the buttons of these channels.

LED bars have nothing to do with buttons, if they are VU meters it could make sense.

Let me explain... You see, I`m right handed, and when I operate fader I cover the button area, where you wanted to put LED bar, with my hand so it is completely unuseful.

Ergonomics is most important factor of my every design. Having the LED bar left by the fader is very important and logical as it shows actual fader position in software and fader itsef is "snap to" and it want always be in same position as LED bar. So, having both LED bar and fader visible is very important.

After alot of combinations I found this placement very useful.

altrough vertical lines separating each channel is coming straight down on them to intensify (can't find the correct word Roll Eyes their dedication. i think this situation is confusing.

I wouldn`t say confusing, but they are definetelly braking the separation. I did few designs with a line left from the LED bar but I decided this simpler look I like more. You know, I`m strugling with my military straight, perfectly symmetrical designing. I think I make this controler looks straight enough and just a bit freestlyle in same time.

i assume this is tabletop version

Yes, I never design rack units. They simple dont fit me.

Share this post


Link to post
Share on other sites

i'm curious why you try to make it that ultra-compact. i have to admit that when i first started my live controller projects i tended to pack everything on a very small space, but now things have dramatically changed.

i mean - it depends ond what music you are playing - but anyway i cannot believe that it will be comfortable to use such a knob packed space. and i could i magine that it's nearly impossible to quickly use a send to some delay and turn it back down in one move...

at the moment i have 3cm space betwenn my knobs in every direction. and still (okay i have 1cm knobs so they are quite big) it seems it would be nice to have a bit more space.

Share this post


Link to post
Share on other sites
i'm curious why you try to make it that ultra-compact.

First, I wouldn`t say it is ultra-compact. The dimensions are 563x253.

The reason for compacting is very simple. I live in shitty country where I cannot afford to buy myself a car. So, I think... if I need to drag some gear with me, I better make it compact. Music is my hoby, I`m not famous musician nor DJ who is earning money out of it and who has payed transportation expenses.

i mean - it depends ond what music you are playing - but anyway i cannot believe that it will be comfortable to use such a knob packed space. and i could i magine that it's nearly impossible to quickly use a send to some delay and turn it back down in one move...

I printed out this mockup file and put on top knob samples Prof sent me, and I can say it is not unconformable as it looks. The knobs (Re`an P670) are  11.5mm in diameter and just skirt is 16mm, so they have 15mm clearance around each knob. I find it pretty good. My fingers are really not that fat. ;)

Share this post


Link to post
Share on other sites

I have studied your pictures and really like your design, my compliments!

I can see why some people think you've got little space around the pots. I do agree a litlle with them. But I guess, you will get used to it in no time. The intuitive layout makes working with this controller really efficient.

The knobs I'm using are 20 mm in diameter and have a clearance of + 20 mm. So you can imagine I would strike it as a bit narrow ;)

I am really interested in the progress of your project!

Share this post


Link to post
Share on other sites
I have studied your pictures and really like your design, my compliments!

Thank you Rob

I can see why some people think you've got little space around the pots. I do agree a little with them. But I guess, you will get used to it in no time. The intuitive layout makes working with this controller really efficient.

I think it is intuitive too, but my intuition might differs from others.

The reason for thinking there is not much space must be increased by optical illusion that is created by knob skirt.

clerance_thumb.gif

2048_clerance_gifce6dca97f184ff118dc9501

Share this post


Link to post
Share on other sites

I feel so stupid!  :-[

After reading what Cimo said in this post http://www.midibox.org/forum/index.php/topic,10465.msg79256.html#msg79256

I realized my long and detailed planing, drawing and making few test PCBs are wrong.

I tested group function just with few encoders and not with buttons and I thought buttons are also affected by groups. So my bottom row of very important multi function buttons is useless now. :(  Its Ableton Live function meant to be changed by rightmost (group select) buttons "C" and "D"

So, If I use those A/B/C/D buttons to change MIDI channel instead of bank, as Cimo sugested as a workaround, will it effect MIDI channel change of current group or no matter what group is selected. I`m little bit confused with that meta event.

Having buttons organized in some kind of groups is more important to me than having grouped encoders as I already have dedicated pots for important controls.

All suggestions very much appreciated. Thank you.

stucked_thumb.gif

2116_stucked_gif81bb57184dc5c5ff22599e3a

Share this post


Link to post
Share on other sites

As you can see in that topic, I'm kinda searching for the same thing too. I would like to have the buttons on the encoders grouped together with the encoders. I don't know how to make a workaround yet..

But is it possible to shift the midi channel af a selected range of buttons using a bank shift command? so in this bank ald your dedicated control ( pots and faders) are all on channel 1 for instance and the other control on a different channel?

Share this post


Link to post
Share on other sites

hey

it s not always so nice to be proved right!

just a hint or two: in my box i decided to mount a MBLC and  MB64E that gives me a bit of more flexibility, and the automapping of the LC will ease the whole setting process.

A 2 cores solution could be useful in your case cause you could assign 1 core to the "fixed" parameters: start, stop, lcd, fixed function buttons, etc and another core to the "banked" parameter where you could use the midi channel swapping

Best thing would be coding your own app in C but i see your box is quite sophisticated and it could take a bit to do that.

EDIT: to make it clear: in a MB64E the group function affects only the encoders, the Meta event to change the channel will affect the whole box.

In a MBLC you have a GPC mode to have all controls sending normal MIDI data and a 2 layers function to double all the buttons/encoders

simone

Share this post


Link to post
Share on other sites
hey

it s not always so nice to be proved right!

just a hint or two: in my box i decided to mount a MBLC and  MB64E that gives me a bit of more flexibility, and the automapping of the LC will ease the whole setting process.

I did similar thing but as I don`t wanna occupies 2 pair of MIDI and don`t need any of LC extra features except to use just MIDI notes of mackie protocol onto regular MB64E to access all the controls that arn`t available in Live normal MIDI mapping support.

A 2 cores solution could be useful in your case cause you could assign 1 core to the "fixed" parameters: start, stop, lcd, fixed function buttons, etc and another core to the "banked" parameter where you could use the midi channel swapping

That was my original plan except I had in ming group switching instead MIDI channel switching, but I think it might be the same. I found a meta for switching to global MIDI submenu, bu not for direct access to MIDI ch1/ ch2...

Best thing would be coding your own app in C but i see your box is quite sophisticated and it could take a bit to do that.

It is not sophisticated. I think it is fairly simple...

MB64 handles roto pots and start,stop,active,record and cue buttons with corresponding LEDs and transport and navigation buttons.

MB64E handles faders, encoders and bottom 2 rows of buttons.

Cores are chained, and sharing one LCD.

About coding... I`m so out of it.  :-\

EDIT: to make it clear: in a MB64E the group function affects only the encoders

what about pots? same thing as with buttons?

the Meta event to change the channel will affect the whole box.

so, if I chain 2 cores it will affect both? That is bad in my case. :(

Will be solution to have group width 16. Use 10 encoders as encoders, and rest of encoders configured as a CC Inc/Dec and connect the buttons to their pins?

I think what Rob B suggested ..switching banks would not be practical for accessing so meny times. I would like to have fast switching back and forth. Would bank switching be suitable for this?

Share this post


Link to post
Share on other sites

Will be solution to have group width 16. Use 10 encoders as encoders, and rest of encoders configured as a CC Inc/Dec and connect the buttons to their pins?

That would a rather practical and easy workaround I guess? Does a group have to be 16 encoders? Or could you say: 16 encoder + 8 buttons = a group of 20 encoders which would be shifted back and forth?

I think what Rob B suggested ..switching banks would not be practical for accessing so meny times. I would like to have fast switching back and forth. Would bank switching be suitable for this?

It was suggested as a workaround in my midibox thread. I think Thorsten gave me the idea. Is there processing time for bank switching?

Share this post


Link to post
Share on other sites
Quote

hey

it s not always so nice to be proved right!

just a hint or two: in my box i decided to mount a MBLC and  MB64E that gives me a bit of more flexibility, and the automapping of the LC will ease the whole setting process.

I did similar thing but as I don`t wanna occupies 2 pair of MIDI and don`t need any of LC extra features except to use just MIDI notes of mackie protocol onto regular MB64E to access all the controls that arn`t available in Live normal MIDI mapping support.

..  sorry i don t get it, then you need LC protocol right? you can t have a MB64E and having  "a few LC protocol features in it", rather the other way round: a MBLC with some extra MIDI features (see the dB live).The protocol has to be initialized by the box and recognized in the host, if there is not protocol handling then you can t send LC events.

In other words, with just 1 MIDI port used it is mandatory to have the protocol initialized if you want to send LC events.

Quote

A 2 cores solution could be useful in your case cause you could assign 1 core to the "fixed" parameters: start, stop, lcd, fixed function buttons, etc and another core to the "banked" parameter where you could use the midi channel swapping

That was my original plan except I had in ming group switching instead MIDI channel switching, but I think it might be the same. I found a meta for switching to global MIDI submenu, bu not for direct access to MIDI ch1/ ch2...

there is direct access to channel switch via Meta Events, there is a table somewhere about the possible Meta Events, with the corresponding string for each channel.

Quote

Best thing would be coding your own app in C but i see your box is quite sophisticated and it could take a bit to do that.

It is not sophisticated. I think it is fairly simple...

well if

MB64 handles roto pots and start,stop,active,record and cue buttons with corresponding LEDs and transport and navigation buttons.
MB64E handles faders, encoders and bottom 2 rows of buttons.
Cores are chained, and sharing one LCD.
and
About coding... I`m so out of it.  Undecided
then
your box is quite sophisticated and it could take a bit to do that.

as you see everything is relative in this field, i lately discovered how easy it is to do some basic stuff with C but with lcd involved, banks etc. and no experience.. pfff

EDIT: to make it clear: in a MB64E the group function affects only the encoders

what about pots? same thing as with buttons?

i may be wrong so please somebody confirm: in MB64 pots are not defined in groups while in MB64E pots are included in the encoders table, so that from 1 to 64 you count the encoders while from 65 to 128 you count the pots.

the Meta event to change the channel will affect the whole box.

so, if I chain 2 cores it will affect both? That is bad in my case. Sad

i pretend i haven t understood the question..  ;)

Will be solution to have group width 16. Use 10 encoders as encoders, and rest of encoders configured as a CC Inc/Dec and connect the buttons to their pins?

nop, remember how an encoder works, here you are just interfacing it with a different driver, but you can t pretend that if you turn an encoder clockwise it will always close the contact on a single pin.... if you connect a button then you should use it like this:

to increment: R L R L R L

to decrement:R L R L R L R

to increment again: L R L R L

@ robb

That would a rather practical and easy workaround I guess? Does a group have to be 16 encoders? Or could you say: 16 encoder + 8 buttons = a group of 20 encoders which would be shifted back and forth?

open main.asm  on MB64E and have a look just at the first comment, you ll get a clear overview

it looks like it is time to "reinvent" a a new concept of hybrid box, LC is attracting more and more adepts since we all fell in love with Ableton, but it is missing some flexibility about free MIDI wheeling...

simone

Share this post


Link to post
Share on other sites
..  sorry i don t get it, then you need LC protocol right? you can t have a MB64E and having  "a few LC protocol features in it"

That is not true! I configured buttons and encoders of MB64E to test it and it works as it should. If you send A#6 @ Ch1 from any controller to Live, it will start playing. Also with other controls. When you chose Mackie in your Live host list Live waiting specific messages and sending specific messages. If received something not based on Macki protocol it ignores it same as MB64E ignores messages that dont understand that are comming from Live, like track names and such.

The protocol has to be initialized by the box and recognized in the host

if there is not protocol handling then you can t send LC events.

I`m really not sure what kind of initialization are you talking about. I didn`t initialize anything and it works as it should - both ways!

In other words, with just 1 MIDI port used it is mandatory to have the protocol initialized if you want to send LC events.

Yes, i know that but as I want to be using more than 8 analog pots that MBLC allows and LC cannot be chained to other MB I need one more MIDI pair for handling that another MB64/E.

nop, remember how an encoder works, here you are just interfacing it with a different driver, but you can t pretend that if you turn an encoder clockwise it will always close the contact on a single pin.... if you connect a button then you should use it like this:

to increment: R L R L R L

to decrement:R L R L R L R

to increment again: L R L R L

You are right. For a moment I thought I`m saved.  ::)

Share this post


Link to post
Share on other sites
a MBLC with some extra MIDI features (see the dB live)

The dBLive is not a MBLC or variant, the code isn't even based on the MBLC code - I didn't even realise there was a C version of the MBLC till I was about 95% done with the software.

.The protocol has to be initialized by the box and recognized in the host

I haven't found this to be true.

The easiest way to do what you need (assuming I have understood correctly) would be to set a variable to store the current selected bank, and using a switch or IF statements fire off different midi events depending on the bank selected.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0