Mac Software Setup

Setting up the softare 

Depending on the Operating System (OS) of your computer, the software setup with be slightly different for a Mac or Windows users. If you are a Mac user follow below.

Downloading Programs for MIDI 

The necessary programs used for Mac users:

If you navigate to the LMMS download page yourself please choose the BETA version as the Stable version does not yet support Apple MIDI.

Mac Software Setup
This video walks through the software setup for Mac.

Once downloaded place both one folder for easy use. LMMS is the only of the bunch that needs to be formally installed. Hairless will just run from the folder.

Connecting Virtual Cables 

A standard MIDI device uses a special MIDI connector and communicates in MIDI protocol, or language, with a digital audio workstation (DAW) like Garageband or LMMS. We are not using that connector and are instead using an Arduino and USB Cable. But utilizing some digital trickery our DAW of choice will see the Arduino MIDI Controller as a real MIDI device.

To do this two connections much be made. A USB to virtual MIDI cable and that virtual MIDI cable to our DAW in this case LMMS. Hairless is our USB to MIDI cable and the MIDI to DAW part is handled my the Mac OS. By using this method, a key pressed on our controller will travel into our computer via USB and into LMMS as a MIDI signal and then into notes on a piano.

Connecting Virtual Cables Actually 

The order of opening the programs is important in this process. The LMMS Software will not recognize the virtual cable if the cable isn't set up beforehand.

If at the end of this process nothing is working for you, close LMMS and restart the piano, make sure hairless is showing activity before moving onto LMMS.

Setting up Mac Settings

Go into the Spotlight or search bar at the top right of your screen and enter "Audio MIDI Setup". Alternatively you can find this program in the Applications then Utility folder in finder.

Searching the SpotlightSearching the Spotlight

Navigate to the window tab on top and press "Show MIDI Studio".

Show MIDI devicesShow MIDI devices

A new window will appear and we want to double click the red box titled "IAC Driver".

The IAC DriverThe IAC Driver

After double clicking that, press the checkbox with the text "Device is online".

Device is onlineDevice is online

With that done, one of our virtual cables is ready.

Open Hairless-MIDISerial

Double click the Hairless-MIDISerial application

A new Hairless windowA new Hairless window

Click the Serial<->MIDI Bridge On thus setting it to the off position. Make sure your Arduino MIDI Controller is plugged IN and you'll want to select it from "Serial Port" drop down menu on the left. Under the MIDI Out drop down on the top right select that IAC Driver.

Correct Hairless settingsCorrect Hairless settings

With the right settings input we can click Serial<->MIDI Bridge On again and turn it on.

Open LMMS (Only works if LMMS is opened last)

A new LMMS projectA new LMMS project

LMMS will open with a UNTITLED project, this is fine for now. In order for our Arduino MIDI Controller to show we'll have to change some settings. From the top application bar select LMMS then down to "Preferences".

Select PreferencesSelect Preferences

Move down to the speaker icon which is second from the bottom and select "SDL" from the Audio Interface list.

Audio InterfaceAudio Interface

Move down another icon to the keyboard picture and select "Apple MIDI" from the MIDI Interface list.

MIDI InterfaceMIDI Interface

Press OK to confirm these settings and then restart LMMS. Now we can work on that UNTITLED project. On the left hand side is a vertical bar with icons. Select the Music note and it will open a menu called My samples. Double click on the instruments folder to expand it, either double click on the e_piano_accord01.ogg or drag it into the Song Editor window. This will create a new track, if you double clicked it will appear in the Beat + Bassline Editor window. Feel free to select the setting/gear on the premade tracks in the same window to delete it, we are only focusing on the piano one for now.

Select the piano track where it shows the filename (e_piano_accord01.ogg) this will open up a new window specifically for the track. The track window is separated into multiple tabs, under the general settings tab is a menu bar with PLUGIN, ENV/LFO, FUNC, FX and "A PICTURE OF A KEYBOARD" on it. Select "A PICTURE OF A KEYBOARD" and the window will change to the MIDI tab. Select the long button next to ENABLE MIDI INPUT, and it will light up green along with the channel and velocity sections. Hover your mouse over the Channel Box, the mouse should change to hand pointed. To increase or decrease the channel number you have to scroll up on your mouse (if you have a scroll wheel) or using two fingers on your mouse pad, scroll down. We want the Channel to be on number 2 because of how our code is written.

Correct Piano SettingsCorrect Piano Settings

Select the button in the MIDI tab that looks like a Piano in a grey box (not the one at the bottom of the window), or back in the window with the track and select the gear. In the drop down window select MIDI > INPUT> then IAC Driver. If you select the piano in the MIDI tab you simply select the IAC Driver.

IAC SelectionIAC Selection

Press some keys on your MIDI Keyboard, do you hear anything? is the LMMS software registering anything? Check out the Debug window in Hairless, is the proper information coming through?

Your Virtual connections are complete