Jump to content

RFC: MBSEQ V4 percussion tracks


TK.
 Share

Recommended Posts

This question is mainly directed to people who already built a MBSEQ, and know the current user interface.

While thinking about the most erconomic way to handle additional percussion tracks in MBSEQ V4, I came to the conclusion that a MB808 like solution would be the best (-> background infos)

If you haven't tried it yet: just upload the setup_808_mbseqv3_hardware.hex file of the midibox_808 package - BankSticks won't be reformatted, therefore you can evaluate this version w/o the risk for data loss.

Main difference compared to a common tracks:

- 16 percussion instruments are combined in a single pattern.

In MBSEQV4, I could provide 4 percussion groups, which results into 64 additional tracks played in parallel to 16 "full featured" tracks used for synths and loopbacks

- this would allow to prepare some "base" patterns (e.g. bass drum, snare, hihat), and some additional patterns with other percussions/samples which are added during the session to fill the song.

- a A/B/C/D section to select variants/breaks. These sections can also be chained (e.g. press A/B to combine two sections) - A/B/C/D would be selectable with the 4 track buttons

- simplified live recording of all percussion instruments

- and also a live play mode to play drum instruments with GP buttons

- all drum instruments can be named

- etc.. (see manual)

Alternatively to such a solution, I could integrate a percussion option for 16 drum instruments to a common track normaly used for synth instruments, which would result into 4 tracks * 16 instruments = 64 instruments per pattern group (=256 instruments in total, splitted over 4 groups when no synths are played)

But I fear that it will complicate the UI too much, especially because they would be combined to a single pattern (instead of 4), and the track buttons couldn't be used to interactively select the A/B/C/D section.

Instead, if I would clearly separate "synth" from "drum" tracks by providing different groups (G1..2..3..4 for synths, G5..6..7..8 for percussions) I hope that the usage will be easier.

How do you think about this?

Any alternative proposals?

Best Regards, Thorsten.

Link to comment
Share on other sites

I like the first one..

How is each drum hit defined? Is it's midi channel stuck to what track it's in? or can it be defined for every different drum instrument?

ie, Note D#2 Midi Channel 2 = Open Hihat.

It would good to be able to mix and match drum kits from different modules (Both analogue & Midi)..

Looking forward to V4... but I'm really looking forward to fixed up real time recording.. A++++++

Link to comment
Share on other sites

Both, MIDI channel and MIDI port can be defined for each instrument (256 ports are available, each port provides 16 channels).

16 ports (-> 32768 CV channels and triggers) are prepared for AOUT outputs, we've also some ports for USB, UART, IIC, OSC and future extensions - this should be sufficient? ;)

Don't worry about the improved real time recording. Programming this in C with the already available infrastructure (FreeRTOS and MIOS32) is pretty easy and much less time consuming than implementing the same stuff in assembly language with all those PIC limitations as mentioned several times before.

Best Regards, Thorsten.

Link to comment
Share on other sites

Will you be able to change pitch some how for each individual drum hit? I always like pitching drums sounds at different steps in a sequence. I would expect that you would not be able to so within drum tracks and only be able to do that in full featured tracks yes? Or pitch the individual sound in your synth/sampler.  I like your ideas of a/b/c/d live jamming and I think that would be cool with full featured tracks aswell. I apologize in advance for posting possibly non needed comments as I haven't played with my unfinished MBSEQ v3 for awhile. I was previously testing it with my controller keyboard.

Link to comment
Share on other sites

Each drum instrument will provide a dedicated parameter layer, which is usually assigned to velocity, but could also be assigned to Pitch Wheel. The number of available layers depends on the number of steps per pattern

For "common" patterns A/B/C/D sections could be provided as well, but this means that I cannot use the track buttons anymore to select the section (-> inconsistent UI)

Best Regards, Thorsten.

Link to comment
Share on other sites

hmm, it would be cool if this percussionn tracks could be assignt to addational hardware like the 4x16 led-dualcolour matrix...

i thougt bevore.... it would be better to have the mb808 and the MBSeq. in one device, so melodie and drumsequence are together, stored editet and switchd ;)...

...but sorry that was not you asked....

Link to comment
Share on other sites

I'm for separation of drum and synth tracks. I really like the idea of combining 16 tracks in single pattern.

In MBSEQV4, I could provide 4 percussion groups, which results into 64 additional tracks played in parallel to 16 "full featured" tracks used for synths and loopbacks

Does this mean seq would play 8 pattern groups in parallel? If so maybe adding a page to mute each each pattern group in addition to track mute page.

