Music & Tech & Posts by José Luis Miralles

Eventide h9 advanced control with arturia beatstep

Are you trying to have an advanced control of your Eventide H9? Do you want to change presets fasts and control the 10 parameters of every algorithm with your midi controler?

This is your step-by-step guide to do it with Ableton Live

What do i need?

  • An Eventide H9
  • A Midi Controller (Arturia BeatStep in this tutorial)
  • Ableton Live (tested on Live 10.1) with External Audio Effect and Audio Effect Rack.
  • Control Surface Studio (former name remotify)
  • H9_remote (a max4live device)

What this tutorial do?

The Eventide H9 is one of the most complete digital fx effects you can find. Also have a dedicated expression pedal; the H9-SP. Booth make a great combo for multiple purposes. The Eventide H9 has more than 50 Algorithms and lots of presets (+600). Also you can design your own presets. Here you have one the most concise and comprehensive guides of every factory preset.

Each algorithm of the Eventide have 10 controlled parameters, which are midi mappable, BUT (and this is a great “BUT”) the pedal doesn’t send back midi values. You can send absolute or relative midi values for their knobs parameters, but this values may not match the pre-existing values in the pedal. So every time you send midi info, will be a break or jump in the values. Also, when you change the presets, the knob parameters are in a very new situation. And you will be having a new jump if you try to change again in the new preset any parameter from your midi controller.

With this tutorial we are going to have an Ableton Live set to avoid this problem. We’ll SEE always the 10 knob values of the current preset in the pedal, and SEND RELATIVE midi info in order to have smoothy changes in that values. Also we will have the ability to fast change to the desired presets with only pressing pads, and automatically send again relative midi info to the new values.

We will send the Midi info from an Arturia Beatstep. Using Control Surface Studio we will create a remote script for using it as a device control in Ableton. Then the midi info will arrive to a max4live device, which connects in realtime with the H9; and the magic happens!

So, let's go!

1. Installing

I suggest to use the H9 control app (link here) for monitoring purposes. If you plan to perform live and you are using a computer monitor, with the H9 control app you can have a bigger display of H9’s configuration than the device control in Ableton Live. But keep in mind that you will not be able to move parameters from the app in order to have our desired workflow. And also sometimes H9_remote does not play well with H9 control app. They can add confusing directives to the pedal and you will get strange behavior from time to time. The H9_remote creator doesn’t recommend using this. Try it by your own risk.

Also you need a copy H9-remote, a max4live Audio Effect plugin which can control an attached H9 stompbox in real time. Download it here. H9_remote is created by Daniel Collins and I want to thank him all the feedback received, and specially for updating the version to 1.1.3, adding support for the new Algorithms.

For making fast presets changes in Ableton is very useful creating your own remote script for your desired midi control surface. You can do it with Control Surface Studio (available here).

2. Configuring the H9

In order to have control of your H9 stompbox with ableton, you need to configure first some settings. The next instructions are from the creator of the max4live device:

Before the plugin can correctly connect to your H9, you must set a few parameters on the H9 itself. Unfortunately, some of them cannot be configured through the iPod/Android App or the H9 Control software, but must be configured directly on the device.

Using the H9 User Guide, page 31 explains how to enter System Mode, and the following pages explain how to navigate through these modes. The necessary settings are entirely under the MIDI menu and are as follows:

  • [RCV CH] : Set this to whatever MIDI channel you want. If you’ll be using this H9 via USB, you can set this to 1, but if you’ll be using it over DIN MIDI you’ll need to ensure that this channel is unique to this device.
  • [XMT CH] : Ideally this should be set to the same thing as RCV CH. Only make them different if you are dead certain you know what you’re doing.
  • [RCV.CTL] : This sets up the H9 to receive the knob and expression changes from the remote. Set up as follows:
    • [PSW] : 71 (or choose your own value, but you’ll need to manually configure the plugin then)
    • [EXP] : 11 (the default MIDI CC for expression)
    • Ensure KB0-KB9 map to 22..31 – this is the default but if you or a previous owner customized these values, you’ll need to set them back to this range, and sequential.
    • You can set the other controls to receive CCs as well, but as of v 1.0.0 the H9 Remote does not support them. It won’t hurt anything, though.
  • [XMT.CC] : This sets up the H9 to send it’s own Knob and Expression changes (e.g. when you use an attached physical expression pedal, the H9 Remote will track it and can send to Live’s automation). These should mostly match the RCV.CTL settings as the plugin uses the same value for listening and transmitting
    • [TIP/RNG/T+R] : If you have an expression pedal + footswitch combo, use RNG. If you don’t, most likely you want TIP, unless you’re using a dual footswitch (or triple) in which case you should be able to figure out what you’re doing on your own. Just don’t set more than one of these to the same value or things will get confused. In either case, set the appropriate entry to 71 (or whatever you’ve also set RCV.CTL > PSW to, if you changed that too).
    • [EXP] : 11
    • Ensure KB0-KB9 map to 22..31 just as for the RCV.CTL settings.
    • You can set the other controls to send CC as well, but right now the H9 Remote does not support them. It won’t hurt anything though. Best to make sure these values match with the ones set in RVC.CTL too.
  • [XMT.PC] : Does not matter as far as the plugin is concerned, but OFF can prevent MIDI loops in some cases.
  • [CTL.XMT] : Set to ON. This is essential.
  • [PGM.XMT] : Set to ON. This may be supported in a near-future version.
  • [SYS ID] : Leave at 1 unless you have more than one H9, then see the cautions under the following section “Multiple H9s”.
  • [OUTPUT] : Merge is generally safe, but the proper value here depends on if you’re using DIN MIDI and what your routing looks like. You’ll need to use your own judgement here.
  • [CLK IN] : ON
  • [CLK OUT] : Doesn’t matter unless you want Live to follow the H9’s tempo, then set this to ON.

