LXR OSX build instructions

Tested on 10.8.x and 10.9.2; likely needs Xcode installed also (https://developer.apple.com/xcode/downloads/)

General steps
The LXR code is divided into two main parts


 * the AVR Atmel code (display and front-panel control)
 * the Cortex M4 ARM code (main LXR code for DSP, sequencer, USB etc.)

We need different toolkits to handle compilation of each set of code.

There is also a firmware utility (see ); this generates the final firmware image for the LXR and requires regular   to compile. It combines the AVR and the ARM code into a single image that can be uploaded from the SD-Card.

AVR toolchain

 * Download the Atmel AVR 8-bit toolchain for Mac from http://www.obdev.at/products/crosspack/download.html
 * You will get a  file that you should extract and install (  is the most recent as of 2014/05/02)
 * The compiler and libs are installed under
 * Note: this will be a symlink to a folder like

GNU ARM toolchain

 * Download the GNU bare metal ARM toolchain from https://launchpad.net/gcc-arm-embedded
 * Note: get the Mac version (something like )
 * Extract the compressed tar file to /usr/local

cd /usr/local && tar -jxf /path/to/gcc-arm-none-eabi-4_8-2014q1-20140314-mac.tar.bz2

Set environment variables

 * We need to set a couple of environment variables for both compiler sets.

export ARM_TOOLKIT_ROOT=/usr/local/gcc-arm-none-eabi-4_8-2014q1 export AVR_TOOLKIT_ROOT=/usr/local/CrossPack-AVR


 * You could add these to your  to avoid setting them every time you start a terminal
 * Note: run  to avoid restarting your terminal the first time you do this

LXR source code
A number of different repositories are available:

Julian's repository (original SonicPotions): https://github.com/SonicPotions/LXR rudeog's repository: https://github.com/rudeog/LXR -> extra features compared to Julian's repo. pld's repository: https://github.com/patrickdowling/LXR rstephane repository (https://github.com/rstephane/LXR -> equivalent to Julian's repo.

For example, from Terminal

# This will create a new directory called "LXR" git clone https://github.com/rudeog/LXR

See https://help.github.com/ and http://git-scm.com/book for further tutorials about how to use Git.

Compile the firmware
cd /Users/music/Documents/workspace/LXR/ make firmware make clean
 * Open a terminal window, and change directory to where you cloned the repository
 * To build the firmware
 * To remove local build files
 * The generated firmware will be in
 * Copy to your SD card, and update the firmware

If you have downloaded rstephane code, similar to @Julian and @PLD, you will notice that when you power on the machine, it displays "LXR-Drums-V" instead of "LXR Drums V". If so, you have successfully loaded (and compiled) the LXR firmware!!!!

Well done and happy hacking!