Things used in this project

Hardware components

Story

Bela: embedded audio and sensors with BeagleBoard!

Bela is an open source maker platform for low-latency interactive applications, especially with audio and sensors. Bela combines a cape, a high-performance real-time Linux audio environment and a browser-based IDE. The original Bela (launched in 2016) includes a cape for the Beaglebone Black, and in 2018 we added Bela Mini, which is based on the PocketBeagle.

Bela features a browser-based IDE that allows you to program the board in a variety of languages (C/C++, PureData, Supercollider, FAUST, Csound), debug sensor and audio streams using a browser-based oscilloscope, and create custom GUIs for your projects in P5.js.

The BeagleBone AI and Bela cape – pin compatible

BeagleBone AI + Bela

At Bela we have been working with the talented team of developers at BeagleBoard to ensure that this new generation of embedded computer is compatible with the Bela cape and software environment. Thankfully the BeagleBone AI has exactly the same pin layout as the BeagleBone Black so there were no mechanical issues.

We are working on bringing all the features of Bela and the power of the BeagleBone AI together.

Over the past four months we have been working hard to make sure that all the features that you love from Bela will be available on the new BeagleBone AI so you will be able to take advantage of the increased CPU and RAM that the board offers. We will be posting updates as they come.

So far we have audio I/O working via ALSA and SPI ADC/DAC running for the analog inputs and outputs. I2C is already working fine and we have even tested some Trill touch sensors (running on Kickstarter for the next few days) with the BeagleBone AI and Bela combination.

Sign up for updates here to be the first to know about developments!

Update #1 (15/10/2019)

SPI is alive! Wait ... what does that mean?

This means that analog and audio I/O are now fully functional. Clocking issues on the audio codec were fixed and SPI communication ADC/DAC fully implemented.

You can find examples for using SPI ADC/DAC and ALSA on Bela on the following link. Keep in mind that these examples were created as tests and are bare minimal, plus we have not include any C/C++ ALSA applications (although you can find many of these online).

What would be the next step?

Being able to use the ADC/DAC and audio codec is just a small piece of the puzzle, most of the low-latency magic happening in Bela will require some extra work to fully work on the BeagleBone AI. We are working on adapting our PRU code to the AI at the moment to make this possible.