Preparing the Operating System for Your Audiopint!

Introduction: Preparing the Operating System for Your Audiopint!

The AudioPint is the musician's 'toolbox,' incorporating all the audio effects a performer would need into one small, lightweight, and portable piece of equipment. While other performers might have to lug heavy effects pedals and sound boards, you can make your own all-purpose toolbox that allows you to record, morph, and play back your voice to create music in new and fun ways! These instructions assumes you've already gotten a chance to set up the hardware to your audiopint---now all you have to do is tweak the software to get it running!

This guide assumes you have a fair amount of knowledge of UNIX commands. You can learn more about the necessary commands and get more detail when you visit the official AudioPint wiki at

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Setting Up the OS: Format the USB Drive

You can run the entire OS (operating system, e.g. Linux, Windows, Mac) on a 1 gig USB drive. We'll be using a Linux OS.

Here's how to get the OS on the USB. For more detailed instructions, go to Follow these instructions using the terminal in Linux.

Format the USB drive to the Ext2 filesystem. You can do this in Linux by running "gparted," the Gnome Partition tool. This creates space for the OS image.

Gparted will open up in a window that looks like the picture below. As shown, right-click on the USB drive (usually marked as sda1) and point to "Format to" and then click on "Ext2" (not ntfs, as shown in the image).

image found here:

Step 2: Setting Up the OS: Download the Image

Download the image.
We've got an OS for you already!

If you happen to be using the same motherboard we're using (the Via EPIA EN), you can download our OS here. (Right-click on the link and click "Save Image As...")

If you are not using the Via EPIA EN, view this site for the rest of the instructions.

Step 3: Setting Up the OS: Restoring the Image

Use Partimage to restore the image to the USB disk.

After you unmount the USB disk, use partimage to get the OS image onto the disk.

In partimage, select the USB disk you want to restore the image on. Then enter the file name of the image (audiopint.000) in the file box, and select the 'restore an image' option. Leave all other default options and press continue (F5) until partimage starts to restore the image.

images found at

Step 4: Setting Up the OS: Getting the OS to Boot

Install GRUB on the MBR (Master Boot Record). GRUB (GRand Unified Bootloader) enables you to boot up and run the OS on your AudioPint. If your disk is labeled as /dev/sda, you'll need to type these things into the command line:

sudo mkdir /media/usbdisk
sudo mount -t ext2 /dev/sda1 /media/usbdisk
sudo grub-install --root-directory=/media/usbdisk --no-floppy --recheck /dev/sda
sudo umount /media/usbdisk

You're done setting up the OS! Now you can unmount the disk and pop it into your AudioPint.
A few notes about the OS: The root password is audiopint, and you must type in sudo sh before editing anything. Also, before shutting down, you must type in sudo sh

Step 5: Make the Audio Program Start Automatically

To make your Audiopint fully portable, you'd probably like to add a feature that makes the audio program start right away when you plug the Audiopint in to a power source. The audio program we've created specifically for the Audiopint is called PureJoy and should already be installed with the OS. It was created using PureData, a graphical programming language suited for audio editing.

For more detailed instructions, see this link:

The first step is to create a file of sh commands to start PureJoy.

Create a new file in the /home/audiopint/purejoy directory. We've named this file run_audiopint4ch_OSS. You'll need to put in these PureData arguments in this file:

pd -lib zexy -lib joystick -oss -r 44100 -audiodev 1,2,3,4 -inchannels 2,2,2,2 -outchannels 2,2,2,2 -audiobuf 6 -nomidi purejoy_audiopint4ch_OSS.pd

Save the file. Now, in the command line, if you type in sudo sh run_audiopint4ch_OSS, PureJoy should start.

Step 6: Turning Off the GUI

After making sure that the script runs PureJoy, now we can turn the GUI (Graphical User Interface) off. The GUI is the window that allows you to view the code for PureJoy. Without the GUI, the hardware does not have to work as much to keep everything running.

Copy run_audiopint4ch_OSS into a file named run_audiopint4ch_OSSnogui and in the editor, add -nogui right after pd in the script, so it looks like this:

pd -nogui -lib zexy -lib joystick -oss -r 44100 -audiodev 1,2,3,4 -inchannels 2,2,2,2 -outchannels 2,2,2,2 -audiobuf 6 -nomidi purejoy_audiopint4ch_OSS.pd

Some comments about this step:
  • With these scripts you might have to change some things if you have less than 4 iMics. For example, if you only have 2 iMics, your script would be pd -lib zexy -lib joystick -oss -r 44100 -audiodev 1,2 - inchannels 2,2 -outchannels 2,2 -audiobuf 6 -nomidi purejoy_audiopint4ch_OSS.pd.
  • You may have to fiddle around with purejoy and the microphones to make sure that -audiodev 1,2 is correct. Fore example, with one of our AudioPints with two iMics, we discovered that the right inputs actually corresponded with -audiodev 2,3.

Step 7: Create the Initialization Script

Now that we have a file of commands that can start PureData, we can create an initialization script that will run when the system boots. This initialization script needs to be placed in the /etc/init.d directory.

Create a new script named pd and enter these lines:
   #! /bin/sh    # make sure the PD binary exists    PD_BIN=/usr/local/bin/pd    test -x $PD_BIN || exit 5    #required if you use LADSPA plugins in your patch    export LADSPA_HOME=/usr/lib/ladspa    export LADSPA_PATH=/usr/lib/ladspa    case "$1" in    start)	    echo -n "Starting PD\n"	    cd /home/audiopint/purejoy	    su audiopint run_audiopint4ch_OSS_nogui &	    ;;    stop)	    echo -n "Shutting down PD\n"            killall pd	    ;;    restart)            echo -n "Restarting PD\n"	    $0 stop	    $0 start	    ;;    *)	    echo "Usage $0 {start|stop|restart}	    exit 1	    ;;    esac    exit 0    # end

Generally, init.d files should have these permissions listed:


The pd file might have these permissions listed:


If so, edit the permissions by typing into the terminal:

chmod ugo+x pd

Test to see if the script works by typing

sudo ./pd start

Step 8: Update the Init State Directories

Since we have the initialization script ready, we can update the init state directory (analogous to a startup directory) to make the script run. Do this by typing

sudo update-rc.d -f pd start 99 2 3 4 5 .

(Don't forget the period at the end of the line.)

This should update the directories titled /etc/rc?.d , where ? is replaced by 2, 3, 4, and 5. Check to see if the rc2.d directory is updated.

cd /etc/rc2.d ls

There should be a file named S99pd located in the directory if you've updated correctly.

If you're finished editing the scripts, make the image read-only by typing

sudo sh ~/

You're pretty much done!!! You can try to unplug and plug in the AudioPint. Type ps aux | grep pd to see if PureJoy is running. If it is, you should be able to see the commands in the run_audiopint4ch_OSS_nogui script.

Congrats---you've made your AudioPint!

Be the First to Share


    • Backyard Contest

      Backyard Contest
    • Silly Hats Speed Challenge

      Silly Hats Speed Challenge
    • Arduino Contest 2020

      Arduino Contest 2020

    2 Discussions


    12 years ago on Introduction

    Hello, and welcome to the Instructables community! It's great that you've decided to tell the world about something you've made by publishing an Instructable. We just wanted to let you know that your project still needs a little more work if you want it to be well received on Instructables. Projects that don't include certain basic elements tend not to get the attention that they deserve, and so we'd love for you to check out the list below of what makes a successful Instructable. Successful projects on Instructables include: - clearly written details of a finished project with instruction - as many steps as are necessary to explain your project - clear images that you took of your project for most, if not all of your steps - an intro image - proper spelling and grammar - appropriate cautions or safety considerations I'll give you another opportunity to make any final changes to your project before we publish it. Once you're all set to go, please republish your project and send me a quick comment letting me know that you've made some changes. I'll give it a quick final check to make sure you're on the right path, and then remove this note. Thanks for your submission and we hope to see your project published soon!


    12 years ago on Introduction

    I appreciate the changes that you have made to your project. However, you need to add images for most, if not all, of your project. Let me know if you have any more questions. Thanks!