Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reloop TerminalMix 2/4 :: mapping update #1490

Merged
merged 7 commits into from Mar 31, 2018

Conversation

ronso0
Copy link
Member

@ronso0 ronso0 commented Jan 22, 2018

  • 2.1 looping UI
  • 2.1 FX UI with components.js
  • fix Library navigation
  • add tags to descriptionso mapping can be properly sorted in GUI

Reminder for after merge:

  • fix wheelTurn() to continue backspin after releasing wheel
  • add mapping options for Shift + wheel turn
  • add mapping options for Hotcue/Sampler button grid
  • map GUI options to unused buttons (Crates, View, ... > show mixer, show waveforms etc.)
  • long-press Sync to enable Master Sync

@ronso0 ronso0 changed the title Reloop TerminalMix 2/4 :: mapping update [WIP] Reloop TerminalMix 2/4 :: mapping update Jan 23, 2018
@Be-ing Be-ing added this to the 2.1.0 milestone Feb 25, 2018
@ronso0
Copy link
Member Author

ronso0 commented Mar 12, 2018

@Be-ing How do I use a rotary (stepped, value is 63/65) encoder to control Dry/Wet of the effect units?
I'm this question came up some time ago, but I can't find it..

@Be-ing
Copy link
Member

Be-ing commented Mar 12, 2018

Implement a custom input function for the dryWetKnob Component: https://mixxx.org/wiki/doku.php/components_js#setup1

@ronso0
Copy link
Member Author

ronso0 commented Mar 12, 2018

Okay, in the wiki, of course. I thought there's shortcut, but that function's already pretty compact.
Edit: had to disable softTakeover and tweak the values a little so the knob turn matches the range of a physical knob so that the FX unit can be muted quickly.

@Be-ing
Copy link
Member

Be-ing commented Mar 12, 2018

Yes, the 0.05 in the example on the wiki is just an example. I added a comment to the example on the wiki to explain that should be adjusted for each controller.

@Be-ing
Copy link
Member

Be-ing commented Mar 20, 2018

Did you forget to commit the JS file? I only see the XML file in this PR.

@ronso0
Copy link
Member Author

ronso0 commented Mar 20, 2018

I didn't commit the js file yet. I finished the looping/jump and the FX mapping and I feels good on both controllers (loop row is the same), but it was twice that I had an issue with my TerminalMix 4 and I want to make sure it's hardware related: suddenly Volume fader 2 was controlling fader 1+2 until I touched fader 1 again...

@ronso0
Copy link
Member Author

ronso0 commented Mar 30, 2018

In the first commit b694313 my editor changed the indendations. When reviewing after I finished this, please check the single commits for speific changes.

<author>Sean M. Pappalardo (1.11), ronso0 (2.1 update)</author>
<description>
A complete 4-deck preset for a single Reloop Terminal Mix 2 or 4.
Uses scripting. Open script file and adapt variables to your needs:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove "Uses scripting". This is an implementation detail that should not be presented to users. Also, I do not see the mentioned variables in the script file. Could you remove mention of those too?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please be patient. as I said, this is still in progress. I'm working on it right now, and of course I'll clean up the variables as well

@ronso0
Copy link
Member Author

ronso0 commented Mar 30, 2018

@Pegasus-RPG @Be-ing
I just noticed the rate range function is broken:
Starting with 8% set in Preferences, I can increase the range up to 90% but I can not decrease it.
Calling TerminalMix.pitchRange at 90% with the fader at the limit, the rate increases but the slider moves accordingly; so touching the physical slider again shows that the range is still 90%.
I would expect the rate range to increase/decrease again step by step when reaching either 4% or 90%.

Not sure if I can fix it for 2.1. Can anyone help me with this or should I disable it for now?

@Pegasus-RPG
Copy link
Member

