My ultimate versatile MIDI connection board: Versatility is the key

My Ultimate Versatile Midi Connection Board

I work with Midi, a lot. I often have to plug equipment for testing instruments, circuits and interfaces. I often need to connect more than one device to a computer or micro-controller. So I decided to build the ultimate versatile MIDI connection board that I could modify, tweak, and install permanently if needed.

MIDI-Board-assembled Continue reading

Posted in Electronics, Music equipment | Tagged | 3 Comments

Akai MPK261 (MPK2 series): Controlling the controller with SysEx

In this (very) technical post, I explain a method that will give you better control over the behavior of your Akai MPK2 series keyboard (tested on an MPK261). The goal is to be able to select one of the 30 “presets” stored in the keyboard on demand, without touching a button on the controller. A side benefit is that you can create an infinite number of presets and store them on your computer, and reload them in the MPK as needed.

  • Part 1: What needs to be sent to the MPK2 series?
  • Part 2: How to send a SysEx Message to the MPK2 Series?
  • Part 3: Going further
    • Part 3.1: Creating more Presets
    • Part 3.2: Managing SysEx libraries
  • Conclusion

Continue reading

Posted in Music equipment | Tagged , , | 6 Comments

Review: Alyseum AL-88c Midi Interface

UPDATE : 2016/10 Alyseum, the makers of this hardware product, have discontinued its manufacturing. They have a new product out, the U3-88c. It’s a USB 3 interface that provides similar functionalities, minus the Copperlan interface.