With these settings, minimal configuration of the plugin will be necessary. If you have only one H9, you can skip straight on to the Plugin Configuration.

3.1 Planning how to integrate the H9 in Ableton

I recommend to use the H9 unit as an effect processor in a return track.

  • Create a new return track and put inside:
    • The External Audio Effect
      • Set the Audio to and Audio From to match your current ins and outs channels of your H9.
    • The Audio Effect Rack
      • Put inside as many copies of the H9_remote max4live device as presets you plan to use.

Now we are going to gain access to the H9 configuring properley the H9 and the H9_remote.

3.2 Configuring the h9-remote device in ableton

Insert the plugin after powering on and connecting your H9 to your computer. The plugin will initially load in Live with no configuration and a default preset. This preset will not initially be transmitted to the H9. In order to establish communication between the plugin and your H9, you must do the following:

  • Choose the right MIDI port in the dropdown. If the software successfully opens the port, the button that initially says “Rescan” will switch to “Connected”. This does not mean it found an H9! It just means the MIDI port was opened and it can now send and receive MIDI data to that port.
  • Ensure that the MIDI RX and TX channels match the configuration of your H9. If you left them at 1, then you should not need to change these at all.
  • Ensure that the CC settings match the configuration you chose. If you followed the setup directions above, you should not need to change any of these either.
  • If you set a custom SysEx id for the unit you wish to correspond with, set it here as well. Otherwise leave it at 1.

To test that the plugin is communicating with your H9, you can now press the “Up Arrow” icon to load the current state of your H9 into the plugin and synchronize. The plugin should update to reflect the chosen algorithm, preset name, and knob settings of your H9. If nothing happens, make sure your settings are correct, that you have chosen the right MIDI port, and that the link status box says “Connected”. If you loaded the plugin before powering on your H9 you can either remove and re-insert the plugin, or try clicking the link status box to initiate a rescan of the MIDI ports, then select the H9 when it appears.

4. Configuring your midi device

In this tutorial we are using an Arturia BeatStep. If you use that device, surely you know the “Midi Control Center” (found here)

You need to configure the knobs and the pads.

Knob 1

  • Mode: Control
  • Option: Relative #1
  • Channel: Different from the H9, for avoiding midi confusion. If you set your H9 to 1, set now your mide to 2.
  • CC Number: I have 22, but any other number may work.

Knobs 2 and 16; only change the CC Number, increasing one number.

Pad 1

  • Mode: Switched Control
  • Option: Gate (toggle mode will cause more confusion in the future)
  • Channel: the same of the knobs.
  • CC Number: 0, but any other number may work.

Pads 2 and 16; only change the CC Number, increasing one number.

5. Creating the remote script

If you don’t know what is a remote script read this. For creating the remote script I use Control Surface Studio. If you are not familiar with this tool you might watch some videos in order to gain knowledge about how to create the script.

The most interesting videos for this tutorial are:

Setting up control surface studio with ableton
Controlling Ableton Live devices.

In the following section we are going to configure a script, but we need to have in mind what future configuration of the Ableton Live set we plan to use. In order to change fast between H9 presets, we need to load as many H9_remote max4live devices as presets we want to use. We can load all in a track (or sends track), or even we can load all inside a chain, if we plan tu use other Audio effect Racks features. In this tutorial we are going to set the different H9_remote instances in a sends track, but inside a chain.