The script is supposed to toggle the range up to 100% then wrap around to 8% if toggled again. Is Mixxx internally preventing setting rateRange to 100% and instead limiting it to 90%? (If so, a quick fix would just be to set the last value in TerminalMix.pitchRanges to 0.9 instead of 1.0. But I know at least one other controller script that depends on being able to set rateRange to 100%.)

@Pegasus-RPG
Copy link
Member

Pegasus-RPG commented Mar 30, 2018

Ah yes, commit 29ef9d1 is the culprit. Increasing the upper bound on that control to 1.0 or above (I suggest 4.0) would fix this as well.

@ronso0
Copy link
Member Author

ronso0 commented Mar 31, 2018

I finished the essentials (2.1 looping and FX interface) and it works just fine on both the TerminalMix 2 & 4. This can be reviewed and merged.
Meanwhile I'll add tags to the xml so it can be sorted reasonably in the mapping GUI, and clean up a bit.

@ronso0
Copy link
Member Author

ronso0 commented Mar 31, 2018

still WIP. removing duplicates, non-existant & useless controls, adding tags

… add <decription> tags for mixer, FX, looping sections etc.
@ronso0
Copy link
Member Author

ronso0 commented Mar 31, 2018

Done.

Will update the wiki asap.
[Library], ChooseItem needs to b changed to [Library], GoToItem as soon as #1560 is merged.

@Be-ing
Copy link
Member

Be-ing commented Mar 31, 2018

#1560 was already merged.

@ronso0
Copy link
Member Author

ronso0 commented Mar 31, 2018

#1560 was already merged.

Oh...
Changes applied

@Be-ing
Copy link
Member

Be-ing commented Mar 31, 2018

LGTM thanks 👍 Please update the wiki.

@Be-ing Be-ing changed the title [WIP] Reloop TerminalMix 2/4 :: mapping update Reloop TerminalMix 2/4 :: mapping update Mar 31, 2018
@Be-ing Be-ing merged commit 6e0d392 into mixxxdj:2.1 Mar 31, 2018
@Be-ing
Copy link
Member

Be-ing commented Mar 31, 2018

Ugh somehow this broke the controller mapping validation test:

ControllerEngine: Watching JS File: "E:/Jenkins/workspace/v2.1/mixxx-2.1-release/architecture/amd64/platform/windows/res/controllers/Reloop Terminal Mix 2-4.js" 
ControllerEngine: Loading "E:/Jenkins/workspace/v2.1/mixxx-2.1-release/architecture/amd64/platform/windows/res/controllers/Reloop Terminal Mix 2-4.js" 
ControlDoublePrivate::getControl returning NULL for ( "[EffectRack1_EffectUnit1]" , "show_parameters" ) 
"ControllerEngine: script tried to connect to ControlObject ([EffectRack1_EffectUnit1], show_parameters) which is non-existent, ignoring." 
ControllerEngine: "Uncaught exception at line 666 in file E:/Jenkins/workspace/v2.1/mixxx-2.1-release/architecture/amd64/platform/windows/res/controllers/midi-components-0.0.js: TypeError: Result of expression 'this.showParametersConnection' [undefined] is not an object." 
ControllerEngine shutting down... 
src\test\controller_preset_validation_test.cpp(194): error: Value of: testLoadPreset(preset)
  Actual: false
Expected: true

@Be-ing
Copy link
Member

Be-ing commented Mar 31, 2018

Oh I think I see what's happening... I'll take care of it.

@ronso0 ronso0 deleted the Reloop-TerminalMix-2/4-update branch April 2, 2018 19:35
@Be-ing
Copy link
Member

Be-ing commented Apr 3, 2018

I updated the wiki regarding the effects. I'm not sure if anything else on the wiki needs updating.

@ronso0
Copy link
Member Author

ronso0 commented Apr 3, 2018

Updating the wiki is on my ToDo for tonight or tomorrow, don't bother with it.

@ronso0
Copy link
Member Author

ronso0 commented Apr 8, 2018

Done. Wiki is up to date.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants