Ingreso rápido:  

Forum: VirtualDJ Technical Support

Tema: Customize Pioneer XP2 pad page
Hi everyone,

Yesterday the Pioneer XP2 arrived and my intention was to totally customize it in the pad pages and in the colors of the LEDs on the pad pages. I managed to do everything and everything works perfectly but when I start Virtual DJ the LEDs of the pad pages go back to the default colors set and I have to press them all (4 normal and 4 with the shift) to get the colors I set. Is it something that depends on the definition file? Is there a way to make Virtual DJ recognize the colors when starting up or is it better to go back to the original colors?

Thank you
 

Mensajes Tue 23 May 23 @ 9:17 am
Which LEDs ? Of the PADs ? Or the PAD_PAGE buttons ?
And how did you "customized" them, if not through VirtualDJ ? (It's not clear to me because you say that they reset when VirtualDJ starts, which implies you had them configured somehow prior running VirtualDJ)
 

Mensajes Tue 23 May 23 @ 9:21 am
PhantomDeejay wrote :
Which LEDs ? Of the PADs ? Or the PAD_PAGE buttons ?
And how did you "customized" them, if not through VirtualDJ ? (It's not clear to me because you say that they reset when VirtualDJ starts, which implies you had them configured somehow prior running VirtualDJ)


Yes George, sorry if it wasn't very clear, I meant the leds of the pad page buttons. I changed the standard pad pages of the mapping because I already have them in the XP1 and consequently I also changed the default LED colors of the pad page buttons but if I restart Virtual DJ the colors return to the original ones i.e. white, cyan, orange and a shade different yellow than the normal ones and all yellow those obtained with the shift.
Thank you

 

Mensajes Tue 23 May 23 @ 9:45 am
Still, it's not very clear to me what you have done.

Anyway, the colors of pad pages are controlled by this part of the XP2 mapper:
<map value="LED_PADMODE_1" action="pad_pages 1 ? color 'white' : off" />
<map value="LED_PADMODE_2" action="pad_pages 2 ? color 'cyan' : off" />
<map value="LED_PADMODE_3" action="pad_pages 3 ? color '#ff4000' : off" />
<map value="LED_PADMODE_4" action="pad_pages 4 ? color 'orange' : off" />
<map value="LED_PADMODE_5" action="pad_pages 5 ? color 'yellow' : off" />
<map value="LED_PADMODE_6" action="pad_pages 6 ? color 'yellow' : off" />
<map value="LED_PADMODE_7" action="pad_pages 7 ? color 'yellow' : off " />
<map value="LED_PADMODE_8" action="pad_pages 8 ? color 'yellow' : off" />

Keep in mind that modes 5,6,7,8 are SHIFT+1,2,3,4
You need to edit the colors you want there.
 

Mensajes Tue 23 May 23 @ 12:34 pm
PhantomDeejay wrote :
Still, it's not very clear to me what you have done.

Anyway, the colors of pad pages are controlled by this part of the XP2 mapper:
<map value="LED_PADMODE_1" action="pad_pages 1 ? color 'white' : off" />
<map value="LED_PADMODE_2" action="pad_pages 2 ? color 'cyan' : off" />
<map value="LED_PADMODE_3" action="pad_pages 3 ? color '#ff4000' : off" />
<map value="LED_PADMODE_4" action="pad_pages 4 ? color 'orange' : off" />
<map value="LED_PADMODE_5" action="pad_pages 5 ? color 'yellow' : off" />
<map value="LED_PADMODE_6" action="pad_pages 6 ? color 'yellow' : off" />
<map value="LED_PADMODE_7" action="pad_pages 7 ? color 'yellow' : off " />
<map value="LED_PADMODE_8" action="pad_pages 8 ? color 'yellow' : off" />

Keep in mind that modes 5,6,7,8 are SHIFT+1,2,3,4
You need to edit the colors you want there.


Basically I'm customizing the pad pages of XP2 to dedicate it to the pad pages that control the vst programmed by me. For example:

pad_pages 1 ? pad_bank2 : pad_pages 1 & pad_bank2 off

became

pad_pages 'turnado' ? pad_bank2 : pad_pages 'turnado' & pad_bank2 off

pad_pages 1 ? color 'white' : off"

became

pad_pages 'turned' ? color 'red' : off"

and so on for the other pad pages and their button colors. Everything works fine but if I close Virtual DJ and reopen it, the colors of the modified buttons go back to the original ones and only when I change the pages will they take on the color I assigned. This could be normal because you programmed XP2 with those colors when you opened Virtual DJ. I was wondering if it was possible to force XP2 to display my assigned colors when opening Virtual DJ but I believe this depends on the definition file. In the photo you can see the colors assigned by me on the left and the default colors on the right, I don't think it's possible to force XP2 to open with the colors on the left.

Thanks for your dedicated time.

 

Mensajes Tue 23 May 23 @ 1:28 pm
Ok, now I understand.
I believe this is a limitation of XP2 Firmware.
We are using "Rekordbox Mode" for XP2 and it seems that the unit initializes with default Rekordbox colors.
Of course once you send any color information in the pad page buttons, they change.

PS:The correct syntax for all above actions should be pad_page 'PageName' without an "s" (pad_pages)
Also I assume that pad_pages 'turned' is just a typo ? Since it should be pad_page 'turnado' ?
 

Mensajes Tue 23 May 23 @ 4:28 pm
Well George, unfortunately I use concealer and it's not easy to explain very well. :)

No on XP2 default mapping shows as pad_pages, while on XP1 pad_page. It still works in both ways, I also tried without the s because I thought it was more correct, I don't know it's an original mapping error. As for the colors, rekordbox uses the same as XP1 so violet the 4 normal pad pages and yellow the 4 pad pages using the shift. With Virtual DJ the first 4 pages have the colors you see in the picture in deck 2 and the 4 pad pages that use shift use yellow, could that be the problem?

Thank You
 

Mensajes Tue 23 May 23 @ 5:27 pm
pad_pages is an alias, and it was meant to be used with numbers (pad_pages 1)
pad_page is the correct script to use in most cases. It accepts both numbers and text

Is it possible to paste here the related parts of your mapper ? (a direct copy/paste) ?

 

Mensajes Tue 23 May 23 @ 5:51 pm
PhantomDeejay wrote :
pad_pages is an alias, and it was meant to be used with numbers (pad_pages 1)
pad_page is the correct script to use in most cases. It accepts both numbers and text

Is it possible to paste here the related parts of your mapper ? (a direct copy/paste) ?



Of course, I am attaching only the parts concerning the buttons of the pad pages and their leds, everything works.
I watched a video where they try XP2 first with Serato and then with Rekordbox. I think Virtual DJ is using Serato colors in the first 4 pads and Rekordbox yellow in the 4 pads using the shift. If it's like XP1 the top pads should be violet. Can you check this?

Thank you

PADMODE_1= pad_page 'rmx-1000' ? pad_bank2 : pad_page 'rmx-1000' & pad_bank2 off
PADMODE_2= pad_page 'rmx-500' ? pad_bank2 : pad_page 'rmx-500' & pad_bank2 off
PADMODE_3= pad_page 'rmx-1000 drums + rmx-500 drums' ? pad_bank2 : pad_page 'rmx-1000 drums + rmx-500 drums' & pad_bank2 off
PADMODE_4= pad_page 'turnado' ? pad_bank2 : pad_page 'turnado' & pad_bank2 off
PADMODE_5= pad_page 'effector' ? pad_bank2 : pad_page 'effector' & pad_bank2 off
PADMODE_6= pad_page 'pad fx 2' ? pad_bank2 : pad_page 'pad fx 2' & pad_bank2 off
PADMODE_7= pad_page 'pad fx 3' ? pad_bank2 : pad_page 'pad fx 3' & pad_bank2 off
PADMODE_8= pad_page 'stems + hotcues' ? pad_bank2 : pad_page 'stems + hotcues' & pad_bank2 off

LED_PADMODE_1= pad_page 'rmx-1000' ? color 'red' : off
LED_PADMODE_2 = pad_page 'rmx-500' ? color 'blue' : off
LED_PADMODE_3= pad_page 'rmx-1000 drums + rmx-500 drums' ? color 'magenta' : off
LED_PADMODE_4= pad_page 'turnado' ? color '#ff4000' : off
LED_PADMODE_5= pad_page 'effector' ? color 'white': off
LED_PADMODE_6= pad_page 'pad fx 2' ? color 'yellow' : off
LED_PADMODE_7= pad_page 'pad fx 3' ? color 'marine' : off
LED_PADMODE_8= pad_page 'stems + hotcues' ? color 'green' : off
 

Mensajes Tue 23 May 23 @ 7:21 pm
It's more complicated than that.
The unit offers 2 modes. Serato and Rekordbox (besides the mediocre Generic MIDI)
At first we opted for Serato mode since it was easier to handle some leds and stuff, including pad page buttons colors.
However due to some performance issues, at a later point we decided to switch to Rekordbox mode instead.
In Rekordbox mode when the device initializes, it uses the default Rekordbox violet colors for the pad page buttons.
To counteract that, we manually send the correct colors (based on the default mapping) once upon device initialization. This is done on definition level. That's why the device shows the colors of the default pages correctly.
If we remove that code from the definition, then the buttons will start violet, and stay violet until you use a pad page button.

I may have a "dirty" solution to your problem, that I also may be able to fine tune at some point later.
For the moment please try to append this code at the end of your ONINIT key:
& deck all pad_page 'rmx-500' & wait 50ms & deck all pad_page 'rmx-1000 drums + rmx-500 drums' & wait 50ms & deck all pad_page 'turnado' & wait 50ms & deck all pad_page 'effector' & wait 50ms & deck all pad_page 'pad fx 2' & wait 50ms & deck all pad_page 'pad fx 3' & wait 50ms & deck all pad_page 'stems + hotcues' & wait 50ms & deck all pad_page 'rmx-1000'
It should "fix" your issue.
 

Mensajes Wed 24 May 23 @ 12:12 am
PhantomDeejay wrote :
It's more complicated than that.
The unit offers 2 modes. Serato and Rekordbox (besides the mediocre Generic MIDI)
At first we opted for Serato mode since it was easier to handle some leds and stuff, including pad page buttons colors.
However due to some performance issues, at a later point we decided to switch to Rekordbox mode instead.
In Rekordbox mode when the device initializes, it uses the default Rekordbox violet colors for the pad page buttons.
To counteract that, we manually send the correct colors (based on the default mapping) once upon device initialization. This is done on definition level. That's why the device shows the colors of the default pages correctly.
If we remove that code from the definition, then the buttons will start violet, and stay violet until you use a pad page button.

I may have a "dirty" solution to your problem, that I also may be able to fine tune at some point later.
For the moment please try to append this code at the end of your ONINIT key:
& deck all pad_page 'rmx-500' & wait 50ms & deck all pad_page 'rmx-1000 drums + rmx-500 drums' & wait 50ms & deck all pad_page 'turnado' & wait 50ms & deck all pad_page 'effector' & wait 50ms & deck all pad_page 'pad fx 2' & wait 50ms & deck all pad_page 'pad fx 3' & wait 50ms & deck all pad_page 'stems + hotcues' & wait 50ms & deck all pad_page 'rmx-1000'
It should "fix" your issue.


Thanks for the time dedicated to me!

The solution you proposed works only for Pad Mode buttons 1-2-3-4, while 5-6-7-8 remain yellow.

I can also keep the colors of the original mapping but maybe you forgot to assign the "serato" colors to Pad Mode 5-6-7-8, in fact with the default mapping, pressing shift and passing the color to those pad pages of all Pad Mode buttons is yellow while on serato they have different colors.

That's why I wrote earlier that the original virtual DJ mapping seems to use serato colors for Pad Modes 1-2-3-4 and rekordbox colors for Pad Modes 5-6-7-8 Can you check this in the definition file? If you need a demonstration video I can send it to you.

Thanks again!
 

Mensajes Wed 24 May 23 @ 1:50 am
I made some screenshots of the video review.

Right now with the default mapping of Virtual DJ the Pad Mode buttons 5-6-7-8 are all yellow (like in rekordbox mode). As you can see in deck 1 the colors of the Pad Mode 5-6-7-8 buttons on serato are different, they look like 2 shades of green and 2 shades of blue or marine.

Maybe these should be changed in the definition file?

Thank you

 

Mensajes Wed 24 May 23 @ 2:16 am
Why ?
Does it matter ?
I mean, the buttons have RGB leds. We could literally use "any" color for any button.

Remember, our goal is NOT to provide an exact copy of other software behavior, but to utilize the controller the best way possible to get the most out of VirtualDJ.

So, why should the colors of the PAD MODE buttons should be an exact match of Rekordbox or Serato colors ?
Does it affect functionality or improves anything ?

PS: Even Rekordbox and Serato use two different color schemes. So, why should VirtualDJ use one of the two, and not use a third distinct scheme ?
 

Mensajes Wed 24 May 23 @ 7:55 am
PhantomDeejay wrote :
Why ?
Does it matter ?
I mean, the buttons have RGB leds. We could literally use "any" color for any button.

Remember, our goal is NOT to provide an exact copy of other software behavior, but to utilize the controller the best way possible to get the most out of VirtualDJ.

So, why should the colors of the PAD MODE buttons should be an exact match of Rekordbox or Serato colors ?
Does it affect functionality or improves anything ?

PS: Even Rekordbox and Serato use two different color schemes. So, why should VirtualDJ use one of the two, and not use a third distinct scheme ?


I'm sorry if I didn't explain myself very well using the translator and I was misunderstood. You always do an excellent job and we all just have to thank you!

In this specific case it seemed strange to me that the Pad Mode buttons 5-6-7-8 all have the same color (yellow) instead of different colors like the Pad Mode buttons 1-2-3-4, I also thought it might be a problem with my unit but luckily it is not.

Since XP2 doesn't have buttons with predefined names like XP1 (Hotcues, Pad fx, Sampler etc etc) but uses Pad Mode 1-8 I thought it could be more comfortable and useful to have 8 different colors to memorize visually than each color corresponds to a specific default or customized pad page. That's why, having customized the pad pages and the colors, I was wondering how to display them all when Virtual DJ opens :)
 

Mensajes Wed 24 May 23 @ 8:58 am
As I said, it's because of the device firmware.
After some more testing I remembered why it's set that way.
The unit initializes in RB mode with "violet" leds on "main" layer and yellow leds on "shifted" layer.
As you found out (and I was able to confirm) if you don't use the shift button to switch layer (since it's a hardware layer) you can't actually change the led colors for modes 5 to 8 and even our definition "hack" trick doesn't work.
So, the best we can do is to provide a uniform "yellow" second (shifted) layer and a multi color first layer.

I agree that it would be best to have different colors for all the pad modes. But, despite the unit having RGB leds, Rekordbox does not seem to care enough for this*. So, they baked some stuff to the firmware (in RB mode) that makes working with pad page button leds a little more tricky.
*-> Rekordbox uses 4 violet and 4 yellow page modes.

PS: Generally we prefer that devices just provide buttons, sliders, leds e.t.c. for the software to use as it likes.
However, Serato at first and Rekordbox later decided that for some "functions" it would be better to be handled via devices firmware. There are plenty examples of such controllers where the firmware does some "weird" stuff:
A few days ago I replied on another user on this forum for a limitation of DDJ-800 (and I think DDJ-1000 as well). The "Seek <<" (back) button doesn't work when you are near the start of a track! That's not a VirtualDJ limitation or bug. That's baked in the device firmware. Instead of Rekordbox checking if it can go backwards or not, the device does it instead based on the time elapsed and BPM info of the track. And then it decides whether or not to send the button press (MIDI message) to the software!
Such firmware "functions" cannot be bypassed by us. Also such "functions" will some times play an important role to decide if we are going to use "Rekordbox" or "Serato" mode for devices that support both (such as XP2)
Just stay assured that we really try our best to provide the best user experience possible, even when some devices have questionable functionality built in.
 

