Skip to content

Make the Eurorack Dev Kit blink

Make This Blink Image Make This Blink Image


Prerequisites

This tutorial is best suited for those who have some familiarity with visual programming languages. However, you do not need any previous experience with embedded devices to follow along.

To get started, you need a few things:

Video Tutorial

USB Power Cables

Double check that your USB cable is not a power-only cable. Often, these cables are marked with a lighning bolt or have a tag on them. However, this is not always the case. If you need to purchase a cable, Electrosmith's micro USB cable will get you up and running in no time!


Bell

toggle - a simple on and off switch. The outlet outputs a 1 when on, and a 0 when off.

metro - a metronome that outputs bangs at a specific interval set in milliseconds.

loadbang - outputs a bang when the patcher is loaded.

hardware - sub-patcher for Daisy-based hardware boards.

cycle~ - cosine wave generator.

*~ - binary multiplication operator on audio signals; i.e. signal mixer.

dac~ - converts digital signal to analog; i.e. audio output.

Bell Logo

Bell is a visual programming environment available freely on the web. Including a robust patching environment for building complex DSP, Bell also hosts a hardware patcher for mapping and flashing Daisy-based hardware with your program!

We will be using Bell for this tutorial, and you can navigate to the site by clicking the link below:

Learning Bell

Not familiar with Bell? Watch our tutorial series to learn how to navigate the environment, access objects, and patch them together to create sound!

Bell Thumbnail

Bell


Programming

On to the code! You’ll start simple here and just make the onboard LED blink. This is the “Hello, World” of embedded programming.

First, we will create a new file. Let's call the file Blink.bell!

Let's grab a couple objects that we will need to create our "on/off" command for the LED. You can call up a new object by pressing the N key. Type inside the new object to assign it, and press Enter!

Needed objects:

  • x2 toggle
  • x1 metro 500

Connect the first toggle outlet to the metro 500's start/stop inlet, and then connect the metro 500 outlet to the second toggle's inlet.

Your patch should match below:

Lock the patch by pressing the / icon in the bottom left of the window. Turning the first toggle on will start the metronome, which sends out a bang every 500ms. This bang switches the second toggle's state, blinking it every second.

This is our base program for making Daisy blink!

Hardware Prep/Mapping

Now that we have our virtual blink working, let's add a couple more objects to get our program working with hardware!

We will need to add two new objects:

  • x1 loadbang
  • x1 hardware

Patch the loadbang outlet into the first toggle's inlet. The loadbang will turn on our command when the Seed2 DFM boots up!

Next, click the hardware object, then press Shift+Enter. A new hardware sub-patcher window will open up!

In the new window, add a new object called s2dfm-euro-dev-kit. The hardware object will now update to include all the pins available on the Eurorack Dev Kit.

Hardware Sub-Patcher

The hardware sub-patcher is a unique portion of Bell that allows you to patch up your program to electromechanical components on Daisy-based hardware.

Adding a board object, like seed, patch, s2dfm-euro-dev-kit, etc. will provide the appropriate pins for patching knobs, jacks, switches, OLED screens, and more to your Bell patch!

Learn more about the hardware sub-patcher here!

Patch the second toggle's outlet to the hardware objects LED inlet.

Your patch should match the one below:

We are ready to flash!

Navigate to the menu bar inside Bell, click Daisy, then Program. You can also press Ctrl+Shift+F.

Bell will now flash your patch to the Seed2 DFM. Once complete, your Seed2 DFM's LED will blink every second!

Daisy Blinking Daisy Blinking


This section will need work once we have a better idea of how the hardware sub-patcher works, and specifically audio io on the dev boards will work.

Since we are working with the Eurorack Dev Kit, we have audio output jacks we can utilize to include an auditory component to our blink example!

Let's add three more objects to our patch:

  • x1 cycle~ 220
  • x1 *~
  • x1 dac~

Patch the cycle~ 220 outlet to the *~ left inlet. Then, patch the second toggle outlet to the *~ right inlet. Patch the *~ outlet to the dac~ inlets. We now have a 220Hz sine wave turning on and off with our blink!

No audio out of Bell

Make sure that your Bell patch is unmuted in the bottom right corner (/). Bell patches are muted by default.

Let's now map our hardware audio outputs to the sine wave.

In the hardware sub-patcher, create a jack object, and patch it to the s2dfm-euro-dev-kit's Audio Out 1 pin.

Back in the main patcher, patch the *~ outlet to the new hardware inlet for Audio Out 1. That's it! Your Bell patch is now ready to make sound output from your Eurorack Dev Kit.

Your patch should match this:

Flash the Seed2 DFM from Bell, and test out your new firmware! A sine wave will be playing each time the LED is on.


What's Next

Now that we have built our first Bell patch for the Eurorack Dev Kit, let's explore what makes Daisy special: sound! Head to our next tutorial where we program audio ins and outs using Bell.