ctag-fh-kiel / ctag-tbd

CTAG TBD >>to be determined<< an extendible open source Eurorack sound module
Other
176 stars 47 forks source link
audio ctag-tbd esp32 eurorack eurorack-diy eurorack-synth hardware synthesizer

CTAG TBD >>to be determined<<

draft-release

CTAG-TBD

Documentation (in the works):

Summary table of all available plugins. Documentation on TBD usage can be found here (Google Docs) Tutorial videos in YouTube playlist

Update procedure

Easiest way to update is to use the ready made releases from github. Flash the ctag-tbd.bin and storage.bin from the TBD web ui (within the configuration menu). Alternatively you can connect a USB cable to the TBD and use the serial flasher from esp idf (see how to flash below). In order to use the sample rom, you can upload from the edit sample rom page factory sample data (sample-rom.tbd).

What it is:

Why it is:

Features:

Version log

See here...

Potential new features / current limitations / work to be done:

How to engage yourself:

How to build

NEW!!! You can build custom firmwares with plugin subsets and to increase sample-rom using the cloud compiler. No need for a toolchain on your own system.

For developing your own plugins / make TBD yours, you need C/C++ skills. You may want to check the TBD simulator for easy plugin development without TBD hardware.

You can build the firmware using a Github action. Just fork the ctag-tbd repo to your Github account and enable the supplied Github action. Enter the Github actions menu and select e.g. the "draft-release" action. Click the "Run workflow" button. Upon successful completion, your binaries will be available as .zip archive as output of your run.

If you prefer to have a dev environment on your own, install espressif esp-idf, instructions are here. Then clone the ctag-tbd repo with all dependencies and build firmware with cmake. Firmware release v1.0.0 was build with ESP-IDF 5.1.1 release.

Devcontainers

Devcontainers allow users to develop in an isolated container, with all the dependencies installed and with the features of an IDE. Currently there are two methods supported.

Currently both devcontainers are using release/v4.4 version of esp-idf

Gitpod

Gitpod offers free online workspaces, just by pressing this button, you'll have access to a development environment for ctag-tbd in a browser tab: Open in Gitpod

VsCode Devcontainers

Visual Studio Code also offers developing inside a Container, but for this approach, the user will need to install:

Open the repository folder with Visual Studio Code and open the container, there are several ways to open the container:

By default, the image will be pulled from esp-idf-env, but users can also build it from the Dockerfile by editing the .devcontainer.json

tbd cloud compiler

The tbd cloud compiler allows you to reduce the size of the ctag-tbd firmware, therefore making up more free space for your samples, by removing one or multiple plug-ins that you don't want to use with your module via a web ui. It makes use of GitHub actions running in your own forked repository and therefore doesn't depend on any toolchain installed on your own system. For more information take a look at the user guide.

How to flash

Either use the binaries available from the releases at github to flash through the TBD's web ui.

Or use ESP Tool to flash through a USB connection with your PC (check this script).

If you have ESP IDF installed (the whole development environment), use:

idf.py flash monitor