DJing Discussion

This area is for discussion about DJing in general. Please remember the community rules when posting and try to be polite and inclusive.

MIDI Foot Controller for Serato

Neil Cutler 6:12 AM - 21 August, 2014
I'm curious if anyone has used MIDI foot controllers with Serato?

I'm a DJ with Left Hemi Cerebral Palsy (left side has very limited use). I've set it upon myself to learn to scratch. So far I've been able to moderately perform Slower Beat Juggling and Faderless scratches with samples over top of music. But have been looking at ways to add more control.

The perfect solution would be a MIDI foot controller that I can setup to momentarily control the cross fader. But I couldn't see if the cross fader is MIDI mappable.

I'm calling out to you guys to see if anyone has ideas on how I can be more versatile in my DJing.

Thanks guys!
Neil Cutler 6:16 AM - 21 August, 2014
Should Add Equipment I'm currently using:
-Numark NS6
-Serato Remote
-Numark Orbit MIDI (on it's way, will be experimenting)

To get an idea of where I'm at, I posted a video mix with overlay of me using the NS6:
www.dailymotion.com
dj_soo 6:33 AM - 21 August, 2014
serato locks everything that's already been mapped so probably not.
Code:E 2:00 AM - 22 August, 2014
You can't do what you want to do with Serato. You would need to do it with a DJ/music software that has an internal Software Mixer. So Traktor or virtual DJ. Then you could map the crossfader to a big expression pedal on a foot controller.
Neil Cutler 2:06 AM - 22 August, 2014
Thanks guys, Code:E always here to give the best advice!

I figured they wouldn't make an obvious solution for what I'm trying. But also looking at workarounds.

For instance: I noticed that track gain adjust is MIDI Mappable. If I could somehow make a button to bring db down to lowest then be able to reset it. I might be able to create a way to cut scratches.

I don't know MIDI as of yet so don't know what is possible, but my questions:
-My perfect solution would be [hold MIDI button with foot] - zeros volume. [letting up on button] - resets db to 0.
-If this isn't possible, using two buttons, one to cut and one to reset
-If none of those are possible, could using 3rd party software macros be integrated somehow with MIDI?

I'm just researching all options as I *really* like Serato.
Code:E 2:33 AM - 22 August, 2014
Quote:
For instance: I noticed that track gain adjust is MIDI Mappable. If I could somehow make a button to bring db down to lowest then be able to reset it. I might be able to create a way to cut scratches.

Let me start out by saying I dont scratch and My knowledge is very limited on how it works.

But I have seen some DJ's use some sort of effects like a gate (i think) to give you the on/off your looking for. I would look into some of the effects in serato and Serato DJ and see if they do what you need.
phatbob 9:41 AM - 22 August, 2014
I'm sure it can be done, Neil; ultimately you would find it easier to achieve with Traktor, but then you wouldn't get such good jog wheel response with your NS6.

I think Code:E is taking you down the right path by suggesting FX as the solution. There are a few FX in SDJ which involve a 'gate', that you could map, and use like an old-school transform button.

The Serato support staff don't usually monitor threads in this forum area too much, but I bet they'll be glad to help you find a solution, so I'll PM one of the support guys I know with a link to this thread.

Good luck!
Serato, Support
Martin C 12:37 AM - 25 August, 2014
Hi Neil Cutler,

We don't make the crossfader MIDI mappable via the interface, however it is easy enough to manually add this function your MIDI.xml file in order to achieve what you want.

The way I'd recommend doing this is as follows:

1. Open Serato DJ with your NS6 and MIDI controller connected (I used an Akai LPD8)
2. Enable MIDI mapping mode
3. Choose something to map to like a knob, not a on/off type button, I chose the combo filter in the MIDI panel
4. Save this MIDI mapping in the setup screen
5. Go to Music > _Serato_ > MIDI > Xml then find your MIDI mapping and open it with a text editor. I recommend sublime text.
6. You should see something like this:

Quote:
<control channel="1" event_type="Control Change" data_type="Absolute 7" control="2">
[u]
<deck_filter_auto deck_set="Default" deck_id="1" slot_id="0">
<translation action_on="any" behaviour="explicit"></translation>
</deck_filter_auto>
</userio>
</control>


The first line might not like exactly the same - it relates specifically to the type of data that your MIDI controller sends and in the example I have used, it refers to a knob I used on the Akai LPD8. The main thing you need to do is change both instances of the function deck_filter_auto to crossfader. So now it should look something like this:

Quote:
<control channel="1" event_type="Control Change" data_type="Absolute 7" control="1">
[u]
<crossfader deck_set="Default" deck_id="1" slot_id="0">
<translation action_on="any" behaviour="explicit"></translation>
</crossfader>
</userio>
</control>


7. Save this file
8. Go back to Serato DJ, select the file inside the MIDI setup screen and click "load". Keep an eye on the bottom of the screen - if you receive a yellow status bar message saying "cannot load MIDI.xml" then you may have done something incorrect.

Now you should be able to control the crossfader with your additional MIDI controller. Ideally, stay away from using the crossfader on your NS6 if you can help it. It should't cause any major problems, it will just get confusing because it will put the crossfader in different positions to where you might expect if you are using both controls at once.

Let me know how you go and if you need any help!
Neil Cutler 7:24 AM - 6 September, 2014
Thank you for that response. It's great to that it can be done.

I've been looking into Foot Controllers themselves and came across the Keith McMillan Instruments SoftStep II. But because of my general lacking of MIDI experience (still awaiting a Numark Orbit that I plan to get my feet wet (erm fingers, I mean).

If anyone with MIDI experience could tell me if the complexity of the Soft Step having multiple pressure + X+Y and using a control panel to program would work to setup a scratch like crossfader curve.

Thanks in advance!
Neil Cutler 7:31 AM - 6 September, 2014
Essentially: would the complexity get lost in Serato or could it perform a fair amount of flexibility like I'm hoping.

I should add a video that went through more detail if you need a better idea of what it can do - goes through the control panel it has later in the video.

Watchwww.youtube.com
Serato, Support
Martin C 1:44 AM - 8 September, 2014
I have not had experience with it personally but it seems like it would work.

From what I understand from reading the manual the settings in the SoftStep software will modify the way MIDI is sent from the device, but MIDI is still always 0-127 notes. Weirdly I was unable to install the software to get a closer look.

If you do end up getting one see if you can get a warranty/return period on it in case it doesn't work. If you need any help hit me up here!
Neil Cutler 7:37 AM - 4 October, 2014
Just wanted to thank you Martin. Got the Controller and mapped it out as you said works fantastically. First time ever I can rewind on mute!

Is there anything I should know about the behaviour of MIDI controlling crossfader? I noticed the NS6 seems to reset ok if I position its crossfader where the MIDI tells it (If I move it to the left and use foot controller its ok. But if I move it to the physical crossfader to the right and press foot controller it messes it up)

I'm assuming MIDI 0 is all left and MIDI 127 is all right?

I'm planning on setting up 2 foot controls for crossfader based on pressure Where #1 intializes MIDI at 0 (left) and pressure moves it to MIDI 64 (middle) and #2 button intializes MIDI at 127 (right) and pressure moves it to MIDI 64.

I still plan on using the NS6 crossfader for non scratching. I don't mind it needing the reset after I scratch with foot control if it's predictable.

PS: Has the staff ever played around with Leap Motion + GECO MIDI and Serato DJ? It is freaking awesome! Video of me testing it below:

serato.com
Neil Cutler 11:31 PM - 4 October, 2014
I should also ask if there's any documentation for the less known MIDI mappable objects. Like Shift function? I like to program so editing text fields doesn't intimidate me.
Serato, Support
Martin C 9:36 PM - 6 October, 2014
No problem Neil, good to hear its working well.

Quote:
I'm assuming MIDI 0 is all left and MIDI 127 is all right?


Yes, I believe it is. You should be able to confirm that by using MIDI-OX to inspect the messages: serato.com

I think what you'll be experiencing is just some element of conflict as I mentioned might happen. You foot controller is probably OFF = 0 and ON = 127 so it gets confused when the crossfader is always sitting at 127 perhaps.

Yes, one of our developers brought in a Leap Motion controller for a while. Its pretty cool for playing around, it will be interesting if this kind of idea takes off as a functional part of peoples DJs performances though.

Quote:
I should also ask if there's any documentation for the less known MIDI mappable objects. Like Shift function? I like to program so editing text fields doesn't intimidate me.


There is no public documentation, but I can try find out information if you need it. Give me a list of things you'd like to map and I will do my best to find them and give you the descriptions.
Neil Cutler 6:35 AM - 9 October, 2014
The main things are the line faders I'm looking at mapping right now. This would allow me to scratch Ch 3 + Ch 4 since I like to use Sample Sentences that are loaded to those decks.
Serato, Support
Martin C 11:16 PM - 9 October, 2014
Ok, for those you will need to use:

Quote:
<message id="upfader" deck_set="Default" deck_id="0" >
</message>


You'll need to identify the deck, where Deck 1 is id="0", Deck 2 is id= "1" etc.
Masta Bene 1:50 AM - 21 November, 2014
Hi friends of MIDI foot controllers!

I'm also using such a controller (primarily to control the two deck's volume using my 2 foot pedals). This works very well with Scratch-Live 2.5 using the "Fader" FX !!

Unfortunately, this effect has been 'dropped' in Serato-DJ. [according to my support ticket, it's also not planned to be re-included in the future] ;-(

Using your 'workarounds' using manual editing of the xml-file, I did NOT succeed.
Could you pls. post a complete xml snippet for the "upfader" ? (Also "crossfader" didn't work for me)

PS: I'm using a Rane 62 Mixer (with Serato-DJ 1.7.1+)
Serato, Support
Martin C 11:12 AM - 24 November, 2014
Hi Masta Bene,

Are you already in touch with our Luke from our Support Team? He mentioned to me someone was asking about this. If so, I recommend continuing your discussion with him, he should be able to help you :)