borfo Posted January 8, 2015 Report Share Posted January 8, 2015 (edited) I got the BLM scalar app working on the Raspberry Pi (Debian) - I can use the Pi to run the Novation Launchpad BLM, it works pretty much perfectly, although it leaves some lit LEDs behind the current step indicator occasionally until it passes again. No big deal... The compiled Raspberry Pi binary is here: http://www.boxx.ca/BLM-Rpi Let me know if it works for you. It segfaults if it is run from the terminal without X (TK, could this be made headless?). So, set your Pi to automatically log in, startx, and then start the BLM emulator, and you've got a headless device to run the Launchpad BLM. you might have to install the following JUCE dependencies on your pi: sudo apt-get -y install freeglut3-dev libasound2-dev libfreetype6-dev libjack-dev libx11-dev libxcomposite-dev libxcursor-dev libxinerama-dev mesa-common-dev Needs a powered USB hub if you're running the SEQ and two launchpads from the Pi... But you can power the Pi from the same hub. ############################ To compile it yourself: On your computer: Open the BLM scalar app in introjucer. Add the following in the Extra Processor Definitions section: JUCE_USE_XSHM=0 JUCE_USE_XINERAMA=0 Save the project, and copy it over to your Pi. I copied the whole MIOS32 directory over. On your Pi: sudo apt-get -y install freeglut3-dev libasound2-dev libfreetype6-dev libjack-dev libx11-dev libxcomposite-dev libxcursor-dev libxinerama-dev mesa-common-dev libjack0 (JUCE dependencies) Enter the JUCE project's Builds/Linux directory. Recent JUCE builds require GCC 4.7 - my compile was throwing errors before I did this: sudo apt-get install gcc-4.7 g++-4.7 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.6 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 40 --slave /usr/bin/g++ g++ /usr/bin/g++-4.7 sudo update-alternatives --config gcc ...and choose 4.7 ...then "make". The compile is slow, but it worked for me - took about half an hour. Edited January 8, 2015 by borfo Quote Link to comment Share on other sites More sharing options...
borfo Posted January 8, 2015 Author Report Share Posted January 8, 2015 (edited) With a headless version of the BLM scalar thing with a configuration file that you could edit to set up your SEQ and Launchpads (and ideally some handling of disconnects and reconnects), we could put together a standard Raspberry Pi OS SD card image that auto-launches the BLM app on boot... It could be set up to mount with a read-only root so you could just unplug it to turn it off without worrying too much about filesystem integrity. It'd be pretty easy to add something in the OS image using mididings and a USB to MIDI adapter to translate USB MIDI to DIN MIDI and other MIDI routing, too... Edited January 8, 2015 by borfo Quote Link to comment Share on other sites More sharing options...
Rowan Posted January 8, 2015 Report Share Posted January 8, 2015 Sound like a very interesting extension! I tried to get the BLM app to run on a Raspberry Pi over the weekend without any luck. I'll give this a try when I get a chance in the coming days. If I can get this working reliably I think I'll add a Raspberry Pi into the Launchpad Mini frame I've made. It would be great to have an embedded solution. An OS image for the Raspberry Pi pre configured would be a great idea once all the kinks are ironed out. Which Raspberry Pi are you using? Quote Link to comment Share on other sites More sharing options...
Altitude Posted January 8, 2015 Report Share Posted January 8, 2015 (edited) it would be cool is if could be connected to the SEQ via OSC Edited January 8, 2015 by Altitude Quote Link to comment Share on other sites More sharing options...
borfo Posted January 8, 2015 Author Report Share Posted January 8, 2015 (edited) Good news: I left it running all night, and it was still going when I woke up. So, it's at least that stable. But: I just configured the Pi to autostart X, and log in automatically, then run the BLM. It runs fine, but it's not remembering settings anymore, so I have to manually configure the launchpads and SEQ connection each time it runs... Not sure why that is, it was remembering settings before. Anyone know where it would be storing the settings from the last time it ran? Which Raspberry Pi are you using? Model B (not the B+) with the standard Debian install. Edited January 8, 2015 by borfo Quote Link to comment Share on other sites More sharing options...
Phatline Posted February 23, 2015 Report Share Posted February 23, 2015 multitouch possible? Quote Link to comment Share on other sites More sharing options...
borfo Posted May 2, 2015 Author Report Share Posted May 2, 2015 I don't know. I'm using it headless, with 4 novation launchpads. The launchpads support many simultaneous button presses, not sure about the onscreen BLM emulator. Quote Link to comment Share on other sites More sharing options...
borfo Posted May 17, 2015 Author Report Share Posted May 17, 2015 (edited) If you're having trouble running the binary, make sure you've installed the JUCE dependencies: sudo apt-get update sudo apt-get -y install freeglut3-dev libasound2-dev libfreetype6-dev libjack-dev libx11-dev libxcomposite-dev libxcursor-dev libxinerama-dev mesa-common-dev And that you have set the executable bit on the BLM binary file - either right click on the file, select "properties" or whatever, and look for the permissions section - check "allow executing this file as a program" or whatever (not sure of the exact menu names and wording offhand.) Or, from a terminal, in the directory where the binary is: chmod +x [NAMEofBLMbinary] If you still have problems, run the binary from a terminal - that may show some error messages that will help diagnose what the issue is. From a terminal in the directory where the binary is: sh ./[NAMEofFILE] Edited May 17, 2015 by borfo Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.