Skip to main content

Project settings

Settings are an important part of development on any platform, because they let you tweak your system conditions until they're just right for you, for your project's needs, or both. The Bela IDE gives you access to all the system settings you could use on the command line, so you have full control over your development environment and how your project runs.

This article describes everything you can do in the SETTINGS tab to customise the settings for your project as well as the IDE.

Run project on boot

At the very top of the SETTINGS tab there is a drop down menu labelled Run on Boot. Using this dropdown you can select a project to run when the Bela system powers on and boots up (this article explains running projects on boot in more detail).

Project Settings

Expanding the Project Settings dropdown gives you access to all the settings available for a Bela project. These are:

SettingDescriptionDefault Setting
Block sizeThe number of audio frames in each block of audio processed by render()16
Analog channelsThe number of active analog channels8
Analog sample rateThe number of times per second that the analog channels are sampled22,050 samples per second
Digital channelsThe number available digital I/O16 channels
Headphone level (dB)Adjusts the volume of your headphones-6dB
Use analogToggle the analog I/O on or offOn
Use digitalToggle the digital I/O on or offOn
DAC level (dB)Level of the digital to analog converter on the audio output0
ADC level (dB)Level of the analog to digital converter on the audio input0
PGA Gain (dB; left and right)Gain of the programmable gain amplifier on the audio input10
Disable LEDDisables the blue "running" LEDOff

As well as these settings there are two additional fields: Command line arguemnts and Make parameters. Using these fields, you can pass command line arguments directly to the Bela core, as well as the Makefile, which is the set of directives used by Bela's compiler.

These fields are entirely optional. If you'd like to see the commands you can pass to the Makefile, run the following in the Console in the IDE:

root@bela ~/Bela# make help
tip

The settings you see in the Project Settings apply only to the project that's currently open. They're saved automatically, and are loaded when the project opens.

Capelet settings

If you launch the Bela IDE from a Bela system (not a Bela Mini), you will also have the Capelet Settings section. These are settings for the Multiplexer and Audio Expander.

// INCLUDE capelet-settings.png

note

Since these add-ons are only compatible with Bela, these settings are not offered if you connect to the IDE using Bela Mini.

Multiplexer settings

The Multiplexer expands your 8 analog inputs up to a massive 64. Here you can enable your Multiplexer, and specify the number of input channels it should use. You can choose between 16, 32, or 64.

Audio expander

The Audio Expander converts Bela's 8 16-bit analog inputs and outputs into extra audio channels.

In this section you can enable the Multiplexer and Audio Expander capelets and configure their properties. For the Multiplexer, you can choose between 16, 32 and 64 channels.

For the Audio Expander, you can select particular audio inputs and outputs to be used with the capelet. Enabling an input channel for the Audio Expander rescales the range of that analog input to be between -1 and 1 instead of the default 0-1. It also applies a DC-blocking digital filter so the signal is centred around 0. Enabling an output channel for the Audio Expander similar rescales the range of that analog output to be between -1 and 1.

IDE Settings

The next dropdown contains settings for the IDE. These settings apply to the IDE, so they won't change if you open a new project.

SettingDescriptionDefault Setting
AutocompleteCauses the Editor to autocomplete your code as you typeOn
Syntax CheckingEnables automatic syntax checking in the Editor as you typeOn
Verbose build errorsEnables long-form errors in the consoleOff
CPU monitoringEnables CPU monitoring to show in the ToolbarOn
Xenomai statsPeriodically prints detailed logs of Xenomai (real-time Linux) tasks, for debuggingOff
Never delete console logsTells the IDE to store all console logs (will take up space in storage!)Off
View hidden filesView the hidden files in your project in the Project Contents section of the Project Explorer tabOff

Other functions

The SETTINGS tab has two other sections. One is Feedback. We are always interested in your feedback about the IDE, especially if you find bugs or encounter problems. We have two links to feedback forms, one for general feedback and one for bug reporting.

There are also some buttons for other system functions. These are:

FunctionDescription
Shutdown BelaShuts down the board safely and gracefully
Download all projectsDownloads all projects on your Bela system including their assets, in a single ZIP file
Update BelaUpdate your Bela system by uploading a ZIP file. See our guide to updating for details
About BelaHas some general information about Bela and the team

How the settings work

Each project folder on your board contains a settings.json file. This file describes the project settings as command line flags to that are passed to the Bela core when the program is run.