The Alyseum AL-88c is a midi interface with 8×8 Midi ports (8 Midi IN and 8 Midi OUT). If you have many midi devices, there will be times when you wish you could connect them all to you midi circuit… without having to channel it through a computer or connect the devices in series! That’s what the AL-88c allows you to do. It also connects to the rest of your Midi network using a UTP cable (Unshielded Twisted Pair (UTP) (just a standard Ethernet network patch cable).

Alyseum AL-88c

The Alyseum.com AL-88c Midi connection manager

The advantage of using this device for midi is that it greatly increases the flexibility of midi communication links between Front-Of-House (FOH) instruments and Workstation/DAW (W/D) midi processing. As an added benefit, the AL-88c takes care of midi merge, split, transfer to/from FOH to/from W/D on a per-channel basis for each device/port.

When you connect midi devices in series in a classic midi configuration, they share a single midi port/cable made of 16 channels. The AL-88c actually multiplexes each midi port/channel combination. Everything works in parallel. For this, the AL-88c relies on the Copperlan communications protocol for its internal and external configuration and to exchange information with the rest of your setup.

In fact, the Copperlan Ethernet protocol allows multiple AL-88c to be connected to the same network. They can then be configured independently: two AL-88c offers a 16×16 midi patchbay, and four will give you 32×32! At the same time, each standard midi port has 16 midi channels. You end up with a truly gigantic midi patchbay!

Continue reading

Posted in AL-88c, Music equipment | Tagged , | 11 Comments

REVIEW: Akai mpk261 keyboard

AKAI MPK261

This is a review of the Akai MPK261 Midi Keyboard. You can find the detailed specifications on the Akai website. I only explain the particularities that are not obvious on the web site. Most of the information here applies to MPK249 and MPK261. Some of it applies to the MPK225.

akai mpk261

 

 

Continue reading

Posted in MPK261, Music equipment | Tagged , , | 13 Comments

REVIEW: iConnectivity iConnectMIDI4+ — Part 1 – Hardware

I just received the iConnectivity iConnectMIDI4+. This is a hardware review.

gallery_icm4plusfrontangle

You know me: take it apart first, and then review it.

gallery_icm4plusfrontgallery_icm4plusrear

So this post is about hardware. The next post will be a software and application review.

In the mean time, you can take a look at MusicInclusive’s Derek Jones series of review/how to videos. The first one is available here: http://www.musicinclusive.com/blog/iconnectmidi4_preliminary_review_part_1/

As usual, click on any image to see a bigger version.

If you’re too busy to read the rest of this article, let me just say this: Buy one! It’s fantastic!

Continue reading

Posted in Electronics, Music equipment | Tagged , , | 9 Comments

REVIEW: IKMultimedia iRig Blueboard

The iRig Blueboard is a small pedal board that uses bluetooth to connect to a computer or a mobile device and sends Midi commands to any application listening for it.

The Hardware

Blueboard with computerThe idea is that a compact pedal makes a lot of sense when you, as a musician, want to be as mobile as possible. Continue reading

Posted in Music equipment | Tagged | 2 Comments

Alesis Vortex: Modify the Ribbon Controller behavior

Some Keytar players use both hands on the keyboard part to play more complex notes arrangements. When I need to do that, I use a regular keyboard. As explained in a previous post, “I have seen keytar players “cross-under” the support strap to use their left hand on the (small) keyboard part. I have tried and it’s really uncomfortable because it puts the left wrist at a very odd angle. Since the keyboard part of the Vortex is only three octave long, my left wrist starts hurting as soon as I try that. Plus it looks dorky…” Continue reading

Posted in Music equipment, Vortex | Tagged , | 11 Comments

Alesis Vortex: Testing remote Patch switch

The Alesis Vortex, using firmware 1.20, can now receive and act upon Program Change requests. This means that you can select a Vortex Patch remotely.

I tested the new feature using my M-Audio Oxygen keyboard, but this will work with any Midi input that can send Program Change Request (PC). I am also using a Mac, as I have the tools readily available.

In order for the Vortex to receive Midi commands, you will have to connect it to a computer using the USB connection. The Vortex’s Midi connection is output only. So your other equipment will also have to connect using USB. My M-Audio is strictly USB.

On the Mac, you need a way to tell the PC generating equipment to send the command to the Vortex. I use MIDI Patchbay, a simple open source program. Here’s a screen shot of the setup:

Screen Shot 2013-11-09 at 11.14.31I specify “Block all notes” to restrain Midi traffic.

That’s it! Sending a PC from the Oxygen 49 will trigger a Patch change on the Vortex. Of course, the Vortex is limited to 24 patches, so it will not react to values outside of the 1-14 range. Here’s an example of the Midi command exchange:

Screen Shot 2013-11-09 at 11.21.37

This will load Patch 04 on the Vortex. I know, I know, it should be Patch 03, but Vortex is counting from 1, not zero. Also, the last 3 commands are sent by the Vortex since it is programmed to send a PC itself (which can be removed). The Vortex will receive the PC command, change to the Patch, and may send a different PC command if that Patch is programmed to do it. I explain how to program this here. What you have to understand is the difference between the Vortex receiving a PC and the Vortex sending a PC. They have very different meanings. For example, even after receiving a PC to switch to Patch 12, pressing the Program Up button on the Vortex will send a PC out in sequence, which could very well be any 0-127 number. Also, if you have assigned a Pad to send a PC in a Patch, Vortex will just send that PC. It’s pretty obvious when you look at the display: the Vortex will show an incoming Patch selection as “P03” for example, and an outgoing PC as “03”.

I then tested this using a Behringer FCB1010, connected to a Midi-to-USB device (like the M-Audio Uno) and routed that through the Midi Patchbay. It worked like a charm!

Screen Shot 2013-11-09 at 12.00.04

Of course, Vortex switched to Patch 17, but you get it.

Posted in FCB1010, Music equipment, Vortex | Leave a comment

Alesis Vortex: Direct Patch programming using SysEx

In the previous post, I did a quick review of the new Vyzex Vortex software program. I also put in some details about the new features in firmware 1.20. I also updated the detailed user guide that I wrote a while ago to reflect the changes in the firmware, (even some undocumented ones).

The main feature in the new firmware is the ability to access and modify the Vortex Patches on a computer. The software (psicraft.com/Vizex)(these guys are pretty funny: there are a few puns in the code and the comments!) is even well done!

Now, because Alesis decided to issue software to let the users program the Vortex from a computer AND store presets on said computer AND retrieve the stored patches from the Vortex, they had to modify the firmware to let the computer access the data (bidirectional). Since the Vortex has a single standard Midi port (5 pin DIN) and it is used for output (from the Vortex) it cannot be used for bidirectional communications. The USB port is used instead. I know that the USB port can be switched to non-midi mode (by pressing C2 and E2flat while powering on, for example…) but generally, the USB port acts as a standard USB Midi port (Core Midi compliant on a Mac). It is detected as such by the computer (and iPad, iPhone). So , when the Vizex software talks to the Vortex, it uses Midi commands. Actually, it uses SysEx commands to exchange information.

Let’s see what the data exchange is:

(I started with the Vortex connected to the computer)(a Mac in this case, but it should work similarly on a PC, although the Vortex is using the standard Windows Midi Port driver that has a bug that prevents sharing a port between two programs. This is why I did all the data sniffing research on a Mac)

1- When you start the Vizex program, it will send a standard Dump Request (Universal Non-Real Time message type) which is just a short 6 bytes Sysex containing “F0 7E 00 06 01 F7”, also known as a General Midi Device Inquiry. It will send this message on each Midi port defined on the computer waiting a (short) while for a response. Standard midi equipment (if it is polite!) will send a Sysex back identifying itself.

2- The Vortex (with firmware 1.20) reacts (politely) and replies with a 37 byte Sysex messages: “F0 7E 00 06 02 00 00 0E 35 00 19 30 31 32 30 01 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F 7F F7”. Ignore the “F0 7E 00 06 02” (it identifies the string as a Sysex response to a device inquiry). The next part is “00 00 0E” which is the manufacturer ID (“alesis”, of course) followed by “35”. That byte is the ID of the Vortex. The rest is unknown data, but I’m guessing that the “30 31 32 30”, which corresponds to characters 0120, is the firmware version number (confirmed by looking at the string from the previous version of the firmware (0103)).

3- Having found its mate, Vyzex sends “F0 00 00 0E 01 35 63 00  01 01 F7” to the Vortex. This is an 11 byte SysEx that contains the Vortex ID string “00 00 0E 01 35” followed by what I guess is a command to tell the Vortex to send the content of a Patch (“63 00 01”). Patch 01 in this case. That’s the 01 just before the F7, which marks the end of the SysEx string (always).

4- The Vortex complies and sends a nice 127 byte SysEx that starts with “F0 00 00 0E 01 35 61 00  75 01” followed by what I think is every parameter in that patch. The key here is the “01” that follows the “75”. That’s the patch number. So there are 116 bytes used to store the parameters for that patch.

Steps 3 and 4 are repeated 22 times, retrieving each and every Patch stored in the Vortex. Why not 24, since the Vortex has 24 patches? Patch 23 is reserved for the Sonivox Synth software available for the Vortex (free for every buyer) and Patch 24 is reserved for Alesis (in particular to work with Ableton Live).

If you load a set file in Vyzex, it will tell you that the loaded set is not synced with the Vortex. It will ask you if you want to overwrite the vortex with the freshly loaded set (you can also choose to overwrite just one patch). It will then act this way:

1- Vyzex send a 127 byte SysEx command to Vortex. That command starts with “F0 00 00 0E 01 35 61 00  77 01” where the “01” that follows “77” is the Patch number. We can also deduce that “61 00 77” means “write” and that “61 00 75” from step 4 above is “read” (as in  “red”) (and also that “63 00 01” is a request to read)

2- Vortex replies with “F0 00 00 0E 00 35 68 00  00 F7” where “68 00 00” means “I just received and stored a Patch successfully”.

Steps one and two are repeated for each bank using a bizarre scenario. Since the Vortex cannot “buffer” incoming data, i.e. read it all and assign it to the appropriate patch, it must receive one patch, store it then receive a program change before it receives the next patch! Actually, when receiving only one patch, the Vyzex will

1- Send a Program Change to select the proper patch

2- Send 127 bytes to store the patch with, you guessed it “F0 00 00 0E 01 35 61 00  77 XX” at the beginning to “write” it

3- receive a 10 byte SysEx (yes, the “F0 00 00 0E 00 35 68 00  00 F7” one)

The Vyzex will then send a couple of Program Change commands, for no obvious reason (to me) except some confused idea about “count from zero/count from one” from the programmer.

Now, what I found while researching this is that Vortex WILL respond to incoming Program Change Midi commands. I had tried that previously (on original firmware 1.03) and while it was supposed to work (according to the Midi Implementation Sheet supplied by Alesis for the Vortex) it did not work. Is that a fix in firmware 1.20? This is very interesting since it will allow me to select a Patch from a software running on my computer, or by pressing a switch on my FCB1010 foot pedal board, for example. Nice.

So, I found how to communicate with the Vortex. Now what?

Well, WHAT is communicated to the Vortex? What is the structure of the Patches? Here’s what I’ve found:

I have accounted for each and every one of the 127 bytes in the Patch SysEx. It’s pretty much what you would expect: definition for every modifiable parameter in the Patch. I also found a few hidden gems. For example, there is a 16 character string stored in the Patch that contains the Patch name defined in Vyzex! So while the Vortex cannot display the string (stuck with a stupid 3 digit numerical display), it is stored…

You want the Patch definition? Just ask. I will not publish it since I know there are some developers out there looking over my shoulder… and it was a lot of work!

Conclusion: A clever programmer could write code to communicate with the Vortex directly from a PC/Mac/Linux workstation. That programmer could also write a simple interface on an iPad… or an iPhone, and use that device to store an load patches without a computer… one programmer could also write some code for an Arduino to display Patch parameters on a remote display… one programmer could even write code for an Arduino to interface directly with a Vortex and an FCB1010…

Stay tuned.

Posted in Music equipment, Vortex | Tagged , , , | 5 Comments

Alesis Vortex: Firmware update 1.20 and Vyzex Patch Edit program available

Well, Alesis is listening to it’s users. They have just published a new firmware version for the Vortex.

Version 1.20:

  1. Allows compatibility with the Vyzex Vortex patch editor software
  2. Allows the pitch-bend wheel to be reversed
  3. Allows any pad to be set to “Panic Mode” (pad will send an “all-notes off” message)
  4. Allows a default volume message to be set for both the lower and upper keyboard zones of each patch

To upgrade, you have to download the file (Windows or Mac) from the Alesis site. The Windows file is an executable and will pretty much do everything for you, including finding the Vortex. Windows being Windows, it might not find the Vortex if it can’t see it. Check your ports. You will be asked to enter a name and email, but there is no validation.

While I wasn’t able to upgrade the firmware using my Mac (two different Macs, using three different configurations. So much for testing on a Mac, Alesis!) I had no problems using a Windows (Win7) computer. Some people have reported trouble on Windows 8.

Let’s look at the updated features:

1.   Alesis just made a Patch editor available. This is great news! Users have been requesting a Patch editor (and Patch Saver) since the Vortex came out. I have asked many times on their forum for different ways to access the storage area of the Vortex. I was told by the support person in charge of Vortex that it was not possible, even after he asked the tech people at Alesis. Although I was able to figure out a way to use a Sysex prompt to elicit a Sysex id sequence from the Vortex, all other communications to the instrument failed. I have also published a detailed user guide to explain in detail alternate ways to program the Vortex. That post was very popular. I thought about writing a Patch Editor myself, but not being able to read or write to the Vortex kind of killed that idea.

Well, I guess that’s what the new firmware allows now!

Vortex-Vizex image

Vortex Image appearing in Vyzex software
Probably copyright Psicraft, Alesis.

Let’s look at the actual Patch Editor:

First, you have to download the Patch Editor. This involves looking at the bottom of the alexis.com/vortex page for a link that looks like Yes! I am a Vortex owner and I want my free Vyzex Vortex patch editor softwareThat will take you to a page where you have to enter you name, email address and Vortex Serial Number. The name doesn’t matter but the email address does, since you will get an email with the actual link to the software. If you don’t remember where the Vortex Serial Number is (it’s on the back) or if you think that this is too much information to give Alesis anyway, a look at the JavaScript will let you know that the format of the Serial Number is: var regexp =/^BN1208[A-Z0-9]{9}$/; So, entering BN1208 followed by any 9 letter-or-digit combination (like BN1208123456789) will give you a valid serial number. There is no other validation.

You will receive an email with a link to the actual download page. The software zip file contains both Windows and Mac versions of the software. The link is valid for a limited time! (maybe 24 hours), so just go ahead and download. You can’t re-use an email/serial combination to resuscitate the link.

The software is written by a company called Psicraft (psicraft.com), which specialises in … Patch Editor development! The product offered by Alesis is from their Vyzex line, meaning that it is a standalone product made for a particular instrument. There is no mention of any deal with Alesis on the Psicraft site, even in their forum area. They mention Akai, M-Audio, Line6 and others, but not Alesis. This must be a very new deal between Psicraft and Alesis.

General impression: It works and looks good. Help files are available (except the “troubleshooting” file?) and they give a detailed explanation of the software functions. Installation is simple. It is definitely a much better way to program the Vortex than the standard, onboard method. Thanks, Alesis!

Post install operation might cause you problems. On a Mac, the program sends a “request for id” Sysex command on every Midi port available. If a Vortex is present, it will respond with a short Sysex sequence (effectively identifying itself). That’s pretty foolproof. The software will then read the configuration of every patch stored on the Vortex. On Windows, the program will not be able to access the Midi port if it is also used by other software. This is well explained in the Quick Start Guide installed with the software. Look at section 3: If running Windows, verify there are no USB MIDI driver conflicts between Vyzex Vortex and other software. That’s what happened to me when I launched Midi-Ox to try and sniff the Midi traffic between the Vortex and the computer.

Once the Vyzex software has found the Vortex and read the patches stored in the Vortex’s memory, you can edit every parameter with ease, using a pleasant (and exact) representation of the Vortex. Just read the user guide (also available on the Alesis site)(just enter any name/email) EDIT: Vortex is retired so read the Wireless Vortex user guide. Most applies to the Vortex.

2. Allows the pitch-bend wheel to be reversed

This can be done using the Vyzex software. I had a user ask me here if it was possible: it is now!

3. Allows any pad to be set to “Panic Mode” (pad will send an “all-notes off” message)

I have had regular bad luck with stuck notes using the Vortex. Most of the time, it’s because the Vortex is sending Midi commands with “Running Status” always On and no way to turn it off. Some hardware/software combinations have a problem with that. I guess I was not the only one complaining. Any pad can now be assigned a “Panic Button” function. Hopefully, it will send on both channels if required by the Split Keyboard configuration. It would be nice to also be able to turn Running Status Off.

4. Allows a default volume message to be set for both the lower and upper keyboard zones of each patch

The last firmware change will let you set a default volume for each part of the (split) keyboard. I really have no idea where this request comes from, and this looks like something very particular. But if you need it, it’s there.

Note: I will publish a technical post in a few days that explains the detailed communication sequence between the Vortex and the Vyzex software. Hint: It’s all Sysex, and definitely reproducible.

Posted in Music equipment, Vortex | Tagged | 6 Comments