I’ve noticed my nostromotron was slightly off due to rounding error in the code. I’ve also taken the opportunity to check the analog oscillator scaling over the note range. The end result sounds way less toyish and it feels smoother now.
You can grab the last version of the code over at github.
The ODroid U3 surely rocks the house. With 3 usb port it can fit any combination of external control you would like [Launchpad, nanoKontrol, Audio out, ...] , a processing power that blows the Rpi to dust, it shines it the best standalone cpu platform I’ve come across so far.
Installation-wise, I installed arch-linux and compiled my synthesis framework in about 3h without a glitch (except for the built-in audio not being recognised by ALSA), and it auto-boot to any app in about 13 seconds.
I enjoy now close to unlimited number of Braider voices while the Rpi puked on three.
So, no matter whether you want to write synthesis software or use any of the Linux classics like pd, super collider, etc.. I’d hugely recommend it.
Now that I’ve tamed the feedback part on TelsonicSegment, it’s a lot easier to explore its sound space without getting [too] all over the place. Here’s a quick jam done this morning using a simple setup with my RaspPie running Telsonic Segment fed through a DOD 250 clone into a cheap Behringer mixer clone.
Since I’m re-doing a fresh install of a SD card on my Raspberry Pi, I thought I’d document the process as I go, in case it is useful for other people (or for my future reference in the most likely case we’re I’ll screw my current SD). I”ve chosen to use ArchLinux over Raspbian because it boots faster and has a smaller footprint. Since I’m mainly interested in using the Raspberry pi headless – without any screen or keyboard attached – it makes sense to have a reduced system to start with. On my current SD, it takes about 10 seconds to boot into the app of my choice, that’s way better than bringing any of my computer back from sleep and firing the equivalent app.
Important note 1: As always, this is heavily time dependent and I can’t guarantee the exactness of this post at any other future dates.
Important note 2: When you changes files on the Rpi and need to reboot, don’t plug the power out. You have a lot of chances files where not committed to the SD yet and all your edits will be lost
1 – Build a SD card
The steps are explained over here, in the installation tab. It’s the pretty standard “download the image and do a SD card dump” procedure. Under linux, use dd. With Windows, you will need Win32DiskImager. Once the image is done, remove it from you computer, stick it into the Rpi’s SD slot and boot it up. The image is setup to use DHCP, so if you you can simply power the Rpi connected to an ethernet cable and – provided you can find its ip – you can directly ssh to it. Otherwise, you will need to connect it to a screen and keyboard and login that way. The default username/password of the image is ‘root’ / ‘root’. The default hostname is ‘alarmpi’.
2 – Setup the package manager
Since you will need to install some additional libraries / packages, it’s a good idea to setup archlinux’s package manager, cutely named ‘pacman’. You can find information about the process over here (look for update system). You can update the system too if you want, nothing wrong with getting the latest while we’re setting up.
The steps I’ve followed are:
Create a pacman key:
# pacman-key –init
Update the system (this will take a while):
# pacman -Syu
# reboot –reboot
3 – Adding packages
Now you need to find and install packages that are missing. You can look for packages through keywords using
# pacman -Ss keyword
And install them using
# pacman -S keyword
In my case I ended needing was sdl, alsa and jack:
Since the built-in audio out of the raspberry pi is only good for deaf people, it makes sense to remove it. Raspbian has a sysem that makes any usb audio the default one but arch linux doesn’t. Since we want it to work with anything we would plug into it, we’ll just get rid of the bcm2835 so it doesn’t get in our way. To do so, edit the file /etc/modules-load.d/raspberrypi.conf and remove / comment the bcm2835 related modules (bcm2708-rng, snd-bcm2835)
6 – Autobooting
If we want to use our raspberry pi as a headless sound device, it’d be nice to get it to start some programs automatically at boot time. So far, the easiest way I’ve found is to use crontab.
Crontab has a special syntax that allow some command to be executed at boot time. So we’ll create a shell script in our root folder and get cron to execute it everytime we restart the Rpi. If we want to change the start sequence later, we simply need to update the shell script.
Lately I’ve been interested in combining a standalone synth running on the Raspberry Pi with a Launchapad setup in ‘grid scale’ mode – like push does – to have a small standalone synth I could quickly power to practice scales or play along tracks without the need of a dedicated computer setup.
Here’s a first step showing the Rpi booting and activating the launchpad. It doesn’t sound great right now but is a good enough proof of concept to pursue the effort.