Elektroid, a GNU/Linux transfer application for Elektron devices

Hi elektronauts!

I’m announcing Elektroid 0.2, a GNU/Linux sample transfer application for Elektron devices. It includes a GUI application and a CLI application.

It has only been tested on a Digitakt but I think it could work with Analog Rytm MKI/MKII, and Model:Samples as well.

I hope Linux users find it useful.


Wow… Got to test this on my Ubuntu !

compiles fine on ubuntu

1 Like

I was able to compile successfully on Debian 10 amd64. I don’t have a Rytm or a Digitakt but if it works this removes the last barriers to me getting one!

I have an Octatrack mkI and in my opinion the nearly class-compliant USB implementation on that device was a great decision on Elektron’s part.


Compiles for me with x86_64 Arch Linux and listing directories and uploading single files works so far. However, the GTK application doesn’t show a window. I’ll open an issue for that with detailed information.

Thanks a LOT for your work! (And shame on Elekron for wasting the time of all the Linux guys for no reason)

Is there something from this application that you cannot do in elk-herd?

You’re welcome! I’m happy to see you’re finding this project useful.
I’ll take a look at your issue.
Thanks for taking the time to test Elektroid!

No, Elektroid is just a FOSS take on Elektron Transfer.
But the main reason I created Elektroid for was that sample uploads were not working for me in elk-herd. It is a known issue with large sysex messages on Linux.

1 Like

You two could team up and build an Electron (this headless Chromium thingy) app with your native code for Linux with some JS bindings and @mzero’s frontend.

Edit: And if you are interested in earning some money with your hard work, there could (I’m not related with them in any way, just a happy customer) be the possibility of teaming up with the makers of Sononym to provide a very unique functionality. As far as I know, they are planing something like that in the long term.

1 Like

Ty very much, sir!!
I will check it on my ubuntu with my DT :slight_smile:

@DG2, you rock hard!!! I compiled it with Ubuntu 18.04 (changed minimal requirement for alsa to 1.1.3 in configure.ac). Both, UI and CLI version runs flawlessly, managed to upload, download and remove samples on Rytm MK1 (firmware version 1.50A), stereo samples get converted to mono as required. Thank you for Elektroid!


@sacha, I’m really glad it works for you!
Thanks for taking the time to test it and confirming it works on Rytm MK1.

BTW, can anybody confirm if it works on Model:Samples and Rytm MK2?

For the rest of the people, version 1.0 was released some days ago.
It includes batch transferences, internationalization (English, French and Spanish at the moment) and many improvements from the last versions.

Also, a nice person called DNS has made available packages for Debian/Ubuntu here.


Hey @DG2, works really great. :+1: Compiled it on Ubuntu 18.10, only had to change the alsa version (1.1.8 to 1.1.6 - Thanks @sacha)

Works on Rytm MK2 And Model Samples:

:+1::+1::+1: :smiley:


DG2 knows already but for the record: It’s working fine, it was my fault. I didn’t want to install the files using make install but I forgot to specify --prefix for ./configure. This lead to missing resources and all the errors.


Nice. The biggest gripe I’ve had with other hardware (e.g. Arturia BSP) is that there’s no linux support. It’s awesome to see some for Elektron devices. It’d be even more awesome if Elektron would actively support this kind of project :slight_smile:


Hrm. Trying to install this, and I have installed all the apt packages and /usr/include/alsa/asoundlib.h exists, but I still get this after running autoreconf --install ; ./configure ; make:

$ make     
make  all-recursive
make[1]: Entering directory '/home/nedcr/Downloads/source_code/elektroid'
Making all in src
make[2]: Entering directory '/home/nedcr/Downloads/source_code/elektroid/src'
/home/nedcr/miniconda3/envs/ana/bin/x86_64-conda_cos6-linux-gnu-cc -DHAVE_CONFIG_H -I. -I..  -Wall -O3 -DDATADIR='"/usr/local/share"' -DLOCALEDIR=\""/usr/local/share/locale"\" -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /home/nedcr/miniconda3/envs/ana/include -I../src `pkg-config --cflags alsa gtk+-3.0 libpulse libpulse-mainloop-glib`   -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/nedcr/miniconda3/envs/ana/include -MT elektroid.o -MD -MP -MF .deps/elektroid.Tpo -c -o elektroid.o elektroid.c
In file included from elektroid.c:25:0:
connector.h:22:10: fatal error: alsa/asoundlib.h: No such file or directory
 #include <alsa/asoundlib.h>
compilation terminated.
make[2]: *** [Makefile:460: elektroid.o] Error 1
make[2]: Leaving directory '/home/nedcr/Downloads/source_code/elektroid/src'
make[1]: *** [Makefile:430: all-recursive] Error 1
make[1]: Leaving directory '/home/nedcr/Downloads/source_code/elektroid'
make: *** [Makefile:362: all] Error 2

Anyone have any ideas? I have tried again with a clean git repository, same result. Running Kubuntu disco (19.04).

1 Like

Could you try using gcc as the compiler?

Did you install /usr/include/alsa/asoundlib.h there manually? Ubuntu doesn’t usually look for header files directly in /use/include but in an arch-specific directory like /usr/include/x86_64-linux instead. I don’t know if kubuntu is the same but I assume it is.

Ahh! Thanks! This made me look at the gcc file name, which was /home/nedcr/miniconda3/envs/ana/bin/x86_64-conda_cos6-linux-gnu-cc – conda causing conflicts. I really need to remember that when this kind of thing happens. I just compile stuff from source so rarely these days :frowning:


It’s working perfectly with the Digitakt on Ubuntu 19.04. Thank you very much!