5.1 Creating the Controller in Controller Manager

First you need to create the 16 encoders of the Arturia BeatSetp.

I suggest you tu use:

  • Type: Endless Encoder
  • Name: Endless encoder 1 (and so one in the rest)
  • MIDI Type: CC
  • MIDI Channel: The same of the previous configured Arturia BeatStep
  • MIDI Value: The same the previous configured Arturia BeatStep
  • Control type: Relative
  • Left: 63 (this number is “relative” to the way the relative mode 1 works in the Arturia BeatStep)
  • Right: 65 (this number is “relative” to the way the relative mode 1 works in the Arturia BeatStep)
  • Steps: 127 (this is the number of steps you will have between the min and max values of each knob parameter in the pedal, it can be diferent, but 127 is a good starpoint)

Second it’s time to create the 16 pads, with:

  • Type: Pad
  • Name:Pad 1 (and so one)
  • MIDI Type: CC
  • MIDI Channel: The same of the previous configured Arturia BeatStep
  • MIDI Value: The same of the previous configured Arturia BeatStep
  • Control type: On/off
  • On: 127
  • Off: 0
  • Switch type: Momentary

5.2 Creating the Script

In the Script Manager, you need the create first this structure:

Continuing until you reach the desired amount of presets you want to control. With this script we’ll be able to select one desired preset from the H9.

In the track setting you will need to put your desired live set configuration. If you put your max4live in a track or in a send you must set it here. It is not recommend using here the “selected” option.

In the Device settings, you must set which device you plan tu use every time. The second video of this post is very informative if you don’t know how to do that.

In the Select Device 1 and On/off 1, you must set the same controller Input; “Pad 1” in Device 1, “Pad 2” in Device 2, and so on.

Now, we can select a device, and with the intelligent auto-enable/disable feature of the H9_remote, we only will have only 1 device on everytime.

Finally, is time to create the midi mapping that will allow us to modify any of the 10 parameters of the H9.

Any device in Ableton Live have a kind of auto-mapping. The H9_remote also have this ability, but the default parameters are not in the correct order.

Actually, there are not 10. There is an 11’th paramter (the expression). But when we map the parameters bank of the max4live device, they are not in the correct order.

First, create a new track, with type: “selected”. And then create a new device; with device selector: “selected” also. Finally create a parameter bank with 16 parameter. As the image below.

The 10 parameters (plus the expression value) are controlled by different number of parameters here. If you want that your first encoders of your midi device controll the first parameter of the H9 you should assign the parameters as follows:

Endless encoder number > Select parameter by number

  • 1>13
  • 2>5
  • 3>6
  • 4>7
  • 5>8
  • 6>9
  • 7>10
  • 8>11
  • 9>12
  • 10>4
  • 11>3

Finally you need to install the script in Ableton. If you don’t know how to do that, follow the instructions of the first video.

6. Running everything

Now is the moment of crossing fingers and test everything.

Now you probably have an Ableton Live Set with:

  • The max4live device H9_remote installed.
  • The remote script created with Control Surface Studio (or by your own), installed.
  • The H9 connected to Ableton.
  • Your midi device (Arturia Beatstep in my case), ready.
  • A return track with External Audio Effect configured and an Audio effect Rack with multiple copies of H9_remote inside.

Pressing the Pads of your midi controller you can fast change between presets. And moving the knobs of your midi controller you will be always sending relative values to each knob position.

Also you can make other improvements to the set:

  • Instead of using a 11’th knob to control the expression value, if you have an external expression pedal (mine is an H9-SP) you can create a “slider” in your script and control the exression value from that pedal.
  • With ableton Live Midi Mapping map the other free knobs the values from the Dry/wet and the other two gains.


There are a couple of limitations to this.

  • If you move the expression value of the h9 via the H9_remote, it will not update the values from the 10 parameters, and moving the knobs will send relative value to the older positions (pre-expression), not the new ones.
  • You can’t also use the H9 control App simultaneously to the H9_remote.

But, if you have this limitations in mind, now you gain a lot more control of the H9 and, manly; for live situations you can change fast betwen presets and use always the same knobs for controlling the 10 parameters.



If this step-by-step was helpful, please consider supporting this site by following me on social networks (youtube, instagram or facebook), or subscribe to receive notifications by mail:

Next Post

Previous Post


  1. Starr August 14, 2019

    Thank you! <3

  2. AD January 17, 2021

    would this work on Windows 10 considering the H9-remote page says “no guarantee of compatibility with Windows is offered nor is planned to be.”

Leave a Reply