What is Bela?

Bela is an embedded computing platform for creating beautifully reponsive interactive applications. Bela provides ultra-low latency, high quality audio, analog and digital I/O in a tiny self-contained package that can be easily embedded. Built upon 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.

Bela features an on-board, browser-based IDE, making it easy to get up and running without requiring any additional software. The end result: digital instruments and interactive objects that are faster to develop and more responsive to use.

Bela is fast. Bela’s dedicated hardware and software environment provides hard real-time performance with 1ms latency while retaining the capabilities and power of a 1GHz embedded computer running Linux.

Bela is connected. Use Bela’s stereo audio input and output to create musical instruments and audio effects. Connect to the physical world with Bela Original’s 8 analog inputs and outputs (or Bela Mini’s 8 analog inputs), as well as 16 digital I/O pins. You can also use ethernet, USB (including MIDI) and SD card storage.

Bela is small. Bela’s compact form factor means that it easily integrates into portable interactive objects, and the condensed Bela Mini means that it fits in more places than ever before. Connect to your computer to program Bela, and then power from an external battery to run in standalone mode - no laptop required.

Getting started is easy. Connect Bela by USB, launch the on-board IDE, and start coding right away in C++, PureData, SuperCollider, or FAUST. Our IDE also features everything interactive creators need, like an intuitive interface, a huge library of example projects, and an in-brownser oscilloscope.

Why latency matters

Action-to-sound latency across platforms

  • Bela 0.5ms

  • Midi on Mac 5.0ms

  • iPhone 6+ 9.0ms

  • Arduino to Max 11.0ms

  • Arduino to RPi 19.0ms

(See this publication for more details on latency.)

Bela is designed with audio in mind. It uses the BeagleBone Black single-board computer which features a 1GHz ARM Cortex-A8 processor and 512MB of RAM. It runs a custom Linux audio environment that gives you buffer sizes as small as 2 samples, producing latency as low as 1 millisecond from audio in to audio out, or even down to 100 microseconds from analog in to analog out. What's more, every analog and digital pin is automatically sampled at audio rate, providing precise, jitter-free alignment between audio and sensors.

What this means for you is that your digital musical instruments and interactive hardware just got a lot more responsive and expressive: Bela's speed and timing precision allow for natural, intuitive and immediate gestural control. Digital instrument design has never been this elegant.

The Hardware

Bela comes in two versions. The original Bela board has 8 channels of 16-bit analog I/O, 16 digital I/O, stereo audio I/O, and on-board speaker amps. We have also developed the tiny Bela Mini, by taking the most popular features of Bela and condensing them into a form factor 1/3 the size.

The Software

Bela 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. We have written a custom audio driver using the Programmable Realtime Unit (PRU), a microcontroller on the same chip as the CPU. This driver is capable of buffer sizes as small as 2 audio samples for very low latency, and its performance is not affected by other system load. No other embedded Linux platform can match this performance. (Read more in this publication, which describes the technical aspects of Bela in detail.)

For development, Bela lets you code the way that suits you best, and gives you the tools you need to do it. Plug in your Bela and launch our in-browser IDE, where you can write code in C++, SuperCollider, FAUST, Csound, upload PureData patches. The IDE also includes an extensive library of example projects, illustrating synthesis, sensor handling, and a range of other techniques in a variety of languages. There is also an in-browser oscilloscope which lets you visualise multiple channels of data simulteanously, without disconnecting the board - an essential tool for sensor debugging.

Who makes Bela?

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. Learn more about Bela’s origins on the Our Story page.