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

Mapping for MIDI Controller Behringer BCR2000 #310

Conversation

git-developer
Copy link
Contributor

@git-developer git-developer commented Nov 19, 2020

Implementation PR: mixxxdj/mixxx#3342

@git-developer git-developer changed the title BCR2000: add documentation for mapping of Behringer BCR2000 Mapping for MIDI Controller Behringer BCR2000 Nov 19, 2020
@git-developer
Copy link
Contributor Author

I'd appreciate hints on how to fix the probems that cause the checks to fail, cause I have no clue what could be wrong.

@Be-ing
Copy link
Contributor

Be-ing commented Nov 19, 2020

Click Details next to each check to see the error messages.

@git-developer
Copy link
Contributor Author

I did that, but it makes on sense to me. The first check is about dead links in files I didn't touch, and the second one prints
Error: The process '/opt/hostedtoolcache/Python/3.9.0/x64/bin/pre-commit' failed with exit code 1

@git-developer
Copy link
Contributor Author

Ah, got it, it's about trailing spaces and missing newlines.

@git-developer
Copy link
Contributor Author

Is it safe to ignore the broken link check for files of foreign mappings?

@Holzhaus
Copy link
Member

Is it safe to ignore the broken link check for files of foreign mappings?

Yes.

Copy link
Member

@Holzhaus Holzhaus left a comment

Choose a reason for hiding this comment

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

Thank you!

-------------------
The BCR2000 is a general purpose controller that allows different mappings.

The file ``Behringer-BCR2000-configuration-scripts.js`` contains a default mapping which works
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
The file ``Behringer-BCR2000-configuration-scripts.js`` contains a default mapping which works
The file `:file:`Behringer-BCR2000-configuration-scripts.js` contains a default mapping which works

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I tried this, but it was printed as-is in the manual, so I removed it again.

Comment on lines 62 to 72

The mapping is split into several files:

============================================== =================== ===========
File When to edit? Description
============================================== =================== ===========
``Behringer-BCR2000-scripts.js`` Mapping changes Mapping configuration. You can assign Mixxx controls to hardware controls here, and change which controls are bound to the Shift layer.
``Behringer-BCR2000-preset-scripts.js`` Preset changes Contains the mapping of MIDI messages to hardware controls. If for some reason you'd like to use a different preset than the factory settings of preset #1, you can change the MIDI addresses according to your controller's preset within this file.
``Behinger BCR2000.midi.xml`` Preset changes Entry point that contains the MIDI addresses for all input controls and includes all other files. The mapping of MIDI messages to Mixxx controls is purely done in Javascript and based on `Components JS <https://github.com/mixxxdj/mixxx/wiki/Components%20JS>`_, so that the XML file does not contain any information about the Mixxx controls (e.g. `key` and `group`).
``midi-components-extension.js`` Usually never Contains required Javascript components for the mapping.
============================================== =================== ===========
Copy link
Member

Choose a reason for hiding this comment

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

I don't think this belongs into the user manual. You can put developer documentation into the source file itself, which also decreases the likelihood of becoming outdated.

source/hardware/controllers/behringer_bcr2000.rst Outdated Show resolved Hide resolved
source/hardware/controllers/behringer_bcr2000.rst Outdated Show resolved Hide resolved
source/hardware/controllers/behringer_bcr2000.rst Outdated Show resolved Hide resolved
source/hardware/controllers/behringer_bcr2000.rst Outdated Show resolved Hide resolved
^^^^^^^^^^^^^^^
The default mapping covers 2 effect units and loop, reverse & pitch controls for 2 decks:

.. figure:: behringer_bcr2000.svg
Copy link
Member

Choose a reason for hiding this comment

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

This PR also contains a PNG file. Since it's not used and the SVG is preferable anyway, please remove it.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done.


.. figure:: behringer_bcr2000.svg
:width: 600

Copy link
Member

Choose a reason for hiding this comment

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

Please add a table that explains how the mapping works. I suggest to explain that the left half of the two top rows is used for deck 1, and the right half for deck 2, then make a table that explains the knobs and buttons from left to right. If there's a label on the hardware, please mention it:

========================================  =========================================================================
Control                                   Description
========================================  =========================================================================
Knob 1 (:hwlabel:`TYPE`/:hwlabel:`VAL2`)  Manipulates the key of the track in semitones.
Knob 2 (:hwlabel:`CH`/:hwlabel:`MODE`)    Moves the current loop left or right.
...                                       ...
Button 1                                  Toggles Keylock.
Shift + Button 1                          Toggles Vinyl mode.
...                                       ...
========================================  =========================================================================

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I added a table, please check if it's well-arranged.

source/hardware/controllers/behringer_bcr2000.rst Outdated Show resolved Hide resolved
source/hardware/controllers/behringer_bcr2000.rst Outdated Show resolved Hide resolved
Copy link
Contributor Author

@git-developer git-developer left a comment

Choose a reason for hiding this comment

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

All open comments should be addressed now.

^^^^^^^^^^^^^^^
The default mapping covers 2 effect units and loop, reverse & pitch controls for 2 decks:

.. figure:: behringer_bcr2000.svg
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done.


.. figure:: behringer_bcr2000.svg
:width: 600

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I added a table, please check if it's well-arranged.


- `PDF, DIN A4 <behringer_bcr2000-a4.pdf>`_
- `PDF, DIN A3 <behringer_bcr2000-a3.pdf>`_
- `ODG <behringer_bcr2000.odg>`_ (LibreOffice)
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I moved all files but the RST, and hope the references will not be broken.

@git-developer
Copy link
Contributor Author

Note: Within the table, the font size of list paragraphs and the note box is bigger than the font size of normal paragraphs (16pt vs. 14.4pt).

@git-developer
Copy link
Contributor Author

The last build failed because stantondj.com was down (link check). The site is up again, so the build should be fine now. Unfortunately I can't trigger a re-run, probably due to missing permissions.

@Holzhaus Holzhaus merged commit 23bc5fd into mixxxdj:2.3 May 2, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants