Showing posts with label MIDI Controllers. Show all posts
Showing posts with label MIDI Controllers. Show all posts

Thursday, February 21, 2013

Improved Rotaries for the Akai MPK49 & MPK61

User bobseekone from the Propellerhead Forums has generously contributed a great new patch (which he calls ReasonEx) for the Akai MPK49 and MPK61 MIDI controller keyboards that turns the rotary encoders from absolute to relative positions. This means that you can switch to another device in Reason, move the knobs, and when you return to the original device moving the knobs does not cause them to 'jump' away from where they were. Another way to think of it is that Reason can remember where your controller knobs were for each and every device. Very useful - thanks Bob.

His patch also changes the buttons from toggle to momentary so that they can be used between devices more sensibly too. See Bob's blog for overview and details.

Disclaimer: I was involved in the creation and testing of this patch for the MPK49.

Monday, September 26, 2011

Akai MPK mini & Reason

Introduction

Note: there appears to be a newer version of the Akai MPK Mini Editor that is not compatible with the files I provide, or the process outlined below. If you don't have the older version, these instructions may not work for you. If anyone is able to shed some light on the situation I'd be happy to make mention.

In 2011 I picked up the Akai MPK mini, a "laptop production keyboard" clearly focused on portability.

(image sourced from http://www.akaipro.com/mpkmini)

I haven't used it enough to write a proper review yet, but there was one thing that did annoy me about it right out-of-the-box - it doesn't have any dedicated MIDI support in Reason or Record!

I should explain. MIDI controllers communicate with Reason & Record via a "codec" and a "remote map". The codec translates and associates incoming MIDI messages to specific 'control items', and the remote map is used to map these 'control items' to different Reason device controls.

But what makes your controller really useful is that a properly supported controller will auto-map its controls onto specific Reason device controls as you change devices.

For example, you can have a knob that maps to the first Combinator knob when a Combinator has MIDI focus, but then maps to the LPF frequency slider when you change to a Subtractor. The mapping is device-dependent and Reason takes care of it for you. You can also customise this mapping yourself.

Almost any MIDI controller will work with Reason as there are several 'generic' codecs that simply map keys, wheels, knobs, pads and sliders to generic 'controls'. But sadly if you are forced to use these codecs then you lose the auto-mapping feature - now your control simply generates a MIDI CC message on a fixed channel and this may correspond to... anything.

(Note that you can always use the 'remote map override' feature to assign any control to any Reason control - this can be useful occasionally but it's tedious to set up and does not scale to a full controller).

My Solution


I have created suitable Lua Codec and Map files for the Akai MPK mini. If you use these, you will be able to make almost full use of the device, and the knobs and pads will map to sensible controls on each Reason device. If you wish to customise the per-device mapping, simply edit the .remotemap file and add your own rules.

The latest version supports:
  • Compatible with Reason 5 / Record 1.5 to Reason 6.5.3 - may work with future versions too.
  • Kong pads - turn off CC and PROG CHANGE, then Pad Bank 1 maps to Kong pads 1-8, Pad Bank 2 maps to pads 9-16.
  • Switches - turn on CC and each pad will act as a switch. Pad Bank 1 maps to switches 1-8, Pad Bank 2 maps to switches 9-16. Note that 'toggle' mode for the switches does not work correctly, and probably never will, so the pad lights will not stay lit.
  • Prog Change - turn on PROG CHANGE and each pad will generate push-button events. Currently these are set up to send Transport messages:
    • 1 - rewind
    • 2 - ffwd
    • 3 - stop
    • 4 - play
    • 5 - record
    • 7 - change to previous sequencer track
    • 8 - change to next sequencer track
  • Knobs - eight knobs that are mapped to 'sensible' Reason controls. Note that Knob 1 is the top left knob.
  • Keyboard Sustain (Damper Pedal) support - hold the "Sustain" button to activate.
I used the Akai LPD8 lua codec and MPK49 remotemap files that ships with Reason as the basis for this project. I used an image of the MPK mini from Akai's website for the device picture. Akai's support page is here.

Upgrading to 0.0.3 - important note!


If you are upgrading to 0.0.3 from an earlier version, you must reprogram your controller using the "Akai MPK MINI Editor" as the CC values generated by the pads have changed.

To upgrade, simply follow the Installation procedure again. You do not need to remove the old files, just make sure you overwrite them with the new files from the zip file.

If you have performed any of your own customisation (for example the .remotemap file), be sure to back up your changes before upgrading. You will have to manually reapply your changes afterwards.

Installation


The latest version 0.0.3 is available here. It is a zip file. Unzip it somewhere handy.

There are two parts to this installation process. Part 1 involves copying the Remote files to the correct destination on your system. Part 2 involves reprogramming your MPK mini with the provided Preset. You must complete both parts to have a successful installation.

Part 1 - Copy the Remote Files


The files in the Remote directory should be copied into your user's Remote directory:
  • OSX: Macintosh HD/Library/Application Support/Propellerhead Software/Remote
    • it is also possible to install into /Users/[username]/Library/Application Support/Propellerhead Software/Remote if you want to keep them separate from your main Reason installation.
  • Windows XP: C:/Documents and Settings/Application Data/Propellerhead Software/Remote/
  • Windows Vista: C:/Documents and Settings/Program Data/Propellerhead Software/Remote/
  • Windows 7: C:/ProgramData/Propellerhead Software/Remote
Carefully copy all of these files, strictly maintaining this directory structure:
  • Remote/Codecs/Lua Codecs/Akai/AkaiMPKmini.luacodec
  • Remote/Codecs/Lua Codecs/Akai/AkaiMPKmini.lua
  • Remote/Codecs/Lua Codecs/Akai/AkaiMPKmini.png
  • Remote/Maps/Akai/AkaiMPKmini.remotemap
Now restart Reason so that it sees the new files. Go into Preferences and select your new MIDI controller - you can tell Reason to try and auto-detect the MPK mini, or you can add it manually.

But before this will work, you must set up the MPK mini to generate the correct MIDI messages. Now complete Part 2.


Part 2 - Load the MPK mini Preset


The provided Preset ensures that your keyboard produces the correct MIDI messages are received by the Remote codec (which you installed in Part 1). To install the Preset:
  • Ensure neither Reason nor Record are running - they may interfere with this process.
  • Run the "Akai MPK MINI Editor" (on the CD provided with your controller, or downloadable from Akai's product support page)
  • Click "Load Preset" and load the "Reason.preset" file from the Presets directory that you earlier unzipped.
  • This will automatically switch the display to Preset Slot 1, but you can upload the new preset to any Slot you wish by clicking the "Preset #" drop-down and select the slot number you want to upload into:

  • finally click the "Upload" button, and then click OK:

  • You can repeat this upload process for the other Preset Slots if you like, but note that uploading a Preset to a Slot will completely overwrite any data already there.

 (Previous versions had four identical Preset files, one for each Slot. However I realised that you can upload one file to any Slot with the above procedure, so now there is just one Reason preset).

In version 0.0.3 I have adjusted the CC values generated by the Pads to start at 65, rather than 64, as the first pad was interfering with the Sustain function.



Customisation


Because the Lua Codec maps almost every control on the controller to a 'control item', you can customise the device mappings however you want. Simply edit the AkaiMPKmini.remotemap file to associate the MPK mini's controls with whatever Reason device controls you want. More information can be found here.

The available control items are:
  • Keyboard
  • Sustain
  • Knob 1-8
  • Pad Button 1-16
  • Prog Change 1-16

Updates

Update 28th February 2013 - version 0.0.3 released, see post for details. If you are upgrading, please read this post carefully.

Update 2nd October 2011 - version 0.0.2 appears to work fine in Reason 6 (OSX).

Update 30th September 2011 - version 0.0.2 released, see below for details.

Release History

Version 0.0.3 - 20130228
  • Added support for Sustain / Damper Pedal.
  • Adjusted base CC for pads from 64 to 65.

Version 0.0.2 - 20110930
  • Added support for Transport controls in Record 1.5.

Version 0.0.1 - 20110926
  • Initial release, supports AutoDetect, Kong pads, CC pads (switches), Prog pads (transport), and knobs. All four presets are identical.
  • Tested in Reason 5 on OSX only.

Disclaimer


I am not affiliated or associated in any way with Akai or Propellerhead. I have created these files myself with the files and programs legally available to me. 

You download and use these files entirely at your own risk!


Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 New Zealand License.

Thursday, July 3, 2008

Korg Kontrol49 & Akai MPK49 Comparison

This review was previously posted on my personal blog and has been moved here.

Recently I had the need to purchase a MIDI controller keyboard for my own music production interests. My requirements included programmable sliders and encoders, as well as a minimum of 49 'piano' keys, velocity action and drum pads. I also wanted to keep things as inexpensive as possible. I'm not a live keyboard player, so I aim to use this device for music composition, with programs such as Reason.

I narrowed the field down to the following three models:
  • Edirol PCR-M50 - NZ$400 from the Rockshop.

  • Akai MPK49 - NZ$800 from the Rockshop.
  • Korg Kontrol49 - NZ$800 from Peter Jamieson Audio Limited.
I also looked briefly at some Novation models but 49-key versions of these started at NZ$1000.

I was able to quickly eliminate the Edirol, because I felt the feature set was too limited for the level of control I was after. This left the Korg and the Akai.

First, the Korg Kontrol49. Peter from Peter Jamieson Audio Limited graciously agreed to lend me a unit for a weekend trial - without this opportunity, my choice would have been much, much harder to make.

The Korg is an excellent piece of gear. I was impressed with the way it worked in Reason - especially the feedback that comes through and labels the controls. I had no trouble installing it and getting started. From what I can tell, it's extremely configurable and can probably do anything MIDI-wise you'd ever need to do.

I had read a lot about the Akai MPK49, which seems to be the closest competitor to the Korg. In comparisons, I read a lot of speculative opinion either way which made me uneasy, so I decided the only way to know for sure was to try it myself. Mark at the Rockshop in Lower Hutt agreed to let me trial the Akai so I was able to set both keyboards up next to each other at home, and make my own hands-on comparisons.

Here's what I found.

- the Korg provides a much better level of feedback, especially with Reason. You can easily tell what a particular control will do by the label sent from the PC. However, because each encoder and slider share a single display, and it only shows the last control moved, you can't see what the label for the other control is until you move it. However, in this area it still wins because the Akai doesn't do anything like this at all.

- The Korg is a 2004 product, the Akai is 2007.

- The Korg is slightly bigger and slightly lighter than the Akai.

- The build quality of the Korg is somewhat lower than the Akai. For example, the encoder knobs and sliders on the Korg are a bit flimsy and can move side-to-side. The Akai controls are very solid in feel. I also prefer the pitch-bend and mod wheels on the Akai as they are larger and have a better (rubbery) surface.

- the pads on the Korg are really cool - the different coloured lights tell you what pads are playing when reviewing a drum pattern, for example. The feel of them is good. The Akai has only 12 pads, no visual feedback, but interestingly I found they had a better strike response and I found it easier to 'play' the drums on the Akai.

- The Akai keyboard has a better feel than the Korg, in my opinion.

- The Akai has features that the Korg lacks - aftertouch on keys (Korg has an aftertouch send but it's global), note-repeat, built-in arpeggiator. However the Korg has the X-Y joystick, but unfortunately it has a 'dead-zone' in the centre which makes the input non-linear.

- The Akai has dedicated transport controls - so does the Korg, but I found the Akai ones easier to use. The Korg can be configured so that any button will transmit 'record' or 'rewind' but it can be complicated and there are no dedicated controls.

- The included "library" software is quite minimal with the Korg. The Akai software is better as it allows you to set up the keyboard using a graphical representation, and then send this config to the keyboard in a single operation. It also has a MIDI monitor which is useful for debugging MIDI messages and assignments.

I've spent a lot of time comparing these products and my final conclusion is that although the Korg is excellent, it unfortunately falls short of the Akai for my requirements.

Many thanks to Peter at Peter Jamieson Audio Limited, and Mark at the Rockshop Lower Hutt for enabling me to make this hands-on comparison.

Postscript

I have been using the Akai for about a week now. I am very impressed with this keyboard. It has an excellent feel and now I'm used to the controls it's very easy to get around the configuration. Although it lacks the direct feedback Reason has with the Korg, it doesn't take too long to learn which controls affect which parameters on each instrument.

Final note - the YouTube videos by "TodaysbeatsTV" on the MPK49 are a complete waste of time. Yes, there's some info there, but the presenter rambles on and on and ON and ON. Just make sure the MPK49 clock is set to internal if you want to drive the MIDI clock from the keyboard. Pretty obvious really.