Skip to content

MarquisdeGeek/FluidPi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FluidPi

A headless Raspberry Pi synth with web-controlled patches

Intro

I have several Raspberry Pi's that are not earning their keep, so I decided to buy some SD cards and turn them into permanently-configured embedded devices. The first one is this - a synth!

It uses SF2 soundfont files to generate the noises, and is controlled by a USB MIDI controller.

It uses a web server in bash (really!) to control the sounds remotely, so it can be run headless.

Installation

There are several moving parts here:

The guide with which I started was at andrewdotni.ch/blog/2015/02/28/midi-synth-with-raspberry-p/

I use this as a base, with all the code in /home/synth but run by the root user on boot-up. This isn't recommended (especially since it runs the web server as root) but it gets the job done, on a local network.

Copy all the SF2 soundfont files you have into /home/synth/sf2, as this where the webserver will scan.

Start the synth service by running rc.local, or starting it via systemd

There maybe some other steps which I've forgotten.

Features

On boot-up the device:

  • Loads the FluidSynth software
  • Opens a session on port 9987 into which you can telnet, to control FluidSynth
  • Opens a web server on port 9988 to change SF2 files
  • Connects a MIDI keyboard input device (ID 128), to the FluidSynth output device (ID 20)
  • Plays some notes to let you know it's ready

Credits

Inspiration: http://andrewdotni.ch/blog/2015/02/28/midi-synth-with-raspberry-p/ FluidSynthh: http://www.fluidsynth.org Service scripts: https://gist.github.com/oostendo/b22a57aacc9439f80f74b0545d38148d https://gist.github.com/oostendo/7bd7efeebd2dc135e17a077326469b24 (not used) bashhttpd: https://github.com/avleen/bashttpd

About

A headless Raspberry Pi soft synth with web-controlled patches

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages