Elektroid, a GNU/Linux transfer application for Elektron devices

@DG2 great work with the application, GUI and instructions! I’ve tested it on Debian “testing” (Bookworm), Master branch from Github. Sometimes the GUI doesn’t start up at the first try, printing errors like the following:

ERROR:connector.c:2609:(connector_fill_card_elektron_devices): Cannot determine device number: Inappropriate ioctl for device

But i guess this is already known.

Tested only sample transfer on the AR MK2 and sound transfer on the A4 MK2, it worked flawlessly so far.

I’m not sure how much it will complicate development and if you could afford the time, but maybe Elektroid as a Flatpak would make sense? I guess it would attract people which are not into compiling. Maybe to much hassle.

2 Likes

Thank you! :blue_heart:

It hasn’t been reported but I’ve seen this error occasionally when the MIDI ports are already in use because Elektroid opens the MIDI ports exclusively. For the same reason, only one instance of Elektroid can be used with a given device at once.

Try killall -9 elektroid before restarting the GUI in case it helps and feel free to create a GitHub issue. BTW, run it with -vvv to produce a verbose ouput.

I’ll think about the Flatpack packaging but it’s already too much work.

One last thing. I’ve developed Overwitch (see Overwitch, a JACK client for Overbridge devices, AKA Overbridge for Linux), which is a Overbridge implementation for JACK. Version 1.0 is about to be released but AR MKII is the only device that has not been reported to work. Could you give it a try? It would be really great. TIA.

1 Like

Not needed to kill it yet, it just closed/killed itself with the error message, but no hung process.

I thought so. Maybe someday when everything else is finished.

I don’t have Jack installed because i don’t make music on the computer or at least don’t need real-time performance, so ALSA/Pulse is good enough. I’ll see if i get some time to fiddle around with it.

I’ve tried it, but Jack is so bitchy. I’ve tried Jack1 and 2, the server was running but all my audio applications freeze if i select Jack as backend. I guess it works with a distribution for audio like Ubuntu Studio or a proper configuration, but i don’t have the time and system at the moment to try it out, sorry.

1 Like

Yeah, JACK is not easy to configure properly. Don’t worry.

Thank you anyway.

1 Like

In case someone is interested here, the sds branch contains working code for MIDI Standard Sample Dump. For more information, see Open source support for TM-1 / TurboMIDI.

3 Likes

Not sure if this is a good idea but I’ve added support for Arturia MicroBrute (sequences) and Casio CZ-101 (programs). When MIDI SDS support was added, a lot of refactoring had opened the door to add new devices easily soI wanted to try to and started with some of the devices I already have.

sds branch has been merged into master together with the forementioned filesystems.

Any thoughts on this?

In case anyone wants to try version 2.2 before the release, I’ve pushed a few commits adding and improving some features.

Together with SDS upload and download, which adds support for Machinedrum and other SDS capable devices, these should add support to devices that need other sample formats than mono 48 kHz and can be mounted via USB or any type of memory card, such as Octatrack, current Akai samplers or Roland SP-404.

BTW, I discovered that samples in SDS SysEx format can be uploaded to the Digitakt and Model:Samples. As now it’s possible to upload a batch of SysEx files, all the Elektron sound packs made for the Machinedrum can easily be enjoyed on current devices.

Support for Elektron TM-1 is still in development.

4 Likes

What is the procedure for updating firmware with elektroid-cli? I own a digitakt and an analog4. Should I just issue

elektroid-cli upgrade <firmware-file.syx>

and the upgrade is automatic? do I need to do anything on the device itself other than turning it on?

There is no upgrade command in the CLI.

Considering that amidi is enough, although you’ll need to enter the device in upgrade mode manually, I wasn’t planning to add this feature.

Still, it would be quite easy to implement The command would take the form connector-upgrade.

For now, take a look at GNU/Linux: Best method for OS update - #13 by aMunchkinElfGraduate on upgrading over GNU/Linux.

Edit: I actually implemented this. :sweat_smile:

1 Like

This is embarrassing.

The command elektroid-cli upgrade <firmware-file.syx> should totally work. I totally forgot that I implemented this. :sweat_smile:

And, as you said, you don’t need to do anything on the device as it will switch automatically to the upgrade mode and the device will restart after that.

Sorry for the misunderstanding. :sweat_smile:

Edit: Actually, there is a missing parameter in the line you wrote, @personnealienee. This is from the README.

$ elektroid-cli upgrade Digitakt_OS1.30.syx 0

The last parameter is the device identifier, which is the first number in the output of this command.

$ elektroid-cli ld
0: hw:3,0,0 hw:3,0,0: Elektron Digitakt, Elektron Digitakt MIDI 1

Hopefully, there are no more mistakes. :pray:

5 Likes

great! thank you for clarification!

on an unrelated note — and I am sure you are being asked this a lot — but are there any plans to make Overwitch support Overbridge 1 devices like analog4 mk1? It has been immensely useful to be able to use it with Digitakt, but I still have to do overdubs for my analog4.

Happy to help.

Regarding Overwitch, there is already an open issue for adding support for Overbridge 1 devices.

Take a look at https://github.com/dagargo/overwitch/issues/4 and send me a PM if you are interested in doing some tests. I think we can make it work.

1 Like

For anyone interested, version 2.2 is almost ready to be released.

With this version, Elektroid is moving from an Elektron-only tool to a more general sample and MIDI device manager. Support for SDS samplers, MicroBrute sequences, Casio CZ-101 presets and Eventide Factor and H9 presets have been added and other devices might come in the near future. Now, it can also work as a batch sample converter and manage samples in SD cards or other media. Stereo samples are supported too.

There are a few loose ends because I can only test the devices I own. So, has anyone here tested SDS on the Machinedrum? Any luck with TM-1?

Also, I wanted to ask if you consider these additions useful and if you have any suggestion on which devices could go next. I can’t promise anything but…

Multiplatform support is also on the table and it’s in the first stages of development but won’t be included in this release.

6 Likes

:rofl::rofl:

1 Like

I updated to Elektroid 2.1 but I can’t manage to connect my DT to it. I actually updated because I had the same problem with the older version.
I can read Elektron Digitakt MIDI 1 when I click on the Menu in the GUI but I can’t select it :thinking:
and if I write in terminal elektroid-cli ldit appears this: 3 Elektron Digitakt MIDI 1 am I missing something? did I reinstalled it wrongly?
I am running Linux mint, and I don’t have problems with overwitch, (btw, yes, I changed from overbridge mode to usb midi mode), which makes this more strange for me.
In Jack i can see 0:Elektron Digitakt MIDI 1as MIDI in/outs. So it is clear that the DT and my computer ARE connected, just not to elektroid. does anybody knows how to solve this???
thank you! and amazing work!!!

1 Like

A fresh Mint VM installation seems to work nicely with the master branch (version 2.2 but not released yet).

Did you tried version 2.1 from the tarballs? Could you try with the master branch?

Here are a few things for you to try. Post the output here. Perhaps there’s something interesting in there.

$ elektroid-cli -v ld
$ elektroid-cli -v info
$ elektroid-cli -v df

Other people have reported similar issues but I’m unsure if they are truly related. :frowning:

ok, I deinstalled the one from the tarballs and installed the one from the master branch. I tried those things, down here is the outcome, but now I think it is irrelevant because the problem was that I always have qjack open, so it was busy with it :man_facepalming:t4: :sweat_smile: stupid me… anyways, the output from terminal actually did help me with some hints in finding the error. So thank you very much!!!

Solution: close jack!

a@b:~$ elektroid-cli -v
elektroid 2.1
Usage: elektroid-cli [options] command
a@b:~$ elektroid-cli -v info
DEBUG:elektroid-cli.c:647:(main): Operation: 'info'; filesystem: '' (0)
ERROR:elektroid-cli.c:257:(cli_info): Device missing
a@b:~$ elektroid-cli -v df
DEBUG:elektroid-cli.c:647:(main): Operation: 'df'; filesystem: '' (0)
ERROR:elektroid-cli.c:298:(cli_df): Device missing
1 Like

Great! Nice to read that.

I didn’t add the device parameter to the commands above and hence the errors. :sweat_smile:
Now, it doesn’t matter.

Version 2.2 is just out. :tada:

This version has so many changes and bugfixes that I lost track of all of them. Here are the most important changes.

  • Add support for non Elektron devices. This is a POC to see how well the code and workflow adapts to other needs. The supported devices are:
    • The computer itself. Now it’s possible to use Elektroid as a proper sample manager and copy them to another location while changing sample ratio, channels or bitdepth at the same time.
    • Standard SDS samplers, which include the Elektron Machinedrum.
    • Casio CZ-101 presets.
    • Arturia MicroBrute sequences.
    • Eventide ModFactor, PitchFactor, TimeFactor, Space and H9 presets
  • Improve GUI (no more UI freezes).
  • Improved audio playback (no more glitches).
  • Add support for stereo samples.
  • Standardize the CLI.
  • Add SysEx files in a batch.

I expect there will be no major bugs but testing everything is starting to be complicated.

Thanks to all the people contributing to the project. :blue_heart:

Hope you enjoy this.

8 Likes