Skip to content

How to get a TriThru à la Midisolutions

TheKikGen edited this page Dec 19, 2020 · 11 revisions

Midisolutions midi interfaces have acquired a solid reputation in the professional field. They have my full respect for the high level of quality they deliver. However, these interfaces are relatively expensive, and need a true 5V voltage on the DIN midi line due to "auto-powering", that most recent equipment are not able to provide.

By using the USBMidiKlik4x4 routing engine and a Bluepill board, it is possible to simulate a "Quadra Thru" behaviour, a well known model, which has one IN and 4 OUT. As the Bluebill has 3 IN/OUT ports, we'll get more a "TriThru" 1 IN , 3 OUT than a quadra in that configuration example.

Step by Step guide

  1. Connect the board to the USB plug of your computer
  2. Open your preferred midi software (e.g. MidiOx), and open the midi out port #1
  3. Switch the board in configuration mode by sending the sysex "F0 77 77 78 08 F7" The board will disconnect and connect again in serial mode. You should see the led blinking very quickly.
  4. Open a Terminal emulation (e.g. Teraterm or Screen), and open the USB serial port (check devices manager) corresponding to the USBMidiKlik board at 115200 bauds. The following menu should appear after striking ENTER :
USBMIDIKLIK 4x4 - BLUEPILL STMF103C8x - V2.0
(c) TheKikGen Labs
https://github.com/TheKikGen/USBMidiKliK4x4

[0] View global settings         [a] Show active devices
[1] View midi routing            [d] SYSEX settings dump
[2] Usb VID PID
[3] Usb product string
[4] Cable OUT routing            [e] Reload settings
[5] Jack IN routing              [f] Factory settings
[6] IntelliThru routing          [r] Factory routing
[7] IntelliThru timeout          [s] Save settings
[8] Toggle bus mode              [z] Debug on Serial3
[9] Set device Id                [x] Exit
=>
  1. Reset the board to the factory settings by choosing the "f" option, and confirm 2 times with "y"
=>f

Restore factory settings (yn) ? y
All settings will be erased. Sure (yn) ? y
Factory settings restored.

=>
  1. We'll configure the MIDI JACK IN1 to route all events to MIDI OUT JACK 1,2,3, by choosing the option "5", and entering
    the port number "01"
=>5

-- Set Jack IN routing --
Enter Jack IN # (01-03 / 00 to exit) :01
  1. Set filter to all message type by answering "y" 4 times, to Channel Voice, System Common, RealTime, System Exclusive
Set filter Midi messages for MIDI in jack #01 :
Channel Voice    (yn) ? y
System Common    (yn) ? y
Realtime         (yn) ? y
System Exclusive (yn) ? y
  1. Ignore cable routing by entering "x" and route midi IN1 events to jack midi outs 1,2,3 by answering "y" 3 times, then you should be back to the main menu.
Route Jack IN#01 to Cable IN#01  (x to exit) (ynx) ? x

Route Jack IN#01 to Jack OUT#01  (x to exit) (ynx) ? y
Route Jack IN#01 to Jack OUT#02  (x to exit) (ynx) ? y
Route Jack IN#01 to Jack OUT#03  (x to exit) (ynx) ? y
  1. Check the routing table with the option "1". In the "MIDI IN JACK ROUTING" section, you should see that the Jack 1 is mapped with Jack OUT 1, 2, 3
MIDI IN JACK ROUTING  (3 port(s) found)

|Jk| Msg Filter   | Cable IN 1111111 | Jack OUT 1111111 |
|  | Ch Sc Rt Sx  | 1234567890123456 | 1234567890123456 |
|1 |  X  X  X  X  | ................ | XXX              |
|2 |  X  X  X  X  | .X.............. | ...              |
|3 |  X  X  X  X  | ..X............. | ...              |
  1. Save the configuration with the "s" option. The global settings are displayed. confirm with "y"
GLOBAL SETTINGS

Firmware version    : 2.0
Magic number        : MDK20
Build               : 2.200303.1153
Sysex header        : F0 77 77 78
Next BootMode       : 2
Debug Mode          : DISABLED
Hardware type       : BLUEPILL STMF103C8x
EEPROM param. size  : 264
I2C Bus mode        : DISABLED
I2C Device ID       : 4 (master)
MIDI USB ports      : 16
MIDI serial ports   : 3
USB VID - PID       : 2912 - 1970
USB Product string  : USB MIDIKliK 4x4

Save settings (yn) ? y
  1. Reboot the board with the "x" option.

Done ! You just configured a "TriThru" !!
Connect a midi keyboard to the midi in jack 1, and synths or sound modules to midi out jack 1,2,3...and have fun !
If you want to use the board in a pure midi standalone mode, with a power supply instead of connecting the USB plug to a USB HOST, you can use the option "[6] IntelliThru routing" to configure routing in the same way as shown below. Don't forget to save with "s" option before exiting with "x".

-- Set Jack IN IntelliThru  routing --
Enter Jack IN # (01-03 / 00 to exit) :01

Jack #01 : enable thru mode routing (yn) ? y
Keep existing Midi routing & filtering (yn) ? n

Set filter Midi messages for MIDI in jack #01 :
Channel Voice    (yn) ? y
System Common    (yn) ? y
Realtime         (yn) ? y
System Exclusive (yn) ? y

Route Jack IN#01 to Jack OUT#01  (x to exit) (ynx) ? y
Route Jack IN#01 to Jack OUT#02  (x to exit) (ynx) ? y
Route Jack IN#01 to Jack OUT#03  (x to exit) (ynx) ? y

or directly from your preferred midi software, with a SYSEX command :

F0 77 77 78 0E 03 00 0F 00 01 02 F7