Software MIDI router from input/output devices and MIDI ports on a PC.
GitHub:
The last build (Windows):
(just unzip and run MidiDemo.exe)
The tool is, relatively simple, modification of JUCE example:”MIDI Demo”.
Changes are:
- the MIDI messages are forwarded from inputs to outputs
- refresh period is decreased from 500 ms to 250 ms
- two sliders are added at bottom to control last note repeat cycle
- Note duration controls time between note on and note off message
- Cycle duration controls duration of the complete cycle (loop)
- Time unit is “tick”, which is above mentioned “refresh period”, i.e. 250 ms
While for some other purposes the loop cycle might be annoying, it really helps during waveform modulation and audio processing hardware tests. It generates test note hit (so you hear what sound your breadboard is producing currently) while in the same time it pass-troughs MIDI messages from the selected sources, like hardware MIDI controllers. I’m using UC-33 to control various aspects of the synthesis firmware, via plenty CC knobs it has. The synth project is based on (less popular but very powerful) Arduino Pro Micro, initially published by SparkFun (https://www.sparkfun.com/products/12640) . It has hardware USB support, with UART – in this case: MIDI. It works perfectly with MIDIUSB library. With this tool I’m even able to upload new firmware build (from Visual Studio Arduino extension) on the arduino board, without disconnecting MIDI controller, or even interrupting sound tests with the synth.
Really, there is no tool (exactly) like this
After hours of searching and testing all possible MIDI tools available, I found no solution suitable for my needs. The closest candidate was http://projectgus.github.io/hairless-midiserial/, but it couldn’t forward MIDI messages (despite it looks like it should). Anyhow, if you are playing around Arduino MIDI synth development, check Hairless too – it really helps.