Mensajes Wed 24 May 23 @ 9:50 am
PhantomDeejay wrote :
As I said, it's because of the device firmware.
After some more testing I remembered why it's set that way.
The unit initializes in RB mode with "violet" leds on "main" layer and yellow leds on "shifted" layer.
As you found out (and I was able to confirm) if you don't use the shift button to switch layer (since it's a hardware layer) you can't actually change the led colors for modes 5 to 8 and even our definition "hack" trick doesn't work.
So, the best we can do is to provide a uniform "yellow" second (shifted) layer and a multi color first layer.

I agree that it would be best to have different colors for all the pad modes. But, despite the unit having RGB leds, Rekordbox does not seem to care enough for this*. So, they baked some stuff to the firmware (in RB mode) that makes working with pad page button leds a little more tricky.
*-> Rekordbox uses 4 violet and 4 yellow page modes.

PS: Generally we prefer that devices just provide buttons, sliders, leds e.t.c. for the software to use as it likes.
However, Serato at first and Rekordbox later decided that for some "functions" it would be better to be handled via devices firmware. There are plenty examples of such controllers where the firmware does some "weird" stuff:
A few days ago I replied on another user on this forum for a limitation of DDJ-800 (and I think DDJ-1000 as well). The "Seek <<" (back) button doesn't work when you are near the start of a track! That's not a VirtualDJ limitation or bug. That's baked in the device firmware. Instead of Rekordbox checking if it can go backwards or not, the device does it instead based on the time elapsed and BPM info of the track. And then it decides whether or not to send the button press (MIDI message) to the software!
Such firmware "functions" cannot be bypassed by us. Also such "functions" will some times play an important role to decide if we are going to use "Rekordbox" or "Serato" mode for devices that support both (such as XP2)
Just stay assured that we really try our best to provide the best user experience possible, even when some devices have questionable functionality built in.


I had the pleasure of discussing with you and solving some small problems on the RZX together, that little typing error in the mapping of the RZ, with Babis we solved the XP1 bug on Mac and I also had the honor of having done your mapping by default for Launchpad X, so I can say with certainty that your work is fantastic and that you are always available for anyone to solve problems or what seem to be problems and for this I thank you on behalf of all the users of the forum and of the Facebook page.

I understood that therefore it is just a limitation of the XP2 firmware sometimes big companies like Pioneer get lost in a glass of water. I ask you the last thing, could it be possible to have the definition file? So I'll be able to do some tests (it amuses me and distracts me from dedicating myself to these things), maybe I'll try to assign violet colors to all the upper pads without forcing the startup with serato colors, so it would become like XP1 and once this is done I'll try to do a few more changes to my mapping. If that's not possible that's fine too and thank you for your time.

Best regards George!
 

Mensajes Wed 24 May 23 @ 12:15 pm