Accesso rapido:  

Forum: VirtualDJ Technical Support

Topic: Possible Mapping Issue Locking Up Prime 4
Greetings!

Hoping someone can point me in a direction. I've been using the following configuration and it's been rock solid the past 6 months:

VDJ 8.5-64 b6677
Denon Prime 4 running 1.6.0 firmware

As I said - rock solid... until two weeks ago.

At a wedding reception about 4 hours in and the P4 starts not giving any visual feedback ie: cue lights, cue buttons not showing up, platter animation not spinning, deck selection not changing colors... HOWEVER, all buttons still function. So even though no lights indicate a change, the change takes place. Example, I set a cue and the cue indeed sets. I press SHIFT and the Cue Button and it does clear that cue. Volume faders all continue to work and all visual feedback on the LAPTOP still works.

I TRACKED IT DOWN AND CAN REPEAT THE PROBLEM CONSISTENTLY

When I press the SHIFT button on the P4 on the LEFT DECK, it locks everything up as described above. HOWEVER, If I do the same on the RIGHT DECK (before any lock up) it functions fine.

I've uploaded a demonstration of the issue here - https://youtu.be/Dt9X4DXPttY

The issue does not happen when using the Prime 4 in standalone mode, leading me to believe its a VDJ Mapping issue. Odd thing is all was great until two weeks ago!

ANY ideas are appreciated - I have another high profile wedding this weekend! (Aren't they all??!)

Thank you in advance!

Here is my Prime 4 Map file:

<?xml version="1.0" encoding="UTF-8"?>
<mapper device="DNPRIME4" author="Atomix Productions" version="850" date="2021-04-13">
<info>https://www.virtualdj.com/manuals/hardware/denon/prime4.html</info>
<map value="DNC_POWERBUTTON" action="set &apos;$denonprimepower&apos; 1" />
<map value="ONINIT" action="fake_hpmix on" />
<map value="ONEXIT" action="fake_hpmix off" />
<map value="SHIFT" action="shift" />
<map value="DECK_2" action="deck 2 rightdeck &amp; deck 2 repeat_stop &apos;deckselectrepeat&apos; &amp; set &apos;$deckrightselect&apos; 1 &amp; deck 2 repeat_start &apos;deckselectrepeat&apos; 3000ms &amp; set &apos;$deckrightselect&apos; 0 &amp; deck 2 repeat_stop &apos;deckselectrepeat&apos;" />

<map value="DECK_4" action="deck 4 rightdeck &amp; deck 2 repeat_stop &apos;deckselectrepeat&apos; &amp; set &apos;$deckrightselect&apos; 1 &amp; deck 2 repeat_start &apos;deckselectrepeat&apos; 3000ms &amp; set &apos;$deckrightselect&apos; 0 &amp; deck 2 repeat_stop &apos;deckselectrepeat&apos;" />

<map value="DECK_1" action="deck 1 leftdeck &amp; deck 1 repeat_stop &apos;deckselectrepeat&apos; &amp; set &apos;$deckleftselect&apos; 1 &amp; deck 1 repeat_start &apos;deckselectrepeat&apos; 3000ms &amp; set &apos;$deckleftselect&apos; 0 &amp; deck 1 repeat_stop &apos;deckselectrepeat&apos;" />

<map value="DECK_3" action="deck 3 leftdeck &amp; deck 1 repeat_stop &apos;deckselectrepeat&apos; &amp; set &apos;$deckleftselect&apos; 1 &amp; deck 1 repeat_start &apos;deckselectrepeat&apos; 3000ms &amp; set &apos;$deckleftselect&apos; 0 &amp; deck 1 repeat_stop &apos;deckselectrepeat&apos;" />
<map value="LED_DECK_1" action="deck 1 leftdeck ? color &apos;blue&apos; : color &apos;gray&apos;" />
<map value="LED_DECK_3" action="deck 3 leftdeck ? color &apos;green&apos; : color &apos;gray&apos;" />
<map value="LED_DECK_2" action="deck 2 rightdeck ? color &apos;red&apos; : color &apos;gray&apos;" />
<map value="LED_DECK_4" action="deck 4 rightdeck ? color &apos;orange&apos; : color &apos;gray&apos;" />
<map value="PLAY" action="pioneer_play" />
<map value="SHIFT_PLAY" action="play_stutter" />
<map value="SHIFT_SYNC" action="masterdeck" />
<map value="LED_SYNC" action="deck left beatlock ? blink 200ms : deck right beatlock ? blink 200ms : is_sync" />
<map value="CUE" action="pioneer_cue" />
<map value="SHIFT_CUE" action="goto 0%" />
<map value="LOOP_PUSH" action="loop" />
<map value="LOOPIN" action="loop ? loop_adjust &apos;in&apos; : loop_in" />
<map value="LOOPOUT" action="loop ? loop_adjust &apos;out&apos; : loop_out" />
<map value="LOOP_ENC" action="loop_double" />
<map value="SHIFT_LOOP_ENC" action="loop_move" />
<map value="LED_LOOPIN" action="loop_adjust &apos;in&apos; ? blink : loop_in" />
<map value="LED_LOOPOUT" action="loop_adjust &apos;out&apos; ? blink : loop_out" />
<map value="CENSOR" action="dump while_pressed" />
<map value="SHIFT_CENSOR" action="reverse" />
<map value="LED_CENSOR" action="reverse" />
<map value="SLIP" action="holding ? sandbox : slip_mode" />
<map value="LED_SLIP" action="get_slip_active ? blink : slip_mode" />
<map value="VINYL" action="holding ? pitch_reset : vinyl_mode" />
<map value="KEYLOCK" action="holding ? key_match_button : key_lock" />
<map value="SHIFT_KEYLOCK" action="key 0" />
<map value="BEATJUMP-" action="beatjump -1" />
<map value="BEATJUMP+" action="beatjump +1" />
<map value="SHIFT_BEATJUMP-" action="beatjump_select -1" />
<map value="SHIFT_BEATJUMP+" action="beatjump_select +1" />
<map value="TRACKSKIP-" action="play ? goto_start &amp; play &amp; doubleclick 1000ms ? load_previous &apos;keepplay&apos; : nothing : goto_start &amp; doubleclick ? load_previous &apos;keepplay&apos;" />
<map value="TRACKSKIP+" action="automix_skip" />
<map value="BEATGRID_EDIT" action="holding ? toggle &apos;editgrid&apos; : set &apos;editgrid&apos; 0" />
<map value="LED_BEATGRID_EDIT" action="var &apos;editgrid&apos; ? blink : off" />
<map value="SHIFT_BEATGRID_EDIT" action="var &apos;editgrid&apos; ? reanalyze" />
<map value="SHIFT_BEATGRID-" action="set &apos;shiftbeat-down&apos; 1 while_pressed &amp; var &apos;editgrid&apos; ? set_bpm 50%" />
<map value="SHIFT_BEATGRID+" action="set &apos;shiftbeat+down&apos; 1 while_pressed &amp; var &apos;editgrid&apos; ? set_bpm 200%" />
<map value="BEATGRID-" action="set &apos;beat-down&apos; 1 while_pressed &amp; var &apos;editgrid&apos; ? repeat 100ms 500ms &amp; adjust_cbg -10% : nothing" />
<map value="BEATGRID+" action="set &apos;beat+down&apos; 1 while_pressed &amp; var &apos;editgrid&apos; ? repeat 100ms 500ms &amp; adjust_cbg +10% : nothing" />
<map value="PITCH" action="pitch" />
<map value="PITCHBEND-" action="pitch_bend -5% 500ms" />
<map value="PITCHBEND+" action="pitch_bend +5% 500ms" />
<map value="SHIFT_PITCHBEND-" action="pitch_range -1" />
<map value="SHIFT_PITCHBEND+" action="pitch_range +1" />
<map value="LED_PITCH_ZERO" action="pitch_reset ? blink : get_pitch_zero 2%" />
<map value="LED_PITCH_ARROW_DOWN" action="param_bigger pitch_slider pitch" />
<map value="LED_PITCH_ARROW_UP" action="param_bigger pitch pitch_slider" />
<map value="JOG_TOUCH" action="touchwheel_touch" />
<map value="JOG" action="touchwheel" />
<map value="SHIFT_JOG_TOUCH" action="touchwheel_touch &apos;search&apos;" />
<map value="SHIFT_JOG" action="touchwheel &apos;search&apos;" />
<map value="LED_JOG_RING" action="touchwheel_touch ? color &apos;white&apos; : var &apos;@$denonblinktime&apos; 0 ? songpos_warning ? blink ? is_audible ? get_deck_color &apos;absolute&apos; : color &apos;white&apos; : color &apos;gray&apos; : is_audible ? get_deck_color &apos;absolute&apos; : color &apos;gray&apos; : is_audible ? get_deck_color &apos;absolute&apos; : color &apos;gray&apos; " />
<map value="GAIN" action="gain" />
<map value="EQ_HIGH" action="eq_high" />
<map value="EQ_MID" action="eq_mid" />
<map value="EQ_LOW" action="eq_low" />
<map value="FILTER" action="filter" />
<map value="VOLUME" action="volume" />
<map value="PFL" action="pfl" />
<map value="LED_PFL" action="pfl ? get_deck_color &quot;absolute&quot; : color &quot;darkgray&quot;" />
<map value="CROSSFADER" action="crossfader" />
<map value="CF_ASSIGN_LEFT" action="cross_assign &apos;left&apos;" />
<map value="CF_ASSIGN_THRU" action="cross_assign &apos;thru&apos;" />
<map value="CF_ASSIGN_RIGHT" action="cross_assign &apos;right&apos;" />
<map value="CF_FILTER" action="deck all filter_activate &apos;filter&apos;" />
<map value="CF_ECHO" action="deck all filter_activate &apos;echo&apos;" />
<map value="CF_NOISE" action="deck all filter_activate &apos;noise&apos;" />
<map value="CF_WASH" action="deck all filter_activate &apos;flanger&apos;" />
<map value="XFADER_CONTOUR" action="crossfader_curve" />
<map value="VUMETER" action="get_level" />
<map value="VUMETER_PEAK" action="get_level_peak" />
<map value="CUE_MIX" action="headphone_mix" />
<map value="CUE_VOLUME" action="headphone_volume" />
<map value="LINE_INPUT" action="mute on" />
<map value="USB_INPUT" action="mute off" />
<map value="MASTER_LEVEL" action="master_volume" />
<map value="FADER_START" action="fader_start" />
<map value="BROWSE" action="browser_scroll" />
<map value="LED_BROWSE" action="off" />
<map value="BACK" action="browser_folder" />
<map value="FWD" action="browser_window &quot;songs,sideview&quot;" />
<map value="BROWSE_PUSH" action="browser_window &apos;folders&apos; ? browser_enter : browser_window &apos;songs,sideview&apos;" />
<map value="VIEW" action="holding ? toggle &apos;$primesettingsview&apos; : var &apos;$primesettingsview&apos; ? set &apos;$primesettingsview&apos; 0 : var &apos;@$primebrowserauto&apos; ? browser_isactive ? browser_isactive off : browser_isactive on : toggle &apos;$primebrowserextend&apos;" />
<map value="LED_VIEW" action="var &apos;$primesettingsview&apos; ? blink : var &apos;$primebrowserextend&apos;" />
<map value="LOAD_LEFT" action="doubleclick ? deck left clone_from_deck : deck left load" />
<map value="LOAD_RIGHT" action="doubleclick ? deck right clone_from_deck : deck right load" />
<map value="SHIFT_LOAD_RIGHT" action="deck right unload" />
<map value="SHIFT_LOAD_LEFT" action="deck left unload" />
<map value="LED_LOAD_LEFT" action="deck left loaded ? deck left get_deck_color &quot;absolute&quot; : deck left get_deck_color &quot;absolute&quot; 40%" />
<map value="LED_LOAD_RIGHT" action="deck right loaded ? deck right get_deck_color &quot;absolute&quot; : deck right get_deck_color &quot;absolute&quot; 40%" />
<map value="PADMODE_HOTCUE" action="pad_pages 1 ? pad_pages 9 : pad_pages 1" />
<map value="PADMODE_ROLL" action="pad_pages 3 ? pad_pages 11 : pad_pages 3" />
<map value="PADMODE_SLICER" action="pad_pages 4 ? pad_pages 12 : pad_pages 4" />
<map value="PADMODE_LOOP" action="pad_pages 2 ? pad_pages 10 : pad_pages 2" />
<map value="SHIFT_PADMODE_SLICER" action="pad_pages 8" />
<map value="SHIFT_PADMODE_HOTCUE" action="pad_pages 5" />
<map value="SHIFT_PADMODE_LOOP" action="pad_pages 6" />
<map value="SHIFT_PADMODE_ROLL" action="pad_pages 7" />
<map value="LED_PADMODE_HOTCUE" action="pad_pages 1 ? color &apos;#0055AA&apos; : pad_pages 9 ? color &apos;green&apos; : pad_pages 5 ? color &apos;orange&apos; : color &apos;gray&apos;" />
<map value="LED_PADMODE_LOOP" action="pad_pages 2 ? color &apos;#0055AA&apos; : pad_pages 10 ? color &apos;green&apos; : pad_pages 6 ? color &apos;orange&apos; : color &apos;gray&apos;" />
<map value="LED_PADMODE_ROLL" action="pad_pages 3 ? color &apos;#0055AA&apos; : pad_pages 11 ? color &apos;green&apos; : pad_pages 7 ? color &apos;orange&apos; : color &apos;gray&apos;" />
<map value="LED_PADMODE_SLICER" action="pad_pages 4 ? color &apos;#0055AA&apos; : pad_pages 12 ? color &apos;green&apos; : pad_pages 8 ? color &apos;orange&apos; : color &apos;gray&apos;" />
<map value="PAD_1" action="pad 1" />
<map value="PAD_2" action="pad 2" />
<map value="PAD_3" action="pad 3" />
<map value="PAD_4" action="pad 4" />
<map value="PAD_5" action="pad 5" />
<map value="PAD_6" action="pad 6" />
<map value="PAD_7" action="pad 7" />
<map value="PAD_8" action="pad 8" />
<map value="LED_PAD_1" action="pad_button_color 1" />
<map value="LED_PAD_2" action="pad_button_color 2" />
<map value="LED_PAD_3" action="pad_button_color 3" />
<map value="LED_PAD_4" action="pad_button_color 4" />
<map value="LED_PAD_5" action="pad_button_color 5" />
<map value="LED_PAD_6" action="pad_button_color 6" />
<map value="LED_PAD_7" action="pad_button_color 7" />
<map value="LED_PAD_8" action="pad_button_color 8" />
<map value="PARAMETER-" action="pad_param -1" />
<map value="PARAMETER+" action="pad_param +1" />
<map value="SHIFT_PARAMETER-" action="pad_param2 -1" />
<map value="SHIFT_PARAMETER+" action="pad_param2 +1" />
<map value="FX_ASSIGN_1" action="only_stem &apos;vocal&apos; on ? only_stem &apos;vocal&apos; off &amp; mute_stem &apos;vocal&apos; on : mute_stem &apos;vocal&apos;" />
<map value="FX_ASSIGN_2" action="mute_stem &apos;vocal&apos; on ? mute_stem &apos;vocal&apos; off &amp; only_stem &apos;vocal&apos; on : only_stem &apos;vocal&apos;" />
<map value="FX_ON" action="effect_active" />
<map value="SHIFT_FX_ON" action="effect_3slots_layout ? effect_select +1 : effect_show_gui" />
<map value="FX_SELECT" action="effect_3slots_layout ? effect_slider 1 : effect_select" />
<map value="SHIFT_FX_SELECT" action="effect_3slots_layout ? effect_slider 2" />
<map value="FX_PARAM_1" action="effect_3slots_layout ? effect_slider 2 1 : effect_slider 1" />
<map value="FX_PARAM_2" action="effect_3slots_layout ? effect_slider 3 1 : effect_slider 2" />
<map value="SHIFT_FX_PARAM_2" action="effect_3slots_layout ? effect_slider 3 2 : effect_slider 4" />
<map value="SHIFT_FX_PARAM_1" action="effect_3slots_layout ? effect_slider 2 2 : effect_slider 3" />
<map value="FX_PARAM_ON" action="effect_3slots_layout ? effect_active 2 : effect_button 1" />
<map value="SHIFT_FX_PARAM_ON" action="effect_3slots_layout ? effect_select 2 +1 : effect_button 3" />
<map value="FX_RESET" action="effect_3slots_layout ? effect_active 3 : effect_button 2" />
<map value="SHIFT_FX_RESET" action="effect_3slots_layout ? effect_select 3 +1 : effect_button 4" />
<map value="FX_BEATS" action="device_side &apos;left&apos; ? video_transition_select : deck master video_fx_select" />
<map value="SHIFT_FX_BEATS" action="device_side &apos;left&apos; ? video_transition_slider 1 : deck master video_fx_slider 1" />
<map value="FX_BEATS-" action="device_side &apos;left&apos; ? video_transition : deck master video_fx" />
<map value="FX_BEATS+" action="device_side &apos;left&apos; ? effect_show_gui &apos;transition&apos; : deck master effect_show_gui &apos;video&apos;" />
<map value="SHIFT_FX_BEATS-" action="device_side &apos;left&apos; ? video_crossfader_auto : nothing" />
<map value="SHIFT_FX_BEATS+" action="device_side &apos;left&apos; ? video_crossfader_link : nothing" />
<map value="LED_FX_BEATS-" action="device_side &apos;left&apos; ? video_crossfader_auto : deck master video_fx" />
<map value="LED_FX_BEATS+" action="device_side &apos;left&apos; ? video_crossfader_link : deck master effect_show_gui &apos;video&apos;" />
<map value="DSP1_LINE1" action="effect_3slots_layout ? shift ? get_text &apos;`get_effect_name &amp; param_uppercase` `get_effect_slider_label 2`&apos; : get_text &apos;`get_effect_name &amp; param_uppercase` `get_effect_slider_label 1`&apos; : get_effect_name &amp; param_uppercase" />
<map value="DSP1_LINE2" action="effect_3slots_layout ? shift ? effect_slider 2 : effect_slider 1 : nothing" />
<map value="DSP1_LINE2_FROMMIDDLE" action="effect_3slots_layout ? shift ? get_effect_slider_default 2 0.5 : get_effect_slider_default 1 0.5 : shift ? get_effect_slider_default 2 0.5 : get_effect_slider_default 1 0.5" />
<map value="DSP2_LINE1" action="effect_3slots_layout ? shift ? get_text &apos;`get_effect_name 2 &amp; param_uppercase` `get_effect_slider_label 2 2`&apos; : get_text &apos;`get_effect_name 2 &amp; param_uppercase` `get_effect_slider_label 2 1`&apos; : shift ? get_effect_slider_label 3 : get_effect_slider_label 1" />
<map value="DSP2_LINE2" action="effect_3slots_layout ? shift ? effect_slider 2 2 : effect_slider 2 1 : shift ? effect_slider 3 : effect_slider 1" />
<map value="DSP2_LINE2_FROMMIDDLE" action="effect_3slots_layout ? shift ? get_effect_slider_default 2 2 0.5 : get_effect_slider_default 2 1 0.5 : shift ? get_effect_slider_default 3 0.5 : get_effect_slider_default 1 0.5" />
<map value="DSP3_LINE2" action="effect_3slots_layout ? shift ? effect_slider 3 2 : effect_slider 3 1 : shift ? effect_slider 4 : effect_slider 2" />
<map value="DSP3_LINE1" action="effect_3slots_layout ? shift ? get_text &apos;`get_effect_name 3 &amp; param_uppercase` `get_effect_slider_label 3 2`&apos; : get_text &apos;`get_effect_name 3 &amp; param_uppercase` `get_effect_slider_label 3 1`&apos; : shift ? get_effect_slider_label 4 : get_effect_slider_label 2" />
<map value="DSP3_LINE2_FROMMIDDLE" action="effect_3slots_layout ? shift ? get_effect_slider_default 3 2 0.5 : get_effect_slider_default 3 1 0.5 : shift ? get_effect_slider_default 4 0.5 : get_effect_slider_default 2 0.5" />
<map value="DSP4_LINE1" action="shift ? device_side &apos;left&apos; ? effect_has_slider &apos;transition&apos; 1 ? get_effect_slider_label &apos;transition&apos; 1 : get_text &apos;N/A&apos; : deck master effect_has_slider &apos;video&apos; 1 ? deck master get_effect_slider_label &apos;video&apos; 1 : get_text &apos;N/A&apos; : device_side &apos;left&apos; ? get_videotrans_name &amp; param_uppercase : deck master get_videofx_name &amp; param_uppercase" />
<map value="DSP4_LINE2" action="shift ? device_side &apos;left&apos; ? effect_slider &apos;transition&apos; 1 : deck master effect_slider &apos;video&apos; 1 : nothing" />
<map value="DSP4_LINE2_FROMMIDDLE" action="shift ? device_side &apos;left&apos; ? get_effect_slider_default &apos;transition&apos; 1 0.5 : deck master get_effect_slider_default &apos;video&apos; 1 0.5 : nothing" />
<map value="SHIFT_FX_ASSIGN_1" action="effect_bank_save 1" />
<map value="SHIFT_FX_ASSIGN_2" action="effect_bank_save 2" />
<map value="SHIFT_BROWSE" action="param_bigger 0 ? zoom +1% &amp; zoom_vertical +1% : zoom -1% &amp; zoom_vertical -1%" />
<map value="SHIFT_FWD" action="sideview +1" />
<map value="SHIFT_BROWSE_PUSH" action="toggle &apos;@$denonhidepads&apos;" />
<map value="SHIFT_VIEW" action="cycle &apos;@$prime4fulldecks&apos; 3" />
<map value="LED_BEATGRID+" action="var &apos;editgrid&apos; ? var &apos;beat+down&apos; ? on : var &apos;shiftbeat+down&apos; ? on : off : off" />
<map value="LED_BEATGRID-" action="var &apos;editgrid&apos; ? var &apos;beat-down&apos; ? on : var &apos;shiftbeat-down&apos; ? on : off : off" />
<map value="LED_FWD" action="browser_window &apos;sideview&apos;" />
<map value="SYNC" action="beatlock ? blink &amp; beatlock : doubleclick ? beatlock : sync" />
</mapper>
 

Inviato Wed 20 Oct 21 @ 5:46 am
djdadPRO InfinityDevelopment ManagerMember since 2005
It's related to the names of the selected Effects, but i believe this was fixed in the past.
I suppose you have different Effects selected on Left/Right Decks ?
Can you try to have on Left Deck the same Effects you have on the Right Deck ?
Let me know which Effect(s) are causing the freeze
 

Inviato Wed 20 Oct 21 @ 11:24 am
First and foremost, Thank you for responding. I’m not sure maybe I didn’t clearly state the issue. The freeze does not happen as a result of effect selection, but rather when I hit the Shift button on the left deck of the Prime 4.

(For the record, I have the same effects assigned to both sides of my VDJ setup)
 

Inviato Wed 20 Oct 21 @ 4:16 pm
djdadPRO InfinityDevelopment ManagerMember since 2005
Main reason suspecting Effects is that the bug we had fixed had the same behavior and its related to Shift because the texts on the OLED displays are updated when Shift is pressed.

Please try the following and let me know of the results..

1. See if freeze occurs if using the factory default mapping.

2. Create a custom mapping based on yours or the factory default and remove the actions from all the DSP*_LINE* keys.
See if you can reproduce with the above mapping
 

Inviato Wed 20 Oct 21 @ 5:45 pm
THAT DID IT!

So, first I tried:
"1. See if freeze occurs if using the factory default mapping."

There was no change - Prime 4 still froze up (Visually) when engaging the shift button on the left deck.

Next, I tried:
"2. Create a custom mapping based on yours or the factory default and remove the actions from all of the DSP*_LINE* keys."

This fixed the freezing issue. Only change I've noticed has been the Effects Display windows above the knobs are now blank. Buttons and knobs for the effects still function and I see visual feedback on the VDJ display, just nothing in the controller display windows.

Since it's already a known issue I suspect a future update might have a fix - fingers crossed. At least I can use the controller with some confidence.

Since this happened, it's posed the question - If something similar to this were to happen, Is there any sort of soft reboot I can do that will keep the music playing and restore the functionality?? ( that's probably a question for the Denon Forums though, huh??)

Thank you so much DJDAD!
 

Inviato Thu 21 Oct 21 @ 1:24 am