What is it?
Bela is an open-source embedded computing platform for creating responsive, real-time interactive systems with audio and sensors.
Bela was born in the Augmented Instruments Laboratory, in the Centre for Digital Music at Queen Mary University of London. Bela is now developed and produced by Augmented Instruments Ltd in London, UK.
It provides low latency, high quality audio, analog and digital I/O in a really small package that can be easily embedded into a huge range of applications.
It can be used, for example, to create musical instruments and audio effects.
It is built on the BeagleBone family of open-source embedded computers, Bela combines the processing power of an embedded computer with the timing precision and connectivity of a microcontroller.
In computing, “real-time” refers to any system that guarantees response within a specified time frame. This is called the “real-time constraint”. Bela’s real-time constraint is processing audio frames at audio rate, which is 44,100 frames per second.
There are different types of real-time systems, often called soft, firm, or hard. A firm or soft real-time system can miss a few deadlines, but performance will degrade if too many deadlines are missed. A hard real-time system is one that is subject to stringent deadlines, and must meet those deadlines in order to function. Bela is a hard real-time system, meaning that it must process audio frames at audio rate in order to function.
Bela features an on-board IDE that launches right in the browser, making it easy to get up and running without requiring any additional software.
It has just 0.5ms latency while retaining the capabilities and power of a 1GHz embedded computer running Linux.
Why choose Bela? Because no complicated setup or complex toolchains is needed. Just connect Bela to your computer, launch the on-board IDE in a web browser, and start coding right away.
Bela comes in 2 version, Bela Board and Bela Board mini.
Bela Board has 8 channels of 16-bit analog I/O, 16 digital I/O, stereo audio I/O, and 2 built-in speaker amplifiers.
Bela Mini is 1/3 the size of the big one. It features 8 16-bit analog inputs and 16 digital I/O, as well as 2 channels of audio input and output.
It runs a custom audio processing environment based on the Xenomai real-time Linux extensions. Your code runs in hard real-time, bypassing the entire operating system to go straight to the hardware.
What’s really great, is that you can code in various languages such as C++, SuperCollider, Csound and PureData. This makes it really user-friendly!
Bela is ideal for creating anything interactive that uses sensors and sound. So far, Bela has been used to create:
- musical instruments
- kinetic sculptures
- wearable devices
- interactive sound installations
- effects boxes
- robotic applications
- sensorimotor experiments
- paper circuit toolkits
- e-textiles
Here some examples:
Light Saber
of Nature and Things – de Shroom (the Shroom) – Sound Art Installation
Microtonal subtractive synthesizer (Bela Mini + Pure Data)
SoundInk (Bela Mini + Pure Data)
Noise do not Judge (Bela, Trill Craft + Pure Data)
Sonic Tree (Bela + SuperCollider)
Resources