I personally think this is biggest weakness of MBSEQ. I never use Note/Note/Note layer, which I suppose is meant for drum programing, because they all share same gate which is confusing for me. Maybe I'm using it wrong way but it's just not easy to use.

Can you give more info about naming drum instruments feature?

One thing i noticed in drum synths is they mostly follow General MIDI Percussion Key Map or each sound (drum, snare, toms..) needs just one note to trigger. Maybe edit page in drum mode could be made in such way that pressing GP button would set one constant predefined note and encoder could be use to modify selected parameter layer. You could also display different LCD page for drum mode e.g. each step could be represented by o/* so there's more space to display other info as well like parameter value. Im not sure if this make sense, correct me if I'm missing something.

Link to comment
Share on other sites

I like the idea of the extended/MB808 drum mode, especially the A/B/C/D option would be great, cos this will make it much easier to bring in variations or breaks.

BUT:

Wouldn't that mean that there will be TWO mute pages ?

One for the 16 "normal" patterns and one for the 16 "drum" patterns.

Since there are only 16 GP buttons, this would mean I would have to switch in some way between those two mute pages.

And since the muting is the most important thing in building up / breaking down a track live (at least for me),

that doesn't sound very pleasing to me.

Oh, and a little hint offtopic:

.... I never use Note/Note/Note layer, which I suppose is meant for drum programing, because they all share same gate which is confusing for me. Maybe I'm using it wrong way but it's just not easy to use.

LayerMode 4 (N/N/N) is for Chords, try Mode 5 (Vel/Vel/Vel) and use the "CopyPreset", instant RolandTR feeling.

I discovered that myself just some weeks ago :)

Link to comment
Share on other sites

Thanks for your valuable input! :)

As for the Mute page selection, I think that following approach would fit our needs:

Wouldn't that mean that there will be TWO mute pages ?

One for the 16 "normal" patterns and one for the 16 "drum" patterns.

5 Mute pages are required: 16 tracks for Group 1-4 and 4 * 16 tracks for Drum 1, 2, 3 and 4

Does this mean seq would play 8 pattern groups in parallel? If so maybe adding a page to mute each each pattern group in addition to track mute page.

These requirements can be covered by showing following page when the Mute button is pressed:

mute_1.gif

Left hand side: gives you an oversight over the "track activities" (D1-D4 have to combine 4 tracks per meter), and the possibility to mute the complete group!

Right hand side: allows you to enter a special mute page for a groups

And it allows you to select a group w/o adding 8 group buttons to your MBSEQ frontpanel

G1-4 (16 tracks) could be combined as known from MBSEQ V3:

mute_2.gif

For drums, a separate page for each pattern will be required:

mute_3.gif

Can you give more info about naming drum instruments feature?

Here you can also see the advantage of using labels (which will be available for Tracks as well)

One thing i noticed in drum synths is they mostly follow General MIDI Percussion Key Map or each sound (drum, snare, toms..) needs just one note to trigger. Maybe edit page in drum mode could be made in such way that pressing GP button would set one constant predefined note and encoder could be use to modify selected parameter layer.

This handling isn't consistent to the configuration of "common" tracks.

And it isn't selfexplaining - I guess that most people will prefer to see a more verbose configuration page - at the end, the time it takes to configure drum instruments could take longer with your approach, as we would need different pages to select the MIDI Note, Channel, MIDI Port and other Parameter assignments (which can be perfectly combined in a single page)

You could also display different LCD page for drum mode e.g. each step could be represented by o/* so there's more space to display other info as well like parameter value. Im not sure if this make sense, correct me if I'm missing something.

I will use a similar layout like the 2*2x40 screen of MB808

E.g., gate and accent trigger are combined to a single character, which will give more space to display an additional parameter per step as well. :)

Best Regards, Thorsten.

Link to comment
Share on other sites

Ok, I'll try again  ;)

Lets say we're in the middle of a (live performed track), a swirling pad raised the excitement.

At the beginning of the next bar I want to have the bassdrum, hihat and bass synthline kicking back in, i.e. being unmuted.

For that, I would have to unmute the BD/Hat in one of the drum mute pages,

and then in light speed time switch to the "normal" mute page and unmute the bassline (or mute the pad, cos' it's got annoying  8))

It should be possible, but from a performance standpoint it's inconvenient.

Something just came up my mind:

the Elektron Machinedrum has some Shift+Mute function, you select the tracks you want to change the mute status (on/off),

deactivate the Shift+Mute, and with the next push of the mute button, your changes are applied.

I don't own a Machinedrum, but I remember that from browsing its manual, more or less.

I'll look it up.

This could be

1) a workaround for the mute page switching

2) a handy tool for creating massive track changes

Link to comment
Share on other sites

In this page:

mute_1.gif

You would press the button below D1 (if bass/snare/etc.. are played from these tracks) to mute/unmute the whole group. Take a second finger to mute/unmute another group.

It's a question how you organize your songs.

E.g., you could take D4 for some standard drums to bridge pattern changes.

Normaly it would be muted - once you want to change patterns, mute G1-4 and D1-3, unmute D4, go to the pattern (or song) page, change the patterns, unmute G1-4/D1-3, mute D4

But I see your point with the "shift" button. Nice idea, could also be useful for synchronized pattern changes on all groups.

Which button could be used for such a purpose - maybe SELECT, as it isn't used in the Pattern/Mute page yet?

Best Regards, Thorsten.

Link to comment
Share on other sites

...

It's a question how you organize your songs.

..

Ok, I got your point

It's only tricky when inspiration strikes and my song organisation in groups doesnt work anymore 

sorry, looks like I'm a bit narrow minded today :)

Maybe a "custom" mute page ?

If the drum pattern had just 8 tracks, I could say I want G1, G3 and D2 on my custom mute page.

I'm just being a bit heretical now, but do we really need 64 individual drum tracks ?

Which button could be used for such a purpose - maybe SELECT, as it isn't used in the Pattern/Mute page yet

The select button sounds reasonable, unused in mute and similar function as in the Mixer Page for example.

Link to comment
Share on other sites

Ok, I got your point

It's only tricky when inspiration strikes and my song organisation in groups doesnt work anymore 

sorry, looks like I'm a bit narrow minded today :)

No problem, the reason I started to ask users is to find out, if such changes would still work with their workflow.

If they like the changes, or if it would lead to a cumbersome handling.

Therefore just say what you think before it's too late ;)

(I haven't started with the implementation of this part anyhow)

Maybe a "custom" mute page ?

If the drum pattern had just 8 tracks, I could say I want G1, G3 and D2 on my custom mute page.

Of course, this would be possible - but I prefer a solution which works for everybody.

I'm just being a bit heretical now, but do we really need 64 individual drum tracks ?

-> question to other users

How many tracks/groups do you need?

For my own workflow, the 4 existing groups are sufficient.

Also 16 tracks are enough, considered that multiple drum instruments can be played from two or three tracks with the same "editing comfort" known from MB808

Best Regards, Thorsten.

Link to comment
Share on other sites

Ok, conceptional changes:

  • support for 16 tracks only
  • a drum track consists of up to 16 instruments, stored in 16 layers
  • in distance to a common track, each instrument has its own set of triggers (e.g. Trigger Layer A:Gate/B:Accent/C:Roll)
  • each layer can store 2 additional values per step, mapable to velocity/CCs/PitchBender, and especially recordable (e.g. by tweaking the appr. GP encoders in live recording mode)
  • To select a drum instrument, press&hold Layer C button - a special screen will be displayed, selection via GP buttons
  • all layers can be labled with 5 characters
  • all layers get an individual mute, but inside the common mute page you can also disable the whole track.
  • number of steps (examples):
    • 16 instruments per track, 3 trigger layers, 2 parameter layers: 32 (obsolete - concept has been simplified)
    • 16 instruments per track, 3 trigger layers, 1 parameter layer: 64 (obsolete - concept has been simplified)
    • 16 instruments per track, 3 trigger layers, no parameter layer: 128 (obsolete - concept has been simplified)
    • 8 instruments per track, 3 trigger layers, 1 parameter layer: 128 (obsolete - concept has been simplified)
    • note that each pattern consists of 4 tracks, and that 4 patterns can be played in parallel (e.g. depending on your prefered partitioning, you could configure 2 or 3 tracks for playing drums)

    [*]step view button (-> old MBSEQ frontpanel: F2) allows you to select the the edit view quickly

    [*]so long step view button is pressed, the A/B/C/D section can be selected via Track Buttons. This will also work for "common" tracks

If somebody wants to try out the user interface: I can send you a MacOS based emulation .app ;)

Best Regards, Thorsten.

Link to comment
Share on other sites

But I see your point with the "shift" button. Nice idea, could also be useful for synchronized pattern changes on all groups.

Which button could be used for such a purpose - maybe SELECT, as it isn't used in the Pattern/Mute page yet?

This brings to mind that you can currently hold down Mute button and then multi-select tracks with the GP buttons. Can releasing the Mute button mute those selected tracks? (That's actually what I thought it should do when I first discovered it - I haven't read the manual much :) ). That seems a bit more intuitive than using another button, although at the cost of the selecting track function in the Mute page (maybe that function can be refactored into other V4 features/pages).

Link to comment
Share on other sites

support for 16 tracks only

I liked separate drum and synth tracks idea more but I agree that 16 tracks are enough

# a drum track consists of up to 16 instruments, stored in 16 layers

# in distance to a common track, each instrument has its own set of triggers (e.g. Trigger Layer A:Gate/B:Accent/C:Roll)

# each layer can store 2 additional values per step, mapable to velocity/CCs/PitchBender, and especially recordable (e.g. by tweaking the appr. GP encoders in live recording mode)

This will work, I like the idea

If somebody wants to try out the user interface: I can send you a MacOS based emulation .app

Please do :)

Link to comment
Share on other sites

This brings to mind that you can currently hold down Mute button and then multi-select tracks with the GP buttons. Can releasing the Mute button mute those selected tracks? (That's actually what I thought it should do when I first discovered it - I haven't read the manual much :) ). That seems a bit more intuitive than using another button, although at the cost of the selecting track function in the Mute page (maybe that function can be refactored into other V4 features/pages).

Great idea!

And as of v3.4, the F4 can be used for a track selection (see changelog).

I your approach might be the most intuitive, presuming the F4 keeps that selection funtion

Link to comment
Share on other sites

  • 2 weeks later...

support for percussion tracks and a way to store some kind of preset drum map would be huge for me, so this is extremely exciting since I am currently frustrated by how tedious it is to quickly program drums (vs. how easy it appears to be with the MB808.)

let me see if i understand... with 16 tracks containing 16 instruments each, does that mean you could be controlling up to 256 different drums at the same time?  or does that mean you're limited to 16? 

will labeled drum presets be definable (such as 808Kick -> Ch. 1 Note C-1, etc.) to aid assigning drums to a new drum track?

Link to comment
Share on other sites

let me see if i understand... with 16 tracks containing 16 instruments each, does that mean you could be controlling up to 256 different drums at the same time?  or does that mean you're limited to 16? 

No, each track can be configured to control 16 drums, means: yes, you could control 256 drums at the same time.

Note that drum assignments are part of the pattern. This means: you can change the instruments by selecting a different pattern.

And: a pattern consists of 4 tracks (= up to 64 drum instruments, or 16 drums + 2 basslines + 1 pad line, or ... or... or...)

And: 4 patterns + a MIDI file can be played in parallel

So - at the end I must say, I cannot really give you a sufficient answer for your question ;)

will labeled drum presets be definable (such as 808Kick -> Ch. 1 Note C-1, etc.) to aid assigning drums to a new drum track?

80 characters are reserved for each track to store labels.

On common tracks, we take only 5 characters to select a "category" (e.g. Lead, Pad, Fx, ...), and 15 additional characters to name the instrument (e.g. "MIDIbox SID" or track type ("Lovely Arps"). Using more characters doesn't make much sense here, just keep in mind that we want to display it somehow on a 2*40x2 LCD together with other informations.

Drum tracks will take 5 characters per instrument. This is especially useful if you select a drum layer (16*5 characters can be displayed at the upper line of the 2*40x2 screen)

Btw.: here my current plans how to configure track constraints in the "Event" page.

Please compare with the "Track Event Page" of MBSEQ V3

Targets: easy configuration limited to a set of parameters which really make sense to be controlled from a single track - you can always use additional tracks to send more events to the same channel/MIDI port if required.

This usually results into more interesting sequences anyhow.

E.g., use Track #1 to trigger 16 drums, use track #2 to change drum sounds via CCs, and run the two tracks with different lengths, step direction/progression parameters, clock dividers, etc...

This quickly results into a complex pattern which will never repeat in 2..3 minutes, especially if you are changing the parameters while the sequence is playing.

Use the remaining 14 tracks for other useful stuff - e.g. loopback to Track #1 and #2 to automate parameter changes ;)


  // layout:
  // 00000000001111111111222222222233333333330000000000111111111122222222223333333333
  // 01234567890123456789012345678901234567890123456789012345678901234567890123456789
  // <--------------------------------------><-------------------------------------->
  // Trk. Type Steps/ParL/TrgL Port Chn.    Layer  controls                Edit     
  // G1T1 Note  256  4    8  IIC2  12        D    Prob                    Name INIT

  // Trk. Type Steps/ParL/TrgL Port Chn.    Layer  controls                Edit     
  // G1T1 Note  256  4    8  IIC2  12        D    CC #001 ModWheel        Name INIT

  // Track Type "Note", Chord" and "CC":
  // Note: Parameter Layer A/B/C statically assigned to Note Number/Velocity/Length
  //      Parameter Layer D..P can be mapped to
  //      - additional Notes (e.g. for poly recording)
  //      - Base note (directly forwarded to Transposer, e.g. for Force-to-Scale or Chords)
  //      - CC (Number 000..127 assignable, GM controller name will be displayed)
  //      - Pitch Bender
  //      - Loopback (Number 000..127 assignable, name will be displayed)
  //      - Delay (+/- 96 ticks @384 ppqn)
  //      - Probability (100%..0%)
  //      - "Roll/Flam Effect" (a selection of up to 128 different effects selectable for each step separately)
  // Chord: same like Note, but predefined Chords will be played
  // CC: Layer A/B/C play CCs (or other parameters) as well - no note number, no velocity, no length

  // Available Layer Constraints (Partitioning for 1024 bytes Par. memory, 2048 bits Trg. memory)
  //    - 256 Steps with  4 Parameter Layers A-D and 8 Trigger Layers A-H
  //    - 128 Steps with  8 Parameter Layers A-H and 8 Trigger Layers A-H
  //    -  64 Steps with 16 Parameter Layers A-P and 8 Trigger Layers A-H


  // layout:
  // 00000000001111111111222222222233333333330000000000111111111122222222223333333333
  // 01234567890123456789012345678901234567890123456789012345678901234567890123456789
  // <--------------------------------------><-------------------------------------->
  // Trk. Type StepsP/T  Drums Port Chn. Glb LayA LayB  Drum Note VelN VelA Edit   
  // G1T1 Drum  (64/2*64) 16  USB1  10  yes Prb. ----  BD  C-1  100  127 Name INIT

  // Trk. Type StepsP/T  Drums Port Chn. Glb LayA LayB  Drum Note VelN VelA Edit   
  // G1T1 Drum  (2*64/256) 8  USB1  12  no Vel. Len.  SD  D-1  ---  --- Name INIT


  // Track Type "Drums":
  //    1 or 2 parameter layers for each trigger layer (drum instrument).
  //    If parameters layers consist of more than 1024 steps in total, steps > 1024 will be mirrored
  //    assignable to Velocity/Gatelength/Delay/Probability/Roll/Flam only
  //    (no CC, no Pitch Bender, no Loopback, as they don't work note-wise, but
  //    only channel wise
  //    just send them from a different track)

  // Each drum instrument provides 4 constant parameters for:
  //  - Note Number
  //  - MIDI Channel (1-16) - optionally, we can select a "local" channel definition for the instrument
  //  - Velocity Normal (if not taken from Parameter Layer)
  //  - Velocity Accented (if not taken from Parameter Layer)


  // Available Layer Constraints (Partitioning for 1024 bytes Par. memory, 2048 bits Trg. memory)
  //    - 16 Parameter Layers with 64 steps and 2*16 Trigger Layers A-P with 64 steps taken for Gate and Accent
  //    - 2*16 Parameter Layer with 32 steps and 16 Trigger Layers A-P with 128 steps taken for Gate
  //    - 8 Parameter Layer with 128 steps and 2*8 Trigger Layers A-P with 128 steps taken for Gate and Accent
  //    - 2*8 Parameter Layer with 64 steps and 8 Trigger Layers A-P with 256 steps taken for Gate
[/code]

Best Regards, Thorsten.

/Edit: simplified drum mode partitionation

Layer Button assignments in edit page: Trigger Layer A: select Gate, Trigger Layer B: select Accent, Trigger Layer C: select drum instrument with GP buttons (alternatively use Datawheel or Up/Down button to select instrument)

/Edit2: simplified again - this is really a concept in progress

Link to comment
Share on other sites

I simplified the layer configuration concept to a minimum of userful possibilities, because I fear that more variations will only confuse you, and disturb the workflow.

My questions (please read the black code box in previous posting):

- Note/Chord/CC mode: is any useful layer parameter option (like Notes/Velocity/Length/Base Note/CC/Pitch Bender/Loopback/Delay/Probability) missing?

- drum mode: does anybody really see the need for more variations, e.g. 4 parameter layers with 64 steps, if only 8 drum instruments are played per track?

(I think: no)

Note that the actual track length can be configured separately (like before) - "number of steps" means the maximum track length, taken as constraint for segmenting the track memory

Best Regards, Thorsten.

Link to comment
Share on other sites

.. is any useful layer parameter option ...missing?

I don't think there's any parameter missing. Looks very promising, especially the chance to put in very complex chord structures thanks to the additional notes in parameter layers.

- drum mode: does anybody really see the need for more variations, e.g. 4 parameter layers with 64 steps, if only 8 drum instruments are played per track?

(I think: no)

This one got me thinking a bit. Haven't made up my mind yet.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...