Sign In:     


Forum: Old versions

Topic: Help mapping a DAC-2

This topic is old and might contain outdated or incorrect information.

I need to remap my DAC-2. I was wondering if anyone else needs to do the same. I am able to get the basic mapper functions to work but are a few things I am stuck on.

Questions:

How do I display information on the LED display like BPM, Time, Etc.

How do I set button combos like shift+load to do something.

I know I will have more questions as I work on building this mapper. Any help is greatly appreciated.
 

Posted Mon 01 Jun 09 @ 7:55 pm
Dennis,

Why another thread ? Could have continued this in the other thread.

Any how I will lock that one and come back here ... and it was only the check on use serial devices, the other one had no impact on the DAC being recognized.

 

Have you looked in the Manual at pages 36-39?

It's very simple - you can use the Auto-Learn for the buttons, sliders, jogs, etc ... and the assign the action.

For the internals like displays, LEDs, etc. - you add a new entry then select the item from the Key drop-down.

For example - selecting DIGIT_BPM then assign the action of -> get BPM



For doing key combinations ... First you assign a variable to the button key that will 'toggle' another buttons actions.

So for the Shift button (key) you might assign the action of -> toggle 'shift_btn'

Then for your other buttons you would use a script like -> var 'shift_btn' ? action 1 : action 2


Things like this are covered here -> http://www.virtualdj.com/wiki/VDJscript.html
 

Sorry for the double thread. I will try these commands out. Thanks for the help.
 

Chris, thanks for the XML file. I was able to get a really nice jump start. I was not able to figure out the shift+waitlist to playlist code you provided.

<map value="WAITLIST" action="var "shift_select" ? browser_window "playlist" : playlist_add" />

<map value="SHIFT" action="set "shift_select" while_pressed" />

The only thing it would do is load to the playlist no matter if I pressed shift with it or not.


What I was thinking I would like is:

waitlist: toggle between waitlist and the main library.
shift+waitlist: add selected track to the waitlist.


Thanks for any help.
 

Does the quotes matter? I have tried several ways and still cannot get the shift to work. It seems to not allow me to set the shift variableome reason. Am I missing something? I have listed my code balow if anyone has any ideas.

I again want to either use the shift button option to load to waitlist or cycle through the browser_window. Similarly I also want to shift+FX to cycle through the effects or just press FX to activate it.


<----------code begins------------>


<?xml version="1.0" encoding="UTF-8"?>
<mapper device="DAC2" author="Atomix Productions" version="600" date="02/06/2009">
<map value="CUE" action="cue_stop" />
<map value="LOAD" action="var "shift_select" ? display_time "elapsed,remain" : load" />
<map value="SHIFT" action="set shift_select while_pressed" />
<map value="GROUP" action="loop" />
<map value="PLAYPAUSE" action="play_pause" />
<map value="MINUS" action="pitch_bend -2% 500ms" />
<map value="PLUS" action="pitch_bend +2% 500ms" />
<map value="MATCH" action="sync" />
<map value="PITCH" action="pitch_slider" />
<map value="BAR" action="songpos_remain" />
<map value="DIGIT_TIME_MS" action="get time_ms" />
<map value="DIGIT_TIME_SEC" action="get time_sec" />
<map value="DIGIT_TIME_MIN" action="get time_min" />
<map value="DIGIT_TRACK" action="get loop" />
<map value="LCD_BPMDOT" action="off" />
<map value="LCD_PROGRESSLINE" action="on" />
<map value="LCD_REMAIN" action="display_time "remain"" />
<map value="LCD_ELAPSED" action="display_time "elapsed"" />
<map value="LCD_SINGLE" action="off" />
<map value="LED_PITCH" action="get beat" />
<map value="LED_CUE" action="cue_stop" />
<map value="LED_PLAY" action="play ? on : loaded ? on blink : off" />
<map value="WHEEL" action="wheel_mode 'jog' & jog_wheel" />
<map value="OUTERWHEEL" action="wheel_mode 'search' & jog_wheel" />
<map value="LCD_BPM" action="get bpm" />
<map value="FX" action="while_pressed ? down ? set "fx_select" while_pressed : nothing : effect active" />
<map value="LED_FX" action="effect active" />
<map value="DIGIT_BPM" action="get bpm" />
<map value="FORWARD" action="loop_double" />
<map value="BACKWARD" action="loop_half" />
<map value="WAITLIST" action=var "shift_select" ? playlist_add : browser_window />

</mapper>



<---------code ends--------->


Any help would be greatly appreciated.

 

You mustn't write quotes directly into the XML - They have special meaning and must be written as their encoded equivalents:

" = &quot;
' = &apos;

 



forgot the code tag


<?xml version="1.0" encoding="UTF-8"?>
<mapper device="DAC2" author="Atomix Productions" version="600" date="02/06/2009">
<map value="CUE" action="cue_stop" />
<map value="LOAD" action="var &quot;shift_select&quot; ? display_time &quot;elapsed,remain&quot; : load" />
<map value="SHIFT" action="set shift_select while_pressed" />
<map value="GROUP" action="loop" />
<map value="PLAYPAUSE" action="play_pause" />
<map value="MINUS" action="pitch_bend -2% 500ms" />
<map value="PLUS" action="pitch_bend +2% 500ms" />
<map value="MATCH" action="sync" />
<map value="PITCH" action="pitch_slider" />
<map value="BAR" action="songpos_remain" />
<map value="DIGIT_TIME_MS" action="get time_ms" />
<map value="DIGIT_TIME_SEC" action="get time_sec" />
<map value="DIGIT_TIME_MIN" action="get time_min" />
<map value="DIGIT_TRACK" action="get loop" />
<map value="LCD_BPMDOT" action="off" />
<map value="LCD_PROGRESSLINE" action="on" />
<map value="LCD_REMAIN" action="display_time &quot;remain&quot;" />
<map value="LCD_ELAPSED" action="display_time &quot;elapsed&quot;" />
<map value="LCD_SINGLE" action="off" />
<map value="LED_PITCH" action="get beat" />
<map value="LED_CUE" action="cue_stop" />
<map value="LED_PLAY" action="play ? on : loaded ? on blink : off" />
<map value="WHEEL" action="wheel_mode &apos;jog&apos; &amp; jog_wheel" />
<map value="OUTERWHEEL" action="wheel_mode &apos;search&apos; &amp; jog_wheel" />
<map value="LCD_BPM" action="get bpm" />
<map value="FX" action="while_pressed ? down ? set &quot;fx_select&quot; while_pressed : nothing : effect active" />
<map value="LED_FX" action="effect active" />
<map value="DIGIT_BPM" action="get bpm" />
<map value="FORWARD" action="loop_double" />
<map value="BACKWARD" action="loop_half" />
<map value="WAITLIST" action="var &quot;shift_select&quot; ? browser_window : playlist_add" />
<map value="PREVIEW" action="effect select +1" />
</mapper>





 

Variable names must be enclosed in quotes (Either single or double), e.g:

set shift_select while_pressed


Should be:

set &quot;shift_select&quot; while_pressed


 

Right now I have:



<map value="SHIFT" action="set &quot;shift_select&quot; while_pressed"/>
<map value="WAITLIST" action="var &quot;shift_select&quot; ? playlist_add : browser_window"/>




Is this right? Still not working.
 

Ok, going back to the DAC documentation I recall that WaitList with Shift or Group could not be used together ... I think that was the situation.. but double check ... there is a button combination that can not work together and it's a DAC thing...

On the otherhand ...

I don't understand why you are editing the XML outside of VirtualDJ ... this is all handled in the Mapper engine when it writes the XML for you.

Anyhow... If you are going to use 'set' you should use a value to be assigned to the variable ....

set "shift_select" 1 while_pressed

that way you can test for a specific value

var_equal "shift_select" 1 ? playlist_add : browser_window
 

I am not editing it outside of VDJ. I am scripting inside the mapper section. Sorry if I was unclear. I will try to set the variable to 1 and see if that works.
 

1) did you manage to get outer jog working ?

2) I found maybe a bug, but am not sure whether my controller is faulty or there's a memory leak in vdj dac-2 code handling LCD display:

In short words:

Something is overwriting parts of BPM/TRACK display data
LEFT DECK BPM display (the digit "1" from 1xx) conflicts with RIGHT deck track display (if it is x0 or x1)
RIGHT DECK BPM display (the digit "1" from 1xx) is LIT always when LEFT deck PROGRESS BAR 1st square is not LIT
RIGHT DECK BPM display (the digit "1" from 1xx) is NOT LIT when LEFT deck PROGRESS BAR 1st square is LIT
RIGHT DECK works fine if at 2 or more squares on left deck are lit.


could someone verify this, please, before i send a bug report ?


How to reproduce:

When i do simple mapper:

BAR song_pos
DIGIT_TRACK get cue
PITCH pitch_slider
FORWARD cue_select +1
BACKWARD cue_select -1
DIGIT_BPM get bpm


TEST 1:

CONDITIONS:
load a song to both decks and set pitch_range in a way that BPM can be below 100 BPM and over 100 as you move slider.

set cues on both decks to 1 (so 1 is displayed as "track" on lcd), go to the start on song without playing.

RESULT:
on left deck I always see only last two digits of BPM
on right deck I always see last two digits of BPM but prepended with 1 e.g. for bpm 89 i see 189


TEST 2:
now jump on left deck somewhere to middle of the song so progress bar will have lit more than 2 squares from the left side

This causes the right deck BPM to display correctly all BPMs (below 100 and above 100)


TEST 3:
change the cue on right deck to 2

This cause the left deck BPM to display correctly all BPMs (below 100 and above 100)

if you leave the left deck BPM above 100, you are unable to change right deck cue below 2!!! (on display),
When you put the bpm under 100 on the left deck, magically the right display cue changes to 1.



3) and last question, what does theese buttons/actions do ? (I think they should not belong to DAC-2 command groups)

LCD_PITCHTEXT
LCD_BPM
LCD_RELOOP
LCD_LOOP
LCD_PITCH
LCD_TRACK
LCD_PROGRAM
LCD_CUE
LCD_PAUSE
LCD_PLAY
LCD_FX
 

I can't seem to figure out the outer jog either. I tried to tie it to a search function but when I turn it to the right it goes 75% into the song and when I put it back to the middle it puts the songs at 50%. It won't seem to fast forward like before.

As for the BPM it seems to show the correct BPM for me. I will try to reproduce your issue next time I get a chance.

I forget if I used the LCD displays you mentioned. I will have to look on my mapper to see if I used any of those.
 

Still can't get the OUTER_WHEEL to do much. I really just want to do a scroll search and not much really but I can't seem to get it right.
Anyone have any luck mapping the outer_wheel on the DAC-2?
 

i need the map code for the jogwheel's parameter effect slider function when my effect is activated... help please
 



(Old topics and forums are automatically closed)