LRduino - The open-source modular controller for photo post-processing.

This project stems from my passion of several things:
  1. Photography
  2. Programming
  3. Tinkering
  4. Not paying over-the-odds for something I could build myself, however poor the end result might be
It all began when I was looking for a way to post-process photos in Adobe Lightroom without using a mouse to click-and-drag adjustment sliders. Doing this repeatedly for hundreds of photos can really begin to give you wrist pain (cue the world's smallest violin). I first came across Lightroom consoles such as Loupedeck and Palette, and after mopping up my spilt coffee having seen the price tag, I began to look for alternative options.

It was then I came across the excellent MIDI2LR open-source library, which interfaces MIDI controllers with Lightroom 6/CC.

Borrowing my flatmate's MIDI keyboard, I tried it out - it was exactly what I needed, except the fact I was playing notes as I edited. MIDI controllers also aren't cheap. So, I turned to Arduino. Having only received this Fisher-Price MyFirstMicrocontroller™ about 3 months prior, it seemed like a good opportunity to have a real objective and learn on the way. There's only so many LED matrix tutorials a man can handle.

And so, LRduino was born. It has a few loose "requirements":
  • Open source - for those who don't have a wallet large enough for professional Lightroom consoles
  • Output MIDI - to communicate with MIDI2LR and any other post-processing interfacing software
  • Customisable - users of the library should be able to create a console which suits them
  • Modular components - apart from the simplification in software and hardware design, this allows users to customise their console

It's initially designed for Arduino and Lightroom (predominantly because that's what I have access to), but this has already encountered some issues. Namely, Arduino can't output MIDI directly - it can only do so over serial. This results in an chain of software to convert MIDI over serial into something that MIDI2LR will understand:
  1. Arduino outputs MIDI over serial using the Arduino MIDI Library
  2. Hairless-MIDIserial converts this into MIDI signal
  3. loopMIDI creates a virtual loopback MIDI port, to connect the open hardware-MIDI-port to Windows applications
  4. MIDI2LR uses this port to convert MIDI commands to Lightroom adjustments
Simple, right? I have been reliably informed that Teensy might be the way forward here - it's able to output MIDI directly over USB, meaning the hardware replaces this long chain of software.

Except, that's getting towards the cost of a basic MIDI keyboard. Oh well, at least we're learning...