hardware design that best fits the mixxx software design

Mod your Mixxx: Share your controller mappings, keyboard mappings, skin and script tweaks here!

Moderators: garth, User Customization Moderators

hardware design that best fits the mixxx software design

Postby justus » Sun Nov 25, 2018 7:54 pm

I have been working on some controller designs I intend to eventually put to market as commercially available devices. In reading about shift behavior in previous threads I learned that the design of mixxx works best if the hardware doesnt implement layer control. My design manages the layer control at the hardware level and i designed it that way to offload some of the processing power from the computer becasue I am designing stand alone devices that use a raspberry pi. Consequently my .js script is very small and the machine has low latency. should i be reconsidering this design? I will have a ton of things to rework and code, but if this design is only going to become an issue later I think now would be a better time than later. Any advice?
justus
 
Posts: 5
Joined: Sun Jan 28, 2018 2:06 am

Re: hardware design that best fits the mixxx software design

Postby Be. » Sun Nov 25, 2018 8:06 pm

If you implement layer control in firmware, then if someone wants to make a mapping that uses layering differently, they have to work around the firmware. If do decide to implement layer control in firmware for other software that doesn't have a scripting system for controllers, then I suggest at least implementing a way to turn it off. You could implement that either by having a certain MIDI code switch how the firmware behaves or switching it on the controller somehow. For example, the Allen & Heath Xone K2 enters a setup mode when the controller is plugged in with a specific button held down and the controller remembers settings when it is powered down.
I heard FLAC and I haven't gone back.
Protect your hearing with earplugs!

Hear my mixes
User avatar
Be.
Mixxx Developer
 
Posts: 2349
Joined: Tue Jan 06, 2015 1:00 am
Location: Chicago, USA

Re: hardware design that best fits the mixxx software design

Postby kazakore » Wed Nov 28, 2018 12:09 pm

They both have pros and cons. Bear in mind on top of all Be's correct points that if you have layer control on the hardware level then it is much easier for any user, with zero programming knowledge, to use the MIDI Mapper to generate a script that can fully utilise the controller. If it has to be done in software this is not possible, it needs to be scripted. Same will go for other software.
kazakore
 
Posts: 468
Joined: Sat Feb 20, 2016 1:38 pm

Re: hardware design that best fits the mixxx software design

Postby justus » Tue Dec 04, 2018 11:36 am

Here's how I implemented layer control currently : there is a bank of 14 buttons each assigned to a midi note. this banks layer is determined by a 3 buttons that are not assigned midi and are controller specific. each layer assigns another set of midi notes for 56 total (default + 3 buttons). there are 4 additional buttons that are assigned midi notes but do not change with the layer. so 60 midi notes total There are also 3 fader slides that do not change with the layer but send CC info. Lastly there are 7 fader knobs that send CC info and these too are controlled by a separate row of 3 layer buttons (that send no midi data) giving 28 CC. also a jog wheel that uses 1 CC making 32 CC total. I may still add a couple of CC options to the jog wheel so that motor control can go from coarse to fine, but have yet to implement that just yet
justus
 
Posts: 5
Joined: Sun Jan 28, 2018 2:06 am

Re: hardware design that best fits the mixxx software design

Postby Be. » Tue Dec 04, 2018 12:25 pm

I do not recommend having layer switching buttons that do not send MIDI codes. This has recently been an issue with the Numark Mixtrack Platinum limiting how it can be mapped. I recommend having a way to disable the layer switching buttons from changing the MIDI coes.
I heard FLAC and I haven't gone back.
Protect your hearing with earplugs!

Hear my mixes
User avatar
Be.
Mixxx Developer
 
Posts: 2349
Joined: Tue Jan 06, 2015 1:00 am
Location: Chicago, USA

Re: hardware design that best fits the mixxx software design

Postby mbrouillet » Mon Jun 17, 2019 8:22 pm

Hello !
I just read this, and I'm interested in the Layer features of the Xone K2. When you say that the feature should be disabled, does that imply that Mixxx can only use one (default) layer ? Or is the Layering implemented in Mixxx instead (and therefore the number of controls the same as with the hardware 3-Layer feature) ?
Can I program three different functions on each control ?
Thank you !
mbrouillet
 
Posts: 16
Joined: Sun Jun 09, 2019 10:32 am

Re: hardware design that best fits the mixxx software design

Postby Be. » Mon Jun 17, 2019 9:29 pm

mbrouillet wrote:Hello !
I just read this, and I'm interested in the Layer features of the Xone K2. When you say that the feature should be disabled, does that imply that Mixxx can only use one (default) layer ? Or is the Layering implemented in Mixxx instead (and therefore the number of controls the same as with the hardware 3-Layer feature) ?
Can I program three different functions on each control ?
Thank you !


The Xone K2 mapping in Mixxx handles switching layers in the mapping script. I intentionally designed the mapping so it only has two layers for the bottom button grid. Toggling between two layers is easier than cycling through 3 layers with a single button. (For Mixxx 2.3, I think I will add a third layer for the new intro/outro cue buttons.) Also, there is a "supershift" layer accessed by pressing shift and the layer button. Neither of these features would have been possible using the Latching Layers feature of the Xone K2 firmware.

If you want to make your own mapping instead of using the one included in Mixxx, you're free to use Latching Layers or not.
I heard FLAC and I haven't gone back.
Protect your hearing with earplugs!

Hear my mixes
User avatar
Be.
Mixxx Developer
 
Posts: 2349
Joined: Tue Jan 06, 2015 1:00 am
Location: Chicago, USA

Re: hardware design that best fits the mixxx software design

Postby mbrouillet » Mon Jun 17, 2019 10:57 pm

Be. wrote:The Xone K2 mapping in Mixxx handles switching layers in the mapping script. I intentionally designed the mapping so it only has two layers for the bottom button grid. Toggling between two layers is easier than cycling through 3 layers with a single button. (For Mixxx 2.3, I think I will add a third layer for the new intro/outro cue buttons.) Also, there is a "supershift" layer accessed by pressing shift and the layer button. Neither of these features would have been possible using the Latching Layers feature of the Xone K2 firmware.

If you want to make your own mapping instead of using the one included in Mixxx, you're free to use Latching Layers or not.


Very clear. Thank you so much.
mbrouillet
 
Posts: 16
Joined: Sun Jun 09, 2019 10:32 am


Return to User Customizations

Who is online

Users browsing this forum: No registered users and 1 guest