Ubuntu Studio, Rakarrack and some hardware

 | 21 Jan 2014 01:27

So I’ve had some hardware lying around, that was screaming at me to be used. It was initially meant for some fancy HTPC build but I never managed to get that done, I had at the time (prematurely) invested in the following:

  • ASUS AT5IONT-I deluxe (mini ITX w dual core Atom D525)
  • 2GB RAM (for said board)
  • Blue-ray slot loading drive (does CD and DVD too, in case you were wondering)
  • 16GB SSD
  • USB 16×32 LED matrix display (TierTex.com, twitter:@TiertexDesign)
  • Arduino ATmega2560 (as of yet unused)

Why?
Now that we’re living in an apartment I’m a little more conscious of noise when playing guitar and I’ve always wanted to dabble with effects but never had the guts to just try out effects by buying and selling them (is there another way?). Pre-built pedal boards seem to just be beyond me, I think I lack the patience to come to understand them… I’d seen stuff about virtual pedal boards, recording software and real-time simulation. So after a little research I came up for the following.

Ubuntu Studio
Queue Linux and Rakarrack; Ubuntu is still my OS (Operating System) of choice these days and though there are contenders out there I figured I should have a go with the familiar first. It’s unusual for me but hey maybe getting older is making me that little wiser these days. Ubuntu Studio claims to sport a real time kernel and comes with Jack and Rakarrack by default. Sorry this is not a review of the software I used, Google is your friend – do your own home work.

  • Ubuntu Studio (13.10)
  • snd-aloop loopback sound driver (VU meters on the LED matrix using python, I needed an ALSA instance to poll)
  • Mbox2 hardware from eBay (lacks Windows7 support but natively supported in Linux kernel 3.x, so ‘cheap’ to get, has two high-Z/microphone/line inputs and two line outputs all at 48khz sample rate. I figured it was good enough for my needs)
  • Python to drive the LED matrix display so see in- & output VU levels, CPU, memory, app load and preset-name at a distance.
  • Touch screen. In order to prevent needing to use a keyboard and/or mouse for on the fly changes. Keeping a close eye on eBay helped again as they can go for £100+, but I managed to get a 17″ screen for £26.
  • Cheap PCIe VGA card. The touch screen was VGA and the AT5IONT only has HDMI and DVI-D; no analog, I found this out the hard way.
  • Panel mount USB port (Neutrik of course)
  • USB serial adapter, as the touch screen was serial not USB. Another reason I got the touch screen for just £26…
  • Old stuff I had lying around
  • Old amp (3U 19″)
Rakarrak build using scavenged parts

Rakarrak build using scavenged parts

The end product
I gutted an old amplifier, added some perspex, case modding style LED’s, some gaffer tape (had to be done) and there you have it… The flight case is a quick botch job, I’d like to build a custom case with flip up touch screen lid and pedal board front lid, but haven’t got the money for the needed hardware at the moment. Additionally a laptop with touch screen may just prove to be more powerful and portable, this beast is just too heavy to carry.

My Python script
For those of you interested or doing similar stuff. My Python script for the ledmatrix can be found here, I’m sure I’ve committed many sins in coding this. Feel free to comment your improvements etc there.

Do note however that I struggled with alsaaudio as it returned [-31, 0x0] every other time I tried to grab for a VU level reading. I ended up testing for this and grabbing again. Effectively doubling the cpu load involved. Someone on IRC suggested Pure-data which looks great for grabbing VU levels but having to then take a numeric value and convert it into the code needed to drive the LED’s when I already had a working script based on microphone input level, this proved too much of a hurdle. I tried several Python libraries but settled on the one that worked best for me with the smallest impact on CPU. The displayed text is read from a file.

The plan was to read this from Rakarrack, but as this isn’t yet supported. What I’ll most likely end up doing is building a (USB) midi pedal board with the Arduino so I can control Rakarrack and Guitarix while playing. Hopefully I can then use the same midi process to send the preset name to the LED matrix display.

Intel Atom & real time audio processing?
The Atom D525 isn’t powerful enough for all that Rakarrack can throw at it but there are quite a few that are very usable. My Jack buffer is I think 256 so latency is around 20 msec but I’ve not had any problems with that being too slow for me. Think of me what you will… The 2GB ram is barely used and boot time due to the SSD is a mere few seconds. One significant thing is however that Guitarix is a lot less CPU hungry than Rakarrack. Despite this I do prefer Rakarrack due to it being easier to use. Guitarix tries too hard to be simple effectively making it difficult to set up for effects (imho). Maybe time will change my mind, I use both at the moment.

ASUS AT5IONT-I

ASUS AT5IONT-I

32x16 LED matrix

32×16 LED matrix

Lin-Amp

Lin-Amp

Mbox2 has native support in Linux

Mbox2 has native support in Linux

Jack Patchbay

Jack Patchbay

Jack Connections

Jack Connections

HTOP output

HTOP output

One Response to “Ubuntu Studio, Rakarrack and some hardware”

dmgeurts wrote a comment on 21 Jan 2014

@TiertexDesign “New djerk.nl post: Ubuntu Studio, Rakarrack and some hardware http://t.co/PaE0OBnTxJ” << Another use of your ledmatrix