Elektroid, a GNU/Linux transfer application for Elektron devices

Apparently, it was easy to fix. :rocket:

I’ve pushed some commits to the repository. This one fixes this issue. I’ve done some testing and it looks like nothing is broken.

Could you try this to see if it works for you?

4 Likes

I will check tomorrow & give you feedback
Thank you very much, that was really fast :+1:t3:

Hi there
It worked like a charm for 2 of my 3 projects. I have found strange the .syx filesize is exactly the same for both projects (although they contain different number of patterns), but I have tried loading them into a new project, and I see the differences between both backups

However, it didn’t worked for my 3rd project… In this concrete case Elektroid keeps “Waiting” after selecting “Receive SysEx”, and after M:S screen says Backup is complete

Not sure what happens with that project :crazy_face:

1 Like

I will give a try to C6 windows version later, it seems it loads correctly using Wine (at least, it starts with no errors)

By the way, hard to find the link https://www.elektron.se/support/?connection=analog-drive#downloads

[update]
No, it doesn’t work through Wine
I ended making my project backups with C6 using my girlfriend’s Mac :face_with_raised_eyebrow:

works :slight_smile:

anyone got Overbridge running on Linux?

Goto this topic:

i’m running an error when i try to select my model: sample:

ALSA lib rawmidi_hw.c:233:(snd_rawmidi_hw_open) open /dev/snd/midiC3D0 failed: Device or resource busy
connector.c: Error while opening MIDI port: Device or resource busy
elektroid.c: Error while connecting

Welcome to Electronauts! :slight_smile:

This error happens when the MIDI port is already in use. At the moment, Elektroid opens the MIDI port exclusively, which means that if other application has the same port opened Elektroid will not be able to use it.

Close all MIDI related applications and try again.

If you want to know the culprit process, run this.

$ lsof | grep -i midiC3D0
elektroid 4543                           ***   15u      CHR              116,5       0t0      39561 /dev/snd/midiC3D0
elektroid 4543 4544 gmain                ***   15u      CHR              116,5       0t0      39561 /dev/snd/midiC3D0
elektroid 4543 4546 dconf\x20            ***   15u      CHR              116,5       0t0      39561 /dev/snd/midiC3D0
elektroid 4543 4547 gdbus                ***   15u      CHR              116,5       0t0      39561 /dev/snd/midiC3D0
1 Like

I couldn’t find any MIDI related applications open. I ran the command above and got this:

elektroid 17877 *** 13u CHR 116,17 0t0 370 /dev/snd/midiC3D0
elektroid 17877 17878 gmain *** 13u CHR 116,17 0t0 370 /dev/snd/midiC3D0
elektroid 17877 17879 gdbus *** 13u CHR 116,17 0t0 370 /dev/snd/midiC3D0

still running the same error

Looks like elektroid itself is causing the problem. Probably, it didn’t end properly.
Kill it with kill -9 17877 or killall -s SIGKILL elektroid and run it again.

Be sure to use the last version as there were some improvements about signal treatment, which might be related to your issue.

1 Like

When I kill them and try to reopen, it either simply doesn’t open up, or opens, then crashes once I select the device I’m using. It seems to only open up when I have another elektroid open, but the first one doesn’t show and hogs the MIDI port.

When elektroid starts, it looks for the available devices. If only one device is found, then it tries to connect to it; if there is more than one device, it does nothing so the user has to select the one they wants.
Besides that, when it tries to connect to the MIDI port and the port is already in use by another process, it does nothing at all because the port can’t be used but the interface shows up.

In your case, it seems that there is a problem when receiving messages from the device. The first process you run opens the port and tries to send and receive information (and looks like it does not receive anything so it hangs). The second one tries to open the port and as it can’t it does nothing but doesn’t hang.

There are two things to fix here if I’m not mistaken.

  1. Elektroid is not working properly when the device is not sending anything back and ends up hanging.
  2. The device is not answering the requests, or it seems so.

Regarding point 1, I’ve just taken a look at the code and hopefully fixed the bug in the most recently pushed commit (23c50f4).

Regarding point 2, check all the MIDI configuration in your device.

  • Are you using USB or the MIDI ports?

  • Can you try to receive MIDI data on your computer? If you activate MIDI send on your device you should see something.

$ amidi -l
Dir Device    Name
IO  hw:0,0,0  Elektron Digitakt MIDI 1
$ amidi -p hw:0,0,0 -d -c
  • Can you check that no other connections are created?
$ aconnect -lio
client 0: 'System' [type=kernel]
    0 'Timer           '
    1 'Announce        '
client 14: 'Midi Through' [type=kernel]
    0 'Midi Through Port-0'
client 16: 'Elektron Digitakt' [type=kernel,card=0]
    0 'Elektron Digitakt MIDI 1'

I’m out of ideas. Send me a PM if you need more help.

1 Like

Continuing the discussion from Elektroid, a GNU/Linux sample transfer application for Elektron devices:

wouldn’t let me PM you, sorry.

you’re saying my device should automatically be selected when elektroid opens if it’s the only device connected, and that would makes sense as to why whenever I launch elektroid (knowing no other elektroids are open), it yields unresponsive. The same thing happens when I have an elektroid open then plug in my device and select it. I’m hooking it up to my laptop with USB. I’m not sure what’s wrong but Elektroid just loads indefinitely when I select my device, until I do something to interrupt the message (like changing the USB mode on my device).

@oblong issue with Model:Samples have been fixed. Thanks for reporting and helping with the issue.

There was a bug that prevented elektroid to work with Model:Samples. I’m not sure if the issue was related to an old firmware version but it should work on all versions now.

Besides that, another bug regarding timeout detection that was causing some freezings has been fixed as well.

1 Like

Hi !! First, thanks a lot for bringing us this piece of software :slight_smile:
I’ve compiled it (KDE Neon) and it does start and recognize my piece of gear : Elektron Model : Cycles.
I have an issue though. It seems the app doesn’t support the kind of soundpacks used on my device, which are not samples but “FM synthesis presets”. By any chance, would you consider supporting this in the future ?
Thank you so much,
cheers !

Thanks so much for making this. I’m successfully using the master branch with an Analog Rytm mkII on NixOS. I’ve pasted the derivation I’m using if it ends up being useful for anyone else.

elektroid.nix
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
, alsaLib, gtk3, libpulseaudio, libsamplerate, libsndfile
}:

stdenv.mkDerivation rec {
  pname = "elektroid";
  version = "git";

  src = fetchFromGitHub {
    owner = "dagargo";
    repo = "${pname}";
    rev = "e3a072f70d329a00a9da3d8151c57c5edf30242f";
    sha256 = "0pdm03sjhily79b791641pbl5g2k1bmyx0qdkv9pafgk75z17dpx";
    fetchSubmodules = true;
  };

  nativeBuildInputs = [ autoreconfHook pkgconfig ];

  buildInputs = [ alsaLib gtk3 libpulseaudio libsamplerate libsndfile ];
}
2 Likes

Welcome to Elektronauts, @bidinou!

At the moment, Elektroid only supports sample transfers but luckily this will change this year. However, it already sports a very basic send and receive SysEx options. These are located in the app menu.

I’m currently working on an issue and after it’s being solved I’ll release version 1.3. Then I’ll start working on the next features.

4 Likes

Hi ! Thanks a lot for your quick & nice reply ! Thanks again for your work !

After a long time, version 1.3 is just out. :tada:

Basically, it’s just a much more robust version. BTW, special thanks to @DNS for helping me testing this release thoroughly.

Other than lots of technical improvements and bugfixes that make it much more reliable, there a few new things.

  • Support for non-ASCII characters.
  • OS upgrade from the application menu. Now, it’s possible to upgrade without fiddling into the menus.
  • Support for keyboard shortcuts in sample lists.
    • Ctrl+U goes to parent directory.
    • Ctrl+Shift+N adds a directory.
    • Ctrl+R refreshes current directory.
    • Ctrl+Shift+R renames selected item.
  • Better integration with the desktop via the local browser popup menu.
  • Audio preview of samples while loading.
  • Support for Catalan (Valencian) translations.

It has been tested to work on i386 and amd64 PCs and on Raspberry Pi.

I hope you enjoy it.

7 Likes

great job! thank you so much for the great development! :slight_smile: :beers:

1 Like