This repository contains all the build material to manufacture "eurorack blocks": small PCBs that can be used on a breadboard, and provide atomic typical digital eurorack features such as power, CV, gates, pots and leds.
This project aims at simplifying digital eurorack development by providing atomic building blocks for each eurorack basic features.
The full manifest can be read here.
audio-in-daisy
is an audio input block,audio-out-daisy
is an audio output block.
cv-in
is a CV input block.
button
is a trigger button,led
is a monochromatic LED,led-bi
is a dichromatic LED,pot
is a potentiometer block,slider
is a slider potentiometer block,switch
is a 2 or 3 positions toggle switch,trim
is a trim potentiometer block.
power-bus
is a eurorack compatible power bus.regulator-daisy
is a voltage regulator compatible with the Daisy Seed.
multiplexer
is a signal multiplexer block.
Blocks are packed into panels called "kits".
kits
contains panelized blocks standard kits.
Building and deploying the tests requires:
- The
gcc
ARM toolchain, - The
dfu-util
firmware downloader, - The
ninja
build system.
To do so, follow the instructions from the Daisy wiki:
Note: Installing
make
on macOS might not be required if Xcode is installed. Ifbrew
returns an error, trybrew install armmbed/formulae/arm-none-eabi-gcc dfu-util
instead.
A pre-built package of ninja
can be installed with your favorite package manager by
following the directions described here.
Every other build dependencies can be found in the submodules of this repository, so make sure to update the submodules, as described below.
Producing the PCBs gerbers requires:
This repository contains submodules:
git clone [email protected]:ohmtech-rdi/eurorack-blocks.git
git submodule update --init --recursive
Almost each block contain a test
folder with a minimal implementation to show usage
of the block on the software side. To build and deploy the test:
$ python configure.py
This will create an artifacts
folder with everything needed to build.
$ python build.py
ninja: Entering directory `/Users/raf/dev/eurorack-blocks/audio-out-daisy/test/artifacts/out/Release'
[10/10] LINK test
OBJCOPY
This will create the binary file to upload to the Daisy seed. It is the test.bin
file output in the
artifacts/out/Release
build directory.
$ python deploy.py
Enter the system bootloader by holding the BOOT button down,
and then pressing, and releasing the RESET button.
Press Enter to continue...
Flashing...
dfu-util 0.9
[...]
Downloading to address = 0x08000000, size = 36484
Download [=========================] 100% 36484 bytes
Download done.
File downloaded successfully
dfu-util: Error during download get_status
Run command exited with 74
Follow the onscreen instructions and this will download the test.bin
firmware to the
Daisy Seed when it is connected to USB. The error 74 reported from dfu-util
can be safely
ignored.
Alternatively, if dfu-util
does not work properly on the target platform,
one may use the Daisy Web Programmer
instead.
eurorack-blocks/
audio-in-daisy/
audio-out-daisy/
build-system/
button/
cv-in/
gate-in/
gate-out/
include/
kits/
multiplexer/
led/
led-bi/
pot/
power-bus/
regulator-daisy/
slider/
src/
submodules/
kcgen/
kicad-libs/
libDaisy/
switch/
trim/
- All blocks have their own directory,
build-system
contains the build system used to build and deploy the tests and samples,include
contains the software implementation of the blocks,src
contains the software implementation of the blocks,kcgen
is a Kicad gerber and BOM automatic generator,kicad-libs
is a symbol and footprint library for Kicad, containing components like the standard Thonk jack connector,libDaisy
is a hardware library for the Daisy audio platform.