/nanonoise

Map MIDI from the KORG nanoKONTROL controller to Renoise keystrokes.

Primary LanguageC++GNU General Public License v3.0GPL-3.0

nanonoise - map midi to Renoise keystrokes

The nanonoise application is a quick hack to enable sending keystrokes to the Renoise tracking software triggered by midi cc messages and midi mmc commands.

The app was originally written for the KORG nanoKONTROL midi controller, however it should also work with other midi controller hardware. The source code was tested to compile and run under Linux.

nanonoise-midi-mapping-mode

nanonoise-assign-renoise-action

Features

  • Maps midi cc messages and midi mmc commands to Renoise keystrokes
  • Sends a key press event triggered by a midi cc message with the value 127.
  • Sends a key release event triggered by a midi cc message with the value 0.
  • Sends a key press- and release event triggered by a midi mmc command.
  • Parses your most recent ~/.renoise/V??????/KeyBindings.xml to get the knowledge about Renoise keystroke actions.
  • Virtual midi output port
  • Forwards only midi cc messages which are not mapped to trigger keystrokes. Select this virtual midi output port as a Renoise midi input port. In this way you can still map non-keystroke-triggering buttons, sliders and knobs in Renoise.
  • Virtual midi input port
  • Recives midi messages of other midi gear connected to this port. In this way you can attach additional midi controller hardware to the application.
  • Support for midi controller hardware:
  • nanoKONTROL - Scene switch support. Scene switch is triggered by the nanoKONTROL's scene switch sysex message.
  • Support for additional midi controller hardware can be added to the source code. Send your patches, please.

Install and compile nanonoise from source code

First install the development packages needed to build nanonoise:

sudo apt -y install libqt5x11extras5-dev qtbase5-dev libasound2-dev libx11-dev libxtst-dev

Then download the application's source code from the github.com repository:

git clone git://github.com/koppi/nanonoise.git

(this will create the directory nanonoise/) and compile nanonoise:

cd nanonoise
qmake
make -j$(nproc)

Install and run nanonoise as follows:

sudo cp nanonoise /usr/local/bin
nanonoise &

Supported operating systems

  • Linux - Ubuntu 22.04.
  • MacOS - (not tested so far): Needs a bit of tweaking in the source code. Please send patches and give feedback!
  • Windows - (not tested so far): Needs lot of tweaking in the source code. Send patches and give feedback!

Contact

Thanks