USB Midi

From ZENotes
Revision as of 10:20, 27 May 2024 by Admin (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

USB-Midi Software

Note :  (to work without gdm) :  nmtui is the terminal wireless manager
         Install the alsa-utils package. 

Links:

https://wiki.archlinux.org/index.php/USB_MIDI_keyboards
https://bugs.archlinux.org/task/44286
 # modprobe snd_seq_midi
 # lsmod | grep snd_seq_midi
 $ lsusb
 $ amidi -l
 $ aconnect -i or aconnect lio 
 $ aseqdump -p ##

(where you should replace ## with the client number of your keyboard from aconnect -i)


IF you're not already on Pipewire, but still on Jack: (but you should be on pipewire)

 $ a2jmidid -e

(After starting jack)


USB-Midi Hardware

The Ubiquitous Korg:

http://www.korg.com/us/products/controllers/nanokontrol2/

0944:0117 KORG, Inc. nanoKONTROL2 MIDI Controller

The Korg Setup software is an .exe, but works with wine


The new MIDImix from Akai works great !

The setup software works with wine.


The Hungarian Pedal:

http://www.ebay.fr/usr/guitar.fun.stuff?_trksid=p2047675.l2559

is on the Linux-USB list of vendor IDs

http://www.linux-usb.org/usb.ids

as:

05e4  Free shared USB VID/PID pair for MIDI devices

and returns here as it should as:

 ID 16c0:05e4 Van Ooijen Technische Informatica Free shared USB VID/PID pair for MIDI devices

The short manual on the ebay page reads as follows:

Plug and play, no driver or installation needed. Just plug it into a free USB slot and your OS will recognize it. 
Choose USB Midi device in your software settings and you're ready to go.

Two controller mode:
*   Mode 1: Changing whole presets. The controller sends program change messages. 
The LEDs indicates which preset is working.
*   Mode 2: To activate this mode, press buttons 2&3&4. To change back to mode 1, press buttons 1&2&3 
(All LEDs will blink for half a second to indicate this).

 In mode 2 the controller sends control change messages. It allows you turn functions/effects on and off individually. 
 The LEDs indicate their status.                    
 In mode 2, press a button for 10 seconds to switch to momentary mode. (All LEDs will blink for half a second to indicate this).
 It allows you to use non-on/off functions like 'previous/next preset', 'tape deck play' etc.
 The LEDs do not light up in momentary mode since it's unnecessary.

External pedal input. You can connect any standard pedal with a 6.3mm (¼ inch) stereo jack.  Using an “insert” or “Y-shaped” cable.

To use the full range of the pedal you may have to calibrate it.
Calibration:  Step 1:turn the pedal to minimum position and press button 1 AND button 3. 
              (All LEDs will blink for half a second to indicate this).
              Step 2:turn the pedal to maximum position and press button 1 AND button 4. 
              (All LEDs will blink for half a second to indicate this)
              The device will save the calibration data so you only have to do it once.


More on Vendor IDs: http://www.eevblog.com/forum/projects/usb-vendor-product-ids/

List of Linux-recognized VIP/PIDs: http://www.linux-usb.org/usb.ids

The Full Monty: HungarianPedal + IDJC + D::Light/Whitecat

AKA Show Control with USB MIDI Footswitch MIDI Foot Controller with external pedal input -> Sound output AND light cues. With ONE foot

WILL NEED ALSO: a2jmidid qmidiroute and Patchage

0. Set your pedal's keys to Note/Momentary as described above.

1. We'll need the a2jmidi daemon to Create IDJC midi connection in patchage; it will only load if Jack is already running,

the easiest is to start jack, by, i.e.... Starting idjc! Then, do:

 $ a2jmidid -e

2. Now start qmidiroute, and create the inputs/outputs pairs needed like this (or load them if you already did):

This is to "speak" a language D::Light understand, since it doesn't do Go on ControlChanges, and receive all 4 ProgramChanges from the pedal as the same event

Hit the "Add New MIDI Route" yellow button on top to create a new tab;

Set input to         "controller"
Set Channel to        1 / 16
Set Controller to     0 / 96    (that is the value of the first button)
Leave Value to        0 / 127  

Set Output to        "Note" 
Set Channel Offset to 0         (Change this only if you have multiple devices to which you cannot set the channel manually)
Set Note Offset to    0         (This way, the former CC signal is transformed into a Note signal, but still is patched to 96)
Set Velocity at       0 / 127
Leave ALSA port to 1 

Hit "Duplicate" and do the same with Controller to "97"

Save your map!


3. Go back to Patchage, after successful launch of the a2jmidid -e daemon, and with qmidiroute running, do:

hit Ctrl-G to re-arrange the view, and now connect the following:

From the the a2j Output box (Left one): The RED output labelled: "USB Midi controller[XX](capture): USB Midi Controller MIDI 1"

Goes to BOTH:
in the idjc input box (right one)
* RED midi_control                      (You may have to re-launch IDJC if the red midi_control input is absent)
in the a2j input box (right one)
* RED qmidiroute[XXX](playback): in

4. Configure D::Light

In D::Light / Setup, refresh the Midi section with the blue arrows and select "Out1"
In D::Light / Midi, you should see the output when you hit button 1 or 2 of the pedal; assign them as you wish.

5. Do the same with IDJC, assign keys 3 and 4 to your liking.

Note that the "HungarianPedal" has many versions with much more, or sturdier, buttons

The Full Monty: Start from Cold

To get IDJC + Whitecat or D::Light running with cues triggered from external USB-MIDI hardware

 Don't plug nothing.
 Start qjacjctl with scripts to modprobe snd_seq_midi before start, and to start the a2jmidid daemon with the -e option.
 Start a terminal, check that snd_seq_midi is loaded with lsmod | grep snd_seq_midi and that a2jmidid and jack are running with ps -a | grep ...
 Start qmidiroute, load your needed preset translating CC into notes, and activate them. Note to Self: With the "activate" button, idiot.
 Start IDJC
 Plug hardware.
 Back to qjackctl, built or re-call if saved previously the needed patch connections in the patchbay, from hardware to IDJC and qmidiroute in the Midi Tab
 Start Whitecat / D::Light etc.
 
 You are now allowed to breathe again